Automatic Updates
-
Hey there,
wouldn't it be nice to have the Duet check for updates automatically?
This should be an easy task for coming releases. The Updates could be downloaded from the web to create a 100% automated process.
Additionally it would be nice to have an option to include beta releases and a link to the release notes in the Web Control Panel.Kind regards
GaRv3 -
This keeps coming up from time to time and always elicits numerous responses from both those who think it's a good idea, and those who strongly oppose it.
I can think of quite a few instances where updates have changed the behaviour and I've had to amend my configuration files to suit. In once case, the CoreXY kinematics changed the direction of one of the motors, and more recently, all my homing files had to be changed to suit the fact that the firmware would not allow moves unless an axis had been homed.
So, if the firmware had been automatically updated, I'd have been pretty miffed that my printer was suddenly broken. Even now, people run into problems because they don't read the release notes when updating the firmware.
-
@deckingman said in Automatic Updates:
So, if the firmware had been automatically updated, I'd have been pretty miffed that my printer was suddenly broken. Even now, people run into problems because they don't read the release notes when updating the firmware.
I don't think an auto update notification would auto-update the firmware. As long as it's not like Windows shoving an update down your throat with no option whatsoever, I think it'd be harmless. (For those not familiar with Windows auto updates, imagine your duet rebooting for an update when your 23 hours into a 24 hour print.)
Personally, I think a notification could be better implemented in DWC (not in the firmware itself.) The overhead to implement it in DWC should be very minimal.
-
I agree. And if the update needs attention because of changes that require config changes, a customized warning could pop up in DWC including a link to the instructions. It would even be possible to include advanced safety features like disabling printig after a specific update until some files have been edited. Additionally the user could be asked to confirm several changes to enable printing again.
If implemented correctly, this would actually improve update reliability and safety because DWC knows the old and new version of the firmware and could show all necessary steps for the specific update. This is much easier and safer for the user than going through all update instructions of several versions.
-
It would be really nice if the DWC could tell you if your firmware versions were up to date or not and at least link directly to the update source and instructions.
The auto updater for Octoprint is a perfect example of how an auto update system can work well.
Ideally an update system should let you roll back to a previous version just as easily if things aren't working how they should be.
-
I have moved this to the firmware wishlist, although it may end up being DWC rather than the firmware itself that checks for updates as I think it's probably better that the request comes from a browser that from the Duet itself (which we don't particularly want communicating with the internet).
We have this on the work list as a request, I don't yet have a time line to implement it though. We also plan to package the stable releases into one package with all that is needed.
-
If you need help, call out on me.
I am a software developer and used to work with JQuery and Bootstrap. -
@t3p3tony said in Automatic Updates:
I have moved this to the firmware wishlist, although it may end up being DWC rather than the firmware itself that checks for updates as I think it's probably better that the request comes from a browser that from the Duet itself (which we don't particularly want communicating with the internet).
I honestly believe that moving this to a DWC wish would be better. While I haven't tinkered with the duet firmware code yet, I think it'd be reasonable that there'd be a overhead (size) hit for adding code for an HTTPS query from the duet to the "outside world." (Just the TLS code, if it's not already in there, would be hefty.) Unlike DWC, the duet is essentially an embedded system with size and space limitations. It also changes the duet from a "browser controlled interface" to an Internet device that depends on full internet connectivity for full functionality. (On my home network, my duets are on a subnet with no internet access whatsoever.)
On the other hand, adding this to DWC would likely be trivial, and wouldn't introduce any new significant overhead. It's also more likely that a machine with a web browser installed has "internet access."
-
Agreed so moved to the DWC wishlist.
@GaRv3 I am sure Christian would be very glad of a pull request to DWC that implemented a check against the latest release at a specified GitHub address and notified the user. Thanks for offering!