I'm building a 3d-printer. I use linuxcnc and a Gacko 540 to control all the steppers. To control the heated nozzle i've built a controller using an arduino uno, AD595 chip, and the LCD shield from adafruit. The arduino reads in the temp from the tc, and switches on/off (using PID) a fet to supply power to the heating element on the nozzle. This all works quite well until i turn on the stepper motors. I can turn on the 540 with no motors connected, and all is well. As soon as i plug in at least 1 motor, and turn on the 540, the TC reading begins to jump all over the place, thus making control of the nozzle non-existent.

The arduino is powered from a laptop. The heater is powered from an external power supply. The 540 is controlled from a second computer, and the steppers are powered from a separate power supply as well. It certainly feels like its a noise issue from the motors. I've replaced the motor wiring with shielded cable, and have tried filtering the output signal from the ad595, but still the interfearance persists.

and advise/suggestions would be greatly appreciated.

thanks