When printing from Cura on my laptop via USB, my extruder motor does not turn to extrude filament. However, when I use the "move axis" command in the firmware (on the little screen on the printer), it seems to work fine, extruding plastic smoothly. The nozzle temperature is where it should be (230 degrees or so for ABS) while printing and I get no error messages in Cura.
What would cause the extruder to not function when printing even though it seems to be fine electrically, mechanically, and in firmware? Is there g-code from Cura that could be incorrect?
I'm not sure where to look for problems.
This is my first 3D printer. It is a Alunar M508 (a Prusa clone) that I got for free in a partially disassembled state. The firmware seemed to be screwed up when I first started using it. The firmware that came on the SD card with the printer would not compile in my Arduino software, so I used a Marlin firmware from here: https://github.com/camalot/alunar-prusa-i3-marlin-i3-firmware
I had to make one change to the configuration file to reverse the X home direction, but otherwise I have not changed the firmware settings or anything. The new firmware does not recognize the SD card slot at all, but that's a different story.
I'm using Cura to print via USB. The printer is set up as a Prusa I3, using the "Marlin" GCode flavor. Nozzle size: .4mm, Compatible Material diameter: 1.75mm.
G21 ;metric values G90 ;absolute positioning M82 ;set extruder to absolute mode M107 ;start with the fan off G28 X0 Y0 ;move X/Y to min endstops G28 Z0 ;move Z to min endstops G1 Z15.0 F9000 ;move the platform down 15mm G92 E0 ;zero the extruded length G1 F200 E3 ;extrude 3mm of feed stock G92 E0 ;zero the extruded length again G1 F9000 ;Put printing message on LCD screen M117 Printing...
M104 S0 ;extruder heater off M140 S0 ;heated bed heater off (if you have it) G91 ;relative positioning G1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure G1 Z+0.5 E-5 X-20 Y-20 F9000 ;move Z up a bit and retract filament even more G28 X0 Y0 ;move X/Y to min endstops, so the head is out of the way M84 ;steppers off G90 ;absolute positioning
Edit to Add some Gcode from the beginning of the test print:
;LAYER_COUNT:127 ;LAYER:0 M107 G0 F3600 X86.923 Y86.649 Z0.3 ;TYPE:SKIRT G1 F1800 X87.522 Y86.134 E0.03941 G1 X88.17 Y85.683 E0.0788 G1 X88.861 Y85.299 E0.11824 G1 X89.586 Y84.987 E0.15762 G1 X90.339 Y84.75 E0.197 G1 X91.113 Y84.591 E0.23642 G1 X91.898 Y84.51 E0.27579 G1 X92.3 Y84.5 E0.29586 G1 X117.7 Y84.5 E1.56307 G1 X118.489 Y84.54 E1.60248 G1 X119.269 Y84.659 E1.64185 G1 X120.034 Y84.857 E1.68127 G1 X120.774 Y85.131 E1.72064 G1 X121.483 Y85.479 E1.76004 G1 X122.154 Y85.897 E1.79948 G1 X122.778 Y86.38 E1.83885
It turns out the problem was a firmware issue. Using the gcode below (from David Lotts in the comments), I was able to determine that the extruder was running backwards. A flag in the firmware reversed it, solving the problem.
M82 ;set extruder to absolute mode G92 E0 ;zero the extruded length G1 F200 E20 ;extrude 20mm of feed stock