FR: Preheat so bed and hot end both reach temp at same time
benjaminhill last edited by
When my hot end heats up first, it drools while waiting for the bed to heat up.
When the bed heats up first... well, nothing bad happens!
I believe that the machine would know how long each takes to heat, and start heating the bed first, then start heating the hot end at just the right time so that they both reach temp at the same time. Short of a "smart" solution, a simple offset like "start heating hot end when bed reaches 90% of target" would work great. Less drooling, more clean bases!
Kardacian last edited by
I agree this is a must have, my hotend heats so fast that occasionly the hotend jamed waiting for the bed to heat up. So I have to preheat the bed before the nozzle thus avoiding the jams. Not a huge deal but makes for a manual process. If it's easier just wait until the bed is 5 degrees from the target temprature then start heating the hotend.
ryan.lutz last edited by ryan.lutz
The feature itself makes sense, and I too would like to see this developed. I think the issue with this is that each printer is unique and heating times for both the bed and nozzle vary from printer to printer. Even printers of the same make and model can vary-- thus, it's not easy to get this process down so precisely that it would make for easy development. I'm not saying it can't be done, I'm just pointing out how difficult it would be-- and for an open source program like MatterControl this is going to be prohibitive of getting it done.
Dialing in your Start G-Code is probably going to be the best method for achieving the most tailored solution to this issue. You can specify the order in which to turn on each heater, and you can use the G4 Dwell command to delay for x seconds if you need extra time in between commands.
SuperTech459 last edited by
In order to get this type of behavior, an adaptive algorithm would need to read each temperature and calculate rate/time of heating.
Over time it would "learn" how long each takes and adjust turn-on times accordingly, much like a programmable thermostat.
It wouldn't matter what printer is used, just like the thermostat doesn't "care" about the HVAC system.
All this assumes one wants them to reach temp simultaneously.
I often leave the hot end at temp while letting the bed cool, so it can be prepped for the next run. Saves some time between prints.
Then I clean the oozing filament before the printer zeroes. Keeps the plastic from being forced into the nozzle.
BTW, my Robo 3D R1 +Plus has yet to exhibit any jamming behavior due to the hot end reaching temp first.
However, all I run is nGen, so this may be the reason. I've only been printing for about two months and am far from experienced.
Maybe my time is coming.
geneb last edited by
When heating, issuing M140 S<bed temp> followed by M190 S<bed temp> will ensure that the bed is heated before the hot end begins to heat. The M140 command heats the bed and the M190 command pauses until the bed temperature matches the passed temp.
MatterControl should do this by default.
Lochemage last edited by
I would like to see this feature, but it's complicated. As @ryan.lutz says, printers all heat up at different rates. Not only does your brand of heat element play a factor, but also the firmware used on the printer itself. Namely most firmwares I know of (if not all) use a PID algorithm to heat up the element, depending on your hardware, what PID settings you have calibrated, the temperature of the element to begin with, and the temperature of the environment outside, you will get drastically different heat times. I believe you can get a ballpark figure, though.
This is something that could get implemented on MatterControl itself, but I think it makes more sense that this be something built into the firmware instead. It would also keep track of heating times even when your printer through SD and not through MatterControl.