PragmaticBookshelf

PragmaticBookshelf

Forum Sponsor

Build a Weather Station with Elixir and Nerves (PragProg)

Alexander Koutmos
Bruce A. Tate @redrapids
Frank Hunleth @fhunleth

edited by Jacquelyn Carter @jkcarter

The Elixir programming language has become a go-to tool for creating reliable, fault-tolerant, and robust server-side applications. Thanks to Nerves, those same exact benefits can be realized in embedded applications. This book will teach you how to structure, build, and deploy production grade Nerves applications to network-enabled devices. The weather station sensor hub project that you will be embarking upon will show you how to create a full stack IoT solution in record time. You will build everything from the embedded Nerves device, to the Phoenix backend and even the Grafana time-series data visualizations.

Elixir as a programming language has found its way into many different software domains, largely in part to the rock solid foundation of the Erlang virtual machine. Thanks to the Nerves framework, Elixir has also found success in the world of embedded systems and IoT. Having access to all of the Elixir and OTP constructs such as concurrency, supervision, and immutability makes for a powerful IoT recipe. Find out how to create fault-tolerant, reliable, and robust embedded applications using the Nerves framework.

Build and deploy a production grade weather station sensor hub using Elixir and Nerves, all while leveraging the best practices established by the Nerves community for structuring and organizing Nerves applications. Capture all of your weather station sensor data using Phoenix and Ecto in a lightweight server-side application. Efficiently store and retrieve the time-series weather data collected by your device using TimescaleDB (the Postgres extension for time-series data). Finally, complete the full stack IoT solution by using Grafana to visualize all of your time-series weather station data. Discover how to create software solutions where the underlying technologies and techniques are applicable to all layers of the project.

Take your project from idea to production-ready in record time with Elixir and Nerves.


Alexander Koutmos has been writing software professionally for almost a decade and has been working primarily with Elixir since 2016. He currently maintains a few Elixir libraries on Hex and also runs a software consultancy (www.stagira.com).

Bruce Tate is a kayaker, programmer, and father of two from Chattanooga, Tennessee. The author of more than 10 books has been around Elixir from the beginning. He is the founder of Groxio, a company that trains Elixir developers.

Frank Hunleth is an embedded systems programmer, OSS maintainer, and Nerves core team member. When not in front of a computer, he loves running and spending time with his family.


Don’t forget you can get 35% off with your Devtalk discount! Just use the coupon code “devtalk.com" at checkout :+1:


Posted via Devtalk (see this thread for details).

First 10 of 66 Posts Switch mode

crispinb

crispinb

Is this going to be available for purchase as a beta before final publication? It seems not to be currently.

Sebb

Sebb

it is now, just bought it.
Great to have a nerves book.

@PragmaticBookshelf the discount code is not working

crispinb

crispinb

Great - at last a use for my spare pi! Haven’t touched Nerves yet but it looks like it could be great fun.

Sebb

Sebb

It is. Embedded development is fun. Very different to web or desktop. And nerves makes the hard parts of embedded development easy. And you can do it in Elixir.

crispinb

crispinb

I’d be interested in your impressions of the book - does this first beta release look pretty usable?

stefanluptak

stefanluptak

margareteldridge

margareteldridge

@Sebb Thanks for reading and for letting us know about the coupon code. I’ve logged a ticket with support@pragprog.com.

crova

crova

Thanks for bringing attention for this book.
I’ve been wanting to take a shot in IoT and this book is a perfect fit to go for it.

Sebb

Sebb

Just had a two minute look at the book. It’s missing two of five chapters now, but I think it is not trying to provide a deep understanding of Nerves, Linux or embedded but is really just what the title says

Build a Weather Station with Elixir and Nerves

I’m sure it does a good job with that. The choice of the weatherstation is a very good one, I think. You build something you can really use. Play with I2C sensors and will visualize the data in Grafana. And nerves makes this ridiculously easy. Do this with C and you won’t have the basics set up when you’re already done with nerves.

akoutmos

akoutmos

Author of Build a Weather Station with Elixir and Nerves

I may be biased as I am one of the authors haha.

Some of the book reviewers who covered the technical aspects of the books, did actually assemble the Nerves weather station and test the project out end-to-end without coming across any issues. Obviously things can change between now and when the book comes out of beta, but I don’t see the code changing much :slight_smile:.

Hope that helps!

Where Next?

Trending in Books Top

PragmaticBookshelf
Bruce A. Tate @redrapids and Sophie DeBenedetto @SophieDeBenedetto edited by Jacquelyn Carter @jkcarter The days of the traditional requ...
New
PragmaticBookshelf
Isaak Tsalicoglou Built for the curious, this isn’t your average programming book—it’s nearly 500 pages of hands-on mentorship beyond cod...
New
akoutmos
@hugobarauna and I (Alex Koutmos) have been hard at work on writing a book on Nerves that takes you from simply blinking LEDs to building...
New

Other Trending Topics Top

JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New
type1fool
I just stumbled on a newly redesigned elixir-lang.org. :tada: It looks like @Software_Mansion did the work, and I think it is generally a...
New
juhalehtonen
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
New

We're in Beta

About us Mission Statement