Solenoid engines are nothing new, though they still seem to be a fairly common project among the curious. Using a hard drive makes such a project much more simple and straight forward, that is if you want to keep it that way.
This solenoid engine uses a software control loop (code below) running on a 16MHz Adafruit Trinket to adjust its speed. The program specifically alternates between a modest 180RPM to a smashing 3000RPM every five or ten seconds! Watch the video below!