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
Hey folks! We’ve just released the beta 0.1.0 version of ash_sqlite. Take a look at the guide here: https://hexdocs.pm/ash_sqlite/get-sta...
New
zachdaniel
We’re working hard on improving docs, and have some substantial things that it would be great to get some thoughts on. One of the bigges...
New
fhunleth
We recently released Nerves 1.4.0 and an update to the Nerves new project generator, nerves_bootstrap. The biggest change is support for ...
New
jjcarstens
Do you like Hacktoberfest? Also enjoy working with Nerves and want to contribute? Fantastic! :tada: :beers: Here are some potential sta...
New
zachdaniel
Hey folks! We’re starting a new weekly newsletter with the goings on of the various Ash packages and other interesting news from myself a...
New
zachdaniel
Working with nested forms in Ash was already great, but it’s even better now with a the new features that will be in the next release of ...
New
lawik
It is my pleasure to announce the official release of the new generation of NervesHub with the v2.0.0 release. Containers are tagged. :p...
New
bartblast
I’m excited to announce Hologram v0.5.0, a major evolution of the full-stack Elixir web framework! This release brings massive performanc...
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
jjcarstens
The Raspberry Pi is a very popular hardware platform for Nerves users and the official systems are getting an upgrade! :tada: :beers: Wh...
New

Other popular topics Top

senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New
bsollish-terakeet
Credo is smart enough to check for (something like) this: assert length(the_list) == 0 with this response: Checking if an enum is empt...
New
JorisKok
I have a server on AWS, and was running a load test using artillery. When looking at the Phoenix dashboard I see the Ports going to 100% ...
New
malloryerik
Hi, this is for people who, like me, have had some friction using .html.heex templates in VSCode. The solution seems to be, in a hyphena...
New
KronicDeth
Elixir plugin for JetBrain’s IntelliJ Platform (including Rubymine) This is a plugin that adds support for Elixir to JetBrains IntelliJ...
289 35421 110
New
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
alice
Hey, Just curious what are the main benefits of Elixir compared to Clojure? When is Elixir more useful than Clojure and vice versa? Th...
New
belgoros
I’m not a pro in using Regex and can’t figure out why the following behaviour happens, especially if we take into account the difference ...
New
Qqwy
Original source of discussion: This topic on the Pragmatic Programmers' Functional Web Development with Elixir, OTP, and Phoenix forum. ...
New

We're in Beta

About us Mission Statement