A system comprising: a battery pack comprising a plurality of series-connected battery groups, each battery group comprising a plurality of parallel-connected switched battery units, each switched battery unit comprising one or more series-connected battery cells and a battery switch connected in series; and a controller configured to produce a plurality of pulsed switching signals to control the battery switches in the battery pack, each pulsed switching signal corresponding to one of the battery switches, wherein during charging of the battery pack the controller is adapted to: for each pulsed switching signal generate a series of pulses having ON times that are determined based on one or more measured characteristics of the battery unit associated with the corresponding battery switch to optimize charging of the battery cells of the battery unit, wherein charging of the battery cells comprising each battery unit in the battery pack is optimized according to the one or more measured characteristics of the battery unit, and select timing of the ON times of the switches in the battery groups so that there is overlap in order to ensure that there is always at least one battery switch in each battery group in a CLOSED state at all times during charging of the battery pack to provide a path for an uninterrupted flow of charging current through the plurality of series-connected battery groups of the battery pack at all times during charging of the battery pack. a battery pack comprising a plurality of series-connected battery groups, each battery group comprising a plurality of parallel-connected switched battery units, each switched battery unit comprising one or more series-connected battery cells and a battery switch connected in series; and a controller configured to produce a plurality of pulsed switching signals to control the battery switches in the battery pack, each pulsed switching signal corresponding to one of the battery switches, wherein during charging of the battery pack the controller is adapted to: for each pulsed switching signal generate a series of pulses having ON times that are determined based on one or more measured characteristics of the battery unit associated with the corresponding battery switch to optimize charging of the battery cells of the battery unit, wherein charging of the battery cells comprising each battery unit in the battery pack is optimized according to the one or more measured characteristics of the battery unit, and select timing of the ON times of the switches in the battery groups so that there is overlap in order to ensure that there is always at least one battery switch in each battery group in a CLOSED state at all times during charging of the battery pack to provide a path for an uninterrupted flow of charging current through the plurality of series-connected battery groups of the battery pack at all times during charging of the battery pack. for each pulsed switching signal generate a series of pulses having ON times that are determined based on one or more measured characteristics of the battery unit associated with the corresponding battery switch to optimize charging of the battery cells of the battery unit, wherein charging of the battery cells comprising each battery unit in the battery pack is optimized according to the one or more measured characteristics of the battery unit, and select timing of the ON times of the switches in the battery groups so that there is overlap in order to ensure that there is always at least one battery switch in each battery group in a CLOSED state at all times during charging of the battery pack to provide a path for an uninterrupted flow of charging current through the plurality of series-connected battery groups of the battery pack at all times during charging of the battery pack.