Trying to configure heaters
-
I can't say that I've used the configuration tool - (my Duet usage pre-dates it's existence) but as David said, it does look like it hasn't kept abreast of the firmware. There is nothing glaringly wrong with the config.g that you've posted other than some strange heater settings. What David suggested should get you up and running though.
You'll get more and better information about setting up Z probes and the like from the wiki https://duet3d.dozuki.com/ and especially the gcode section https://duet3d.dozuki.com/Wiki/GCode. Setting the Z probe type and offsets (M558) are explained here https://duet3d.dozuki.com/Wiki/GCode#Section_M558_Set_Z_probe_type.
You currently have M558 P0 which means that no probe is present. You need to use P4,or 5,6,7,8 depending on how you've wired it.
-
Yes, I found that info useful. Thanks.
I also found that the firmware released a few days ago fixes the inability to manually zero the bed when the "no Z probe" option is used:
"When Z probe type 0 is selected and DWC/PanelDue have prompted the user to jog Z, axis movement before homing is allowed"I've deleted the M301 statement and added M307s, run PID tuning on both the bed and extruder heaters and then saved the results to config-override file.
Now I notice that since I swapped the heaters the Panel Due doesn't display the temperature of the extruder, only the bed heater, which means the only way to control the extruder temperature is through the gcode console. I guess i can add a couple macros to set the extruder temperature to specific values.
-
As of firmware 1.21 by default, you can't move any axes until they have been homed. I'm still on an older version of firmware but personally I'd find that a right royal pain as I often want to simple move the bed down say 100mm without homing it first. All is not lost though as it can be over-ridden by putting M564 H0 somewhere in config.g. Being an experienced user yourself, you might want to do that. Just be aware that you could accidentally command an axis to move beyond it's physical limits. Once it's been homed and you've set the axis maxima, they won't go beyond their limits in any case.
I can't help you the Panel Due - that's DC's dept.
I hope you don't mind me suggesting the following but I know you aren't likely to use any form of bed level or flatness compensation. IMO, those sort of compensations are the main reason why you might want to use config_override.g. I'd suggest that you put everything into config.g and don't use config_override.g at all. If you do, I'll pretty much guarantee that one day it'll bite you in the ar*e. You'l be editing something in config.g and wondering why it's having no effect (because what you are editing is being overriden by config-override). Of course it's up to you but I'm just suggesting it because it's caught quite a few people out in the past.
HTH
-
I'm no fan of over-ride type files either. Way back in my Arduino/RAMPS days I was bitten by the eeprom storage and thereafter used only the main config file for any changes. Once I have the heaters tuned up and working right I'll copy the stuff out of the over-ride file to the config.g and delete the over-ride file.
I've been trying unsuccessfully to get the chamber heater modeled. The autotune keeps failing because the temperature doesn't rise isn't fast enough- the tuning runs for about 1 minute then shuts down reporting that the temperature isn't rising as fast as expected. I set A to 11 (the minimum allowed), C to 99000, and D to 70 (the max allowed) using M307 via the console, but still no joy. Maybe it doesn't matter if it's operating in bang-bang mode, but I would think the fire prevention stuff would have some timers that need to be satisfied in order to work properly. The chamber heater is a 500W unit which is probably underpowered for the volume of the enclosure, but it manages to get up to 45C in about 20 minutes or so, which is usually about how long it takes to print the first few layers of most prints that need the enclosure heater, so it's as fast as it needs to be.
-
@dc42 I gave up on trying to create a model of the chamber heater and just went with putting the M307 H2 B1 line in the config.g file, and deleted the config-override file. Now if I set the chamber temperature it still times out and shuts the chamber heater off.
Is there any way to extend the time-out for that heater?
I noticed that when I power up the machine, the when the thing is booting up the panel due shows the extruder and bed temperatures, but then the extruder temperature disappears from the screen. Is there a config tweak to fix that?
-
@mrehorstdmd Check out M570. If you extend the time parameter for fault detection for that heater, it ought to cure that particular problem.
-
@mrehorstdmd said in Trying to configure heaters:
@dc42 I gave up on trying to create a model of the chamber heater and just went with putting the M307 H2 B1 line in the config.g file, and deleted the config-override file. Now if I set the chamber temperature it still times out and shuts the chamber heater off.
Is there any way to extend the time-out for that heater?
I'm surprised that M307 H2 A11 C99000 D70 didn't allow you to auto tune. Does it take more than 70 seconds from turning the heater on to seeing the temperature start to rise?
Still, auto tuning the chamber heater may take a long time if your chamber is well-insulated, so I suggest you set the M307 parameters for the chamber manually as described at https://duet3d.dozuki.com/Wiki/Tuning_the_heater_temperature_control#Section_Setting_the_model_parameters_manually instead of trying to run auto tuning. In particular, I expect the dead time for your chamber heater will be quite large, and so will the time constant. A higher time constant and lower gain than the defaults will reduce the expected rate of temperature rise. The dead time can be set as large as necessary, but the time constant must be at least twice the dead time. As you are using bang-bang control, you don't need accurate M307 parameters.
I noticed that when I power up the machine, the when the thing is booting up the panel due shows the extruder and bed temperatures, but then the extruder temperature disappears from the screen. Is there a config tweak to fix that?
I'm sorry, the PanelDue firmware currently has a very simplistic view of heaters. It assumes that heater 0 is the bed heater, heater 1 is the only heater for the first tool, heater 2 is the only heater for the second tool, and so on. It's on my work list to rewrite that part of the code to allow for the flexibility of RRF to do things differently; but there wasn't time to include that in the recent 1.21 PanelDue firmware release.
-
@dc42 said in Trying to configure heaters:
that in the recent 1.21 Pane
The autotune runs for about 70 seconds and then fails. D70 is the maximum I can set that parameter to without it complaining that the value is out of range. 11 is the minimum value that works for A.
The heater is a 500W resistive bar with fins that came from a stratasys printer. It takes about 20 sec or so from power on until it starts feeling warm, and in my enclosure there's a fan blowing air over it so it doesn't get too hot. The enclosure is large, and temperature rises a little over 1C per minute.
Even with the heater simply set to bang-bang mode, it times out and shuts off.
Thanks- I'll watch for an update of the Panel Due in a future release. In the meantime I can use macros to set temperatures for different filaments.
-
@mrehorstdmd, where did you mount the thermistor?
The reason that D70 was the highest value you could use in M307 is that the C parameter defaults to 140 on heaters that are default to being extruder heaters, and C must be at least twice D. You can use much higher D values if you provide a high enough C parameter in the same command. For example, I just sent "m307 h1 d1000 a20 c2000" and it was accepted.
For a bed or chamber heater, auto tuning expects the temperature to rise by at least 3C after the dead time + 1 minute.
However, auto tuning the enclosure heater is likely to take more than an hour, so I suggest you establish approximate parameters manually.
-
@dc42 I see. I'll take another run at it when I get home tonight. If I set the dead time to 500 or so, set C to 10000, and A to 11, it may work.
I did have the chamber up to 45C with the Duet board - I think it was when it had the M301 statements in the config.g file, though I don't know why that would matter. That was before I swapped the bed and extruder heaters. I haven't been able to get it up to that temperature since.
I may just swap the heaters back to the original locations- the main reason for the swap is that I use an SSR for the bed heater, and I have some excessively heavy wires running to the hot-end heater that don't fit in the small screw terminals. If I swap them back, everything on the Panel Due will go back to normal, too.
-
@deckingman I'll try the M570 command, too. Thanks!
-
OK, everything is working. I swapped the hot-end and bed heater connections back to the default positions, used A11, C99000, D2000 to get the PID tuning to run on the chamber heater.
At first the Panel Due wouldn't control the hot-end temperature, but I found a reference to the T0 statement for the config file, added it, and now it's all behaving as expected.
Thanks for the help and suggestions!