Need help with reprap 3 Gcode (extruder)
Im nearing completion of this custom build but i am having issues trying to test the extruder motor. When i try to test it to check the steps i get errors saying the tool cant be moved due to the heater and thermister settings. Can someone check my config?
Its a E3d V6 with the stock heater and thermister. The extruder is using E1/drive4.
Here is how my drives are layed out
; Configuration file for Duet WiFi (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.2.3 on Wed Mar 03 2021 15:26:56 GMT-0600 (Central Standard Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"The Big One" ; set printer name ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0 S0 ; physical drive 0 goes reverse M569 P1 S0 ; physical drive 1 goes reverse M569 P2 S1 ; physical drive 2 goes forwards M569 P3 S0 ; physical drive 3 goes reverse M569 P4 S0 ; physical drive 4 goes reverse M569 P5 S0 ; physical drive 5 goes reverse M584 X0:3 Y1 Z2:5 E4 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X395.52 Y80.00 Z400.00 E420.00 ; set steps per mm M566 X300.00 Y900.00 Z180.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X4000.00 Y4000.00 Z400.00 E1200.00 ; set maximum speeds (mm/min) M201 X400.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2) M906 X1400 Y1000 Z1200 E800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X800 Y440 Z400 S0 ; set axis maxima ; Endstops M574 X1 S1 P"!xstop+!e0stop" ; configure active-high endstop for low end on X via pin xstop M574 Y1 S1 P"!ystop" ; configure active-high endstop for low end on Y via pin ystop M574 Z1 S2 ; configure Z-probe endstop for low end on Z ; Z-Probe M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X15:215 Y15:195 S20 ; define mesh grid ; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"e1temp" Y"thermistor" T100000 B4725 C7.06e-8 ; define E1 temperature sensor M950 H1 C"e1heat" T2 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 D0 H1 F0 ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C ; Custom settings are not defined ; Miscellaneous M575 P1 S1 B57600 ; enable support for PanelDue T0
fcwilt last edited by
What exactly is the message you are getting?
"warning: tool 0 was not driven because temperatures were not high enough or it has heater fault"
DIY-O-Sphere last edited by
no, im just trying to set the extruder steps, i dont even need to heat the hot end yet...
But if i need to fix this setting first what should i edit/set it to?
DIY-O-Sphere last edited by DIY-O-Sphere
Only for the setup typ in M302 P1
But you have to disassemble the extruder, so no filament is pushed through the heater block
This is my first duet , so your saying that the only way to move the extruder stepper without heated hot end you have to use that console command every time you want to move it???
This would be the first thing about the duet i dont like.....
DIY-O-Sphere last edited by DIY-O-Sphere
Can't get it. You only need that for the setup. Later on you have always to heat up....
ok i will try to heat up and check the direction and esteps for the extruder. In the web control what is the difference between active and standby? How do i set a temp?
DIY-O-Sphere last edited by
Based on the link you posted Ive set up some temps for the hotend to select from the drop down but it isnt heating up and the temp shows 2000 all the time... might need to pull out the voltmeter to make sure its getting power but why would the thermistor show 2000 at all times?
My temperature shows as -273c or 2000c
A disconnected (open circuit) thermistor shows -273C in RRF. Other temperature sensor faults give a reading of 2000C, which triggers thermal protection as a safety. In general, check your wiring first and then ensure thermistor configuration is correct and uses the right syntax for your firmware version. i.e. RRF2 vs RRF3.
What is your thermistor? Your config says it's connected to E1temp. Do you have it maybe connected to E0?
so your saying that the only way to move the extruder stepper without heated hot end you have to use that console command every time you want to move it???
Well normally you would be printing and would have it heated up.
If you wanted to allow cold extrusion all the time you add the command to config.g so that it's run at startup. You can then remove it after you're done commissioning.
You might also want to check out these macros which come in very handy on the PanelDue.
As mentioned in my first post its a e3d v6 with the stock included thermistor. The gcode for that thermister was copied from the dozuki list for rrp3 for the e3d v6
I will check the wiring again.
I checked for continuity from the connector at the thermistor through the breakout board, through the cat cable, through the next breakout board, and to the connector at the duet and it all checks out. As i powered the machine back up i noticed another error saying it was an unknown sensor... so i checked my gcode against the wiki again and im fairly certain i have it correct...
; Heaters M308 S0 P"bedtemp" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"e1temp" Y"thermistor" T100000 B4725 C7.06e-8 ; define E1 temperature sensor M950 H1 C"e1heat" T2 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C
From the E3D wiki:
Edit the M305 P1 command in file sys/config.g on the SD card (you can do this in the web interface).
For firmware versions 1.16 and earlier, set the B parameter (beta value) to 4388. This value gives better accuracy at typical printing temperatures in the range 190 to 250C than the B value of 4267 quoted in the datasheet.
For firmware versions 1.17 and later, set the B parameter to 4725 and the C parameter to 7.06e-8.
Restart the electronics to process the new config.g file.
I am using the E1 heater slot and the Thermistor 2 slot on the Duet as you can see:
Yes that looks correct values for the E3D thermistor.
Can you send M98 P"config.g" in the console and report the results?
really? i was going by this diagram which says for the e1 hotend the corresponding thermister is #2... but i can try your suggestion
E0 is my x motor, not the hotend
It's maybe a little confusing..
T Temperature sensor number, required only when creating a heater. See M308.
M308 S1 P"e1temp" Y"thermistor" T100000 B4725 C7.06e-8 ; define E1 temperature sensor M950 H1 C"e1heat" T2 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C
The T1 in the M950 command refers to the sensor you've created in M308 which is S1.
That's why it's giving the "error sensor number 2 has not been defined." Because it doesn't exist yet. ie been defined with an M308 command.
Might want to refer to this wiring diagram as well.
I have that one as well and it shows the same information, e1 is T2 but apparently is wrong as your suggestion to have me switch it to T1, in the gcode but still in the T2 slot, is working.
Have the hot end removed from the extruder and about to try to heat it up for the first time.... this thing is gettin close to being finished !!
M308 S1 P"e1temp" Y"thermistor" T100000 B4725 C7.06e-8 ; define E1 temperature sensor
It's the M308 that is creating the sensor. Sensor1 in this case. And it's using E1temp pins to do it.
M950 H1 C"e1heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
Then M950 creates the heater. Heater1 in this case. And uses the e1heat pins to do it, then assigns sensor1 we just created to that heater with T1. T1=S1. The pins used are ancillary.
If you created another sensor and heater combo for a second extruder or something, it would use S2 and T2. And whatever pins you connected it to would be defined.
What I was asking before about using e1heat and e1temp was that it starts counting up from 0. So e0temp and e0heat are the first pins. It's not critical. It's just convention.
Hope that makes sense.
ehhh sort of lol.... this reprap stuff is new to me coming from marlin and that i just switched to reprap 3...
right now the hot end is working great, thank you. However, the extruder will retract but will not extrude giving this error:
Warning: Tool 0 was not driven because its heater temperatures were not high enough or it has a heater fault
This was with the hot end up to temp at 135c... so not sure why its saying not high enough...