fhunleth

fhunleth

Co-author of Nerves

Introducing NervesHub 2.0

We’re excited to announce that we’re actively working on NervesHub 2.0, an improved version of our IoT device firmware update and management platform for Nerves-based devices. Although NervesHub 1.0 is still available and maintained in the maint-v1.0 branch, we believe 2.0 will enable significant improvements to meet our evolving needs and those of the Nerves community.

Eric Oestrich is leading this effort, with contributions from Jon Carstens, myself, and others. The development is happening in the open, so feel free to check it out and join us on this journey!

Key Goals for NervesHub 2.0:

  1. Self-host: Easily self-host your own NervesHub, especially for small deployments
  2. Scalable to 100Ks of Devices: Addresses performance issues found in real-world NervesHub 1.0 deployments
  3. Simple Rolling Updates: Set up rolling updates directly from the GUI
  4. MQTT Support: Utilize the cloud provider (like AWS IoT) you already have for scalability
  5. Product Environments: Manage fleets of devices at various stages of development
  6. Permission Model: Refocus on environments instead of organizations
  7. Flexible Firmware Push: Push firmware outside of deployments
  8. Improved Health Monitoring: Separate the causes of turning off firmware updates and periodically recheck possible network and power failures
  9. Simplified Code Base: Code deletion, removal of hosted service features, limits, certificate creation (no nerves_hub_ca), and more

This work is not complete, but we have made enough progress that it no longer makes sense to keep it to ourselves. For more details, visit the nerves_hub_web repository on GitHub.

Thank you for your continued support, and stay tuned for more updates on NervesHub 2.0!

Most Liked

jjcarstens

jjcarstens

Nerves Core Team

Yep. It’s an IEx console in the browser to that specific device if the feature is enabled

jjcarstens

jjcarstens

Nerves Core Team

The GitHub model of org/repo made sense when NervesHub was potentially a public service with a paid model. With 2.0, the shift is towards self hosting and when it’s your own service, the typical concern is usually just the “environment”, or “This is a prod|dev|qa device”.

So the new model is essentially having a single level of separation (dev, qa, prod, testing, etc), rather than the dual (org1-product1, org1-product2, etc etc)

steffend

steffend

Phoenix Core Team

Oh I love that! I really like working with nerves, but looking at the current NervesHub deployment always kept me from using it for hobbyist projects. Very excited for this. Maybe I can finally move some stuff from Balena to Nerves while still having easy multi device management.

ivanhercaz

ivanhercaz

I have deployed a local instance and I have see in the mock-test devices included the button “Console”, does it means you can remote access to the iex shell of a specific device?

Thank you in advance!

Where Next?

Popular in News & Updates Top

zachdaniel
Ash Framework 3.0: Release Candidates! The day is finally here! This is the culmination of years of work from the Ash team and community ...
New
zachdaniel
Hey friends! A long time quality of life feature we’ve been wanting to add is the ability to refer to to-one relationships in calculation...
New
sorenone
Oban v2.23.0 has been released. Sharpens resilience under database outages, catches misconfigured unique constraints at compile time, an...
New
fhunleth
Normally, we don’t announce patch release Nerves systems, but the nerves_system_br v1.30.1 release is particularly important for anyone u...
New
fhunleth
We are thrilled to announce another update for Nerves Systems to nerves_system_br 1.22.5-based releases. Nerves systems are the device su...
New
mobileoverlord
New versions of the Kiosk systems are out. These systems update official Nerves systems with a local web browser for rendering user inter...
New
bartblast
Hey Elixir community! :waving_hand: First, I owe you all an apology. There’s a running joke among my friends that Hologram is like nucle...
New
bartblast
This thread is for updates on the Hologram website (docs, new pages, roadmap, feature status, etc.). You can watch this thread to get no...
New
zachdaniel
:police_car_light: New AshAuthentication Installers :police_car_light: The AshAuthentication igniter installers are released! Today on s...
New
bartblast
Hey, I’ve put together a bare-bones Hologram app that might be useful for anyone wanting to try out the framework or report bugs. Nothing...
New

Other popular topics Top

minhajuddin
I have seen a lot of code which picks the first element from a list using Enum.at(0) instead of List.first. Is there a reason why people ...
New
Harrisonl
We have an ECS cluster with 4 services, where each task joins a single cluster, via discovery ECS discovery service. Currently when I de...
New
dotdotdotPaul
Okay, I'm having a heck of a time trying to figure out how to best handle the validation of belongs_to associations in Ecto. I'm sure I'...
New
openscript
Hello! Sorry for this astonishing simple question, but I’m really stuck. I try to set up the intellij-elixir plugin, but I don’t know ho...
New
axelson
This post is a wiki (feel free to hit the edit button near the bottom right of this post to add your own changes!) This post collects co...
239 45766 226
New
quazar
How to set Jason to encode all fields in ecto schema, I don’t care about security and implementing only is taking long list of attributes...
New
polypush135
As many of you may have realized by now (sorry for all the posts here) I’ve been working on a db problem where I’m trying to aggregate a ...
New
mcarvalho
What is the difference between System.get_env and Application.get_env? For example, what are best practices to use one versus another.
New
baxterw3b
Hi guys, i’m new in the Elixir world, and i have to say, that i love it! i’m having some problem to understand anonymous functions with ...
New
AstonJ
by Lance Halvorsen Elixir and Phoenix are generating tremendous excitement as an unbeatable platform for building modern web application...
460 27162 124
New

We're in Beta

About us Mission Statement