Using a combination of transistors, programming and trickyness to control the direction of a DC-motor