So the program that is loaded into the Arduino is referred to as the ‘firmware’. The firmware I started with was called Sprinter. It is fairly basic, and I started with it as a learning point, and it was easy to get it to do a phantom print by modifying it to ignore the fact that it doesn’t have an extruder/hotend attached.
But I had to upgrade to the more sophisticated version of Sprinter called Marlin. The reason being is my Z-Axis Endstop. The stardard placement of the Z-Axis endstop on most home-made 3D Printers is at the bottom, where the printing table is. Mine is at the top, because, well I don’t have a table yet, and mounting the Endstop at the bottom of it’s stroke AND making it adjustable for when I do put in the table would be a royal pain in the arse.
So I opted with what’s called a Z-Max Endstop, instead of a Z-Min. The bonus of this setup is I also don’t have to monkey around with mechanically adjusting the end-stop to accommodate my printing bed. I can adjust it in the software with just a number. The other added bonus is that when the printer wants to ‘home’ itself, it pulls the printing head up away from the bed and any existing part, preventing a collision. The only danger is I have to be careful about that number I set, or otherwise my print head may attempt to go through my print bed.
But to support this Z-Max Endstop setup, I need the Marlin firmware, and Marlin was giving me a lot of grief initially just to get the axis moving. So I spent an entire evening in the IRC #reprap channel, and two gentlement were kind enough to help me out, and I got it working.