Programming Nerves (self-published)

@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 LiveView powered kiosks (and everything in between).

You’ll be building projects like:

  1. A Morse code translator
  2. A reaction time tester
  3. An Etch A Sketch that renders in Livebook using knobs
  4. Upgrading the Etch A Sketch to use a joy stick
  5. Rending CPU temperature from the Raspberry Pi in LiveBook using VegaLite (you’ll also write a simple stress test to get the CPU hot :grin:)
  6. A simple weather report/clock using a 20x04 LCD display
  7. Displaying of accelerometer data using OLED displays
  8. Interacting with accelerometer data using a LiveView kiosk

By the end of the book, you will have built a wide a array of projects and should be more than comfortable tackling some of your own Nerves projects!

  1. Part 1: Rapid Prototyping Nerves Using Livebook

  • Getting Started With Livebook
  • Build a Morse Code Translator
  • Build a Traffic Light Simulator
  • Build a Reaction Time Game
  • Building the Etch A Sketch Circuit
  • Programming the Etch A Sketch
  1. Part 2: Building Custom Nerves Firmwares

  • Build a Custom Nerves Firmware
  • Optimizing Your WorkflowC
  • Interfacing With I²C Hardware
  • Creating a Nerves Kiosk
  1. Appendices

  • Basics of Electricity
  • Selecting Resistors
  • Using a Breadboard

Check out the book landing page for more details and to see how you can buy the book at 38% percent off while we’re in beta:

https://www.programmingnerves.dev/

Also our promo video where we show off a few of the projects that you will build:

Happy hacking!

18 Likes

Looks interesting. What is the expected timeline for the book to be completed?

1 Like

The goal is to have the book edited and completed by mid 2026.

3 Likes

Awesome!

1 Like

Congrats, which hardware you recommend to follow with you?

1 Like

Thanks! Here is a screenshot of the “What you will need” section:

This is subject to change as the projects are tweaked here and there during Beta. That said I don’t imagine it’ll change much.

Specifically regarding the Raspberry Pi, the wiring diagrams in the book are based on the Raspberry Pi 5 like so:

But if memory serves me correctly, any Raspberry Pi that has the 40 pin header should work (Raspberry 2+) as they standardized on the pins. So you have some flexibility with regards to what hardware you use.

4 Likes

Any recommendations on the memory size for the Pi and memory card?

It really comes down to what your budget is and what you plan to do with the Pi long term. If I recall correctly, the Nerves Livebook distribution booted up uses about 100mb of memory. So anything above the Raspberry Pi Zero 2 W (in terms of available memory) will be more than capable for what you throw at it for this book and future Nerves projects.

If you plan on using the Pi after this book for a lightweight desktop computer or media player, you may want to get the 8GB or 16GB Pi 5.

Thanks! The book looks great and looking forward to working through it!

1 Like

I really like working with the Pi 4 since it is plenty powerful, has everything across USB-C. Not as tiny as the Zero 2W though.

To be clear, are you saying the Pi Zero 2 W is not sufficient?

I am still not 100% sure which Pi I would need. (I would like to keep total spend as low as possible.) Can you add this information to the book? Minimum viable Pi, recommended Pi, etc. Thanks!

1 Like

Apologies if my previous comment was unclear. I meant anything with higher specs than the Pi Zero 2 W, including the Pi Zero 2 W. So I would suggest using one of the following to complete the projects within the book (also depending on what you plan on doing with the Pi long term):

  • Raspberry Pi Zero 2 W (can be found for about $20 with headers already soldered on)
  • Raspberry Pi 3 Model B+ (can be found for $40)
  • Raspberry Pi 4 Model B (1GB version can be found for $40 and price goes up with more ram)
  • Raspberry Pi 5 Model B (1GB version can be found for $45 and price goes up with more ram)

Given that the Livebook distribution of Nerves will consume about 100MB of memory at idle, you have about 400MB of memory left if you go with the cheapest option in the list (that being the Pi Zero 2 W which has 512MB of memory).

2 Likes

Might be hard to get those components here in the Philippines :frowning:

Sorry to hear that :/. What parts specifically are hard to get in the Philippines?

The non-generic ones :frowning: