diabase / H-Series-Configuration

Configuration files for use with Diabase H-Series machines.
https://www.diabasemachines.com/
2 stars 3 forks source link

Bed not made active after pause #14

Open martijnschouten opened 3 years ago

martijnschouten commented 3 years ago

Hi,

I'm using an M25 inside my print to pause my printer halfway. This works except that the bed is not put into active mode again after I resume the print. It stays on standby, which appears to be because resume.g only turns the bed heater back on if it is already active

if state.machineMode="FFF" ; If we're in FFF mode...
    if heat.heaters[0] != null ; ...and we have defined a bed heater...
        if heat.heaters[0].state == "active" ; ...and it's active...
            M116 H0 S5 ; Wait until Heater 0 (bed) reaches +/-5C of target temperature

should this maybe have been:

if state.machineMode="FFF" ; If we're in FFF mode...
    if heat.heaters[0] != null ; ...and we have defined a bed heater...
        if heat.heaters[0].state == "standby" ; ...and it's on standby...
            M144 S1
            M116 H0 S5 ; Wait until Heater 0 (bed) reaches +/-5C of target temperature
martijnschouten commented 3 years ago

The previous solution might give problems in case the heatbet is not used. I temperorarily fixed this on our machine by simple not turning off the heatbet when pausing a print. I can't really imagine this is usefull for anybody anyway, since it might cause a print to warp of the bed during a pause.

RonaldThomas commented 3 years ago

Hi Martijn, That particular block of code is just intended to wait until the set temperature is reached. If you look a little further up in resume.g on lines 8-11, you'll see that the bed heater gets set to active as long as a heater is attached and it's not in a fault state:


if state.machineMode="FFF" ; If we're in FFF mode...
    if heat.heaters[0] != null ; ...and we have defined a bed heater...
        if {heat.heaters[0].state != "fault"  && heat.heaters[0].current != -273.15} ; ...and it's not in a fault state...
            M144 S1 ; Set bed heater to active.

In an attempt to replicate your reported issue, I just performed a test by adding an M25 command to a test print that uses the heated bed. In my test, M25 did pause the print and set the bed heater to "standby" and clicking the resume button restored the bed heater to "active" and then continued the print. Can you share the print file you were using when you experienced the problem? If you'd rather not post the file publicly, please feel free to send it to us directly at support@diabasemachines.com.