3D printer test troubles (M999 error, motors do not move) I've been recently building a 3D printer and I'm having issues testing it.

This is my hardware:


RAMPS 1.4
Arduino Mega 2560
4x Pololu Motor shields A4988
1x Nema 17 extruder
2x floppy stepper motor
1x DVD stepper motor
Generic hotend with 0,4&nbsp;mm nozzle


Then I assembled everything and I started testing... I tried the RAMPS test code and it didn't work (motors did not move, but I'm sure they are OK), then I tried using Marlin and Pronterface; it showed hotend temperature stuck at 150°C, but the hotend was not hot. Moreover the motors would not move.

I also tried Repetier host and it returned an M999 error without any further explanation.

I had no problem installing firmware on the Arduino and the fan of the hotend is working. I also tried changing baud rate but it seemed not to work.
Two immediate issues I can think of are:


Do the floppy drive and DVD drive stepper motors have sufficient torque to turn whatever you have connected them to? You don't say what sort of printer you have built, but a holding toque of 44 N·cm (62oz·in, 4.5kg·cm) or more, is desirable. Maybe you should consider upgrading your floppy ad DVD drive motors to Nema 17 motors... See RepRapWiki - Nema 17 for more details.
Do you have the correct thermistor selected in the firmware? Check your firmware configuration file.


To further check the thermistor, disconnect it from the RAMPS board, and using a multimeter, check its resistance at room temperature. Then compare it with the temperature characteristic graph of your thermistor type. A general 10K thermistor has the following response curve (source):



Does the reading that your multimeter gives, seem reasonable?

Also check the RAMPS thermistor input, by shorting the thermistor pins on the RAMPS board (using a jumper). What is the temperature reading now? It should be whatever MAX_TEMP is defined as, typically around 400°C. Again, check your firmware configuration file.



In addition, M999 is not an error, but a command used to reset the firmware/printer, after an error has occurred.