<p>Why is it that if I execute a gcode command that causes the stepper motor to turn in reverse (any negative move on the X axis), after the step it will emit a high pitched whine until it gets another command to rotate in its forward direction?</p>

<p>Executing multiple reverse commands will cause the tone to vary in frequency each step, and always it goes away after another step in the opposite (forward) direction. </p>

<p>Sometimes.</p>

<p>And other times it does it in both directions, but only on every other step. One step +X its there, next step its gone, next step its back, and so on...</p>

<p>Then they also make a different noise when idle, before I disable them with the "disable steppers" command.</p>

<p>What are these noises?</p>

<p>And is it bad to leave the motors in this state? Will it burn them out?</p>

this is normalISH for stepper motors. they have a fair ammount of current pulsing through them at relatively high frequencies, coils and other parts that will vibrate. if it quite loud you can look into the boards that drive them, depending on your printer they are replaceable, and better 'drivers' send cleaner signals that make less noise. however: if your motors get hot or start making clicking noises, or stop randomly, or acting up more significantly, you should look adjusting how much current they are getting. search for stepper motor calibration, basically you need to adjust the ammount of current the motors are getting, but if the machine prints normally, then this is not something you want to play with. you can also probably find the data sheet for your motor, they are usually rated to operate up to about 50C