A multi-speed power tool comprising: a housing; a motor received in the housing; a multi-speed planetary transmission rotationally driven by the motor and defining a transmission axis, wherein the multi-speed transmission includes a plurality of sub-sections (200A, 200B, 200C) each of which is configured to provide an intermediate speed reduction when that subsection is active, an output mechanism rotationally driven by the transmission at an output rotational speed defined by intermediate speed reductions of any of the active subsections; and a speed selector including a shift member inside the housing that is moveable among a first plurality of positions where the shift member engages a one or more of the subsections (200A, 200B, 200C) of the transmission to activate one or more of the subsections (200A, 200B, 200C) so as to cause the transmission to rotate the output mechanism at a plurality of different output rotational speeds, a switch accessible from outside the housing, coupled to the shift member, and moveable among a second plurality of positions corresponding to selected output speeds of the transmission to cause movement of the shift member among the first plurality of positions; and characterised in that a plurality of springs is disposed in parallel between the shift member and the switch without any of the plurality of springs arranged serially, the plurality of springs exerting a bi-directional biasing force on the shift member in both an axial forward and an axial rearward direction relative to the switch, wherein if the switch is moved from a first switch position to a second switch position of the second plurality of positions and the shift member is blocked from moving from a first speed position to a second speed position of the first plurality of positions, the shift member remains stationary and when the shift member is later unblocked from moving from the first speed position to the second speed position, a force provided by the plurality of springs urge the shift member to move to the second speed position while the switch remains stationary. a housing; a motor received in the housing; a multi-speed planetary transmission rotationally driven by the motor and defining a transmission axis, wherein the multi-speed transmission includes a plurality of sub-sections (200A, 200B, 200C) each of which is configured to provide an intermediate speed reduction when that subsection is active, an output mechanism rotationally driven by the transmission at an output rotational speed defined by intermediate speed reductions of any of the active subsections; and a speed selector including a shift member inside the housing that is moveable among a first plurality of positions where the shift member engages a one or more of the subsections (200A, 200B, 200C) of the transmission to activate one or more of the subsections (200A, 200B, 200C) so as to cause the transmission to rotate the output mechanism at a plurality of different output rotational speeds, a switch accessible from outside the housing, coupled to the shift member, and moveable among a second plurality of positions corresponding to selected output speeds of the transmission to cause movement of the shift member among the first plurality of positions; and characterised in that a plurality of springs is disposed in parallel between the shift member and the switch without any of the plurality of springs arranged serially, the plurality of springs exerting a bi-directional biasing force on the shift member in both an axial forward and an axial rearward direction relative to the switch, wherein if the switch is moved from a first switch position to a second switch position of the second plurality of positions and the shift member is blocked from moving from a first speed position to a second speed position of the first plurality of positions, the shift member remains stationary and when the shift member is later unblocked from moving from the first speed position to the second speed position, a force provided by the plurality of springs urge the shift member to move to the second speed position while the switch remains stationary.