Comments (6)
The intention is that this is executed one time after the reboot that applies the Nerves firmware update?
Why not check the peripheral firmware versions on each boot and upgrade/downgrade if necessary?
from nerves_hub.
The intention is that this is executed one time after the reboot that applies the Nerves firmware update?
Yeah i thought it would be easy to have a registration of modules or a single module in uboot_env
along with their results.
Why not check the peripheral firmware versions on each boot and upgrade/downgrade if necessary?
Any in my particular project, i use avrdude
which is beyond unstable. It's basically a diceroll if it works at all. and "checking" the version requires using Circuits.UART
to open it, which further complicates running avrdude
for some reason. It's easier to just flash it to a known required version upon an upgrade.
from nerves_hub.
If this is something we don't want to support, i'm fine with implementing it in band of my application. I thought it might be useful to have baked into nerves_hub though.
from nerves_hub.
You could write the version number to the file after a successful avr_dude run.
from nerves_hub.
I've been burned by multi-part or bundled firmware updates. My problem is debugging what happens when one part gets out-of-sync. There needs to be some infrastructure around making the update all or none, and then it also has to handle a Nerves firmware update that succeeds but then is reverted. It feels complicated.
If this were redone to always check at boot rather than being a one-time hook, then I'd be more ok. I suspect that the value-add would be less, though.
from nerves_hub.
Yeah i have also been constantly burned by multi-part updates. Maybe i just need to come up with a different or better way of managing my upgrades. Feel free to close if you don't think we should support this feature. (i'm pretty much okay with not supporting it)
from nerves_hub.
Related Issues (20)
- Crash on no update available
- EC private keys which include their params fail in NervesHub.Certificate HOT 3
- Test that the example app compiles on CI
- EC private keys cause devices' non-socket NervesHub requests to fail from v0.4.0 HOT 3
- NERVES_HUB_HOME default dir
- 'Local NervesHub user password' might be confusing
- Rename to `nerves_hub_device`
- Support firmware validation callback on successful connect to NervesHub
- enable Toolshed for remote IEx sessions HOT 1
- Cleanup Logger messages
- FWUP errors cause the whole channel process to restart
- Handle updates when firmware isn't validated HOT 1
- CLI Tool can't activate deployments with spaces in name.
- nerves_hub.deployment example should quote deployment name HOT 2
- Remote console IO error HOT 3
- NervesHub.Connection must be started in order to NervesHub.update
- update docs to reflect mix target usage HOT 1
- Run client behind a proxy
- HTTP Tunnel to devices
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nerves_hub.