A power distribution module comprising: a power input configured to receive power from a power supply; at least one USB charging port; a microcontroller configured to control the distribution of power from the power input to the at least one USB charging port; a memory storing a power system database identifying a power available for the at least one USB charging port; and a bus interface connectable to a bus, the bus interface allowing the microcontroller to send and receive signals to other power distribution modules over the bus: wherein the power system database is configured to identify a plurality of other power distribution modules that are currently also connected to the bus and a total power required by each other power distribution module, wherein each of said other power distribution modules contains a copy of said power system database; the microcontroller is configured to control the distribution of power from the power input to the at least one USB charging port based on information received over the bus, and the microcontroller is configured to update the power system database and transmit a signal over the bus to each of said other power distribution modules connected to said bus to update the power system database in each of said other power distribution modules each time a device is connected to or disconnected from the at least one USB charging port, wherein said updating comprises updating the power system database based on information indicating that the device has been connected or disconnected, and the microcontroller is configured to receive transmitted updating signals from other power distribution modules connected to said bus, and to update its system power database in accordance with the information contained therein. a power input configured to receive power from a power supply; at least one USB charging port; a microcontroller configured to control the distribution of power from the power input to the at least one USB charging port; a memory storing a power system database identifying a power available for the at least one USB charging port; and a bus interface connectable to a bus, the bus interface allowing the microcontroller to send and receive signals to other power distribution modules over the bus: wherein the power system database is configured to identify a plurality of other power distribution modules that are currently also connected to the bus and a total power required by each other power distribution module, wherein each of said other power distribution modules contains a copy of said power system database; the microcontroller is configured to control the distribution of power from the power input to the at least one USB charging port based on information received over the bus, and the microcontroller is configured to update the power system database and transmit a signal over the bus to each of said other power distribution modules connected to said bus to update the power system database in each of said other power distribution modules each time a device is connected to or disconnected from the at least one USB charging port, wherein said updating comprises updating the power system database based on information indicating that the device has been connected or disconnected, and the microcontroller is configured to receive transmitted updating signals from other power distribution modules connected to said bus, and to update its system power database in accordance with the information contained therein. wherein the power system database is configured to identify a plurality of other power distribution modules that are currently also connected to the bus and a total power required by each other power distribution module, wherein each of said other power distribution modules contains a copy of said power system database; the microcontroller is configured to control the distribution of power from the power input to the at least one USB charging port based on information received over the bus, and the microcontroller is configured to update the power system database and transmit a signal over the bus to each of said other power distribution modules connected to said bus to update the power system database in each of said other power distribution modules each time a device is connected to or disconnected from the at least one USB charging port, wherein said updating comprises updating the power system database based on information indicating that the device has been connected or disconnected, and the microcontroller is configured to receive transmitted updating signals from other power distribution modules connected to said bus, and to update its system power database in accordance with the information contained therein.