My Account Log in

1 option

Build a Binary Clock with Elixir and Nerves / Frank Hunleth and Bruce Tate.

Ebook Central College Complete Available online

View online
Format:
Book
Author/Creator:
Hunleth, Frank, author.
New Bruce, author.
Language:
English
Subjects (All):
Embedded computer systems.
Elixir (Computer program language).
Physical Description:
1 online resource (102 pages)
Edition:
First edition.
Place of Publication:
Raleigh, North Carolina : The Pragmatic Programmers, LLC, [2022]
Summary:
Want to get better at coding Elixir? Write a hardware project with Nerves. As you build this binary clock, you'll build in resiliency using OTP, the same libraries powering many commercial phone switches. You'll attack complexity the way the experts do, using a layered approach. You'll sharpen your debugging skills by taking small, easily verified steps toward your goal. When you're done, you'll have a working binary clock and a good appreciation of the work that goes into a hardware system. You'll also be able to apply that understanding to every new line of Elixir you write.Combining software with hardware can be frustrating, but you can become proficient in no time by taking a simple, logical approach. Blinking a single LED is the traditional "hello-world" of embedded systems. Building your own binary clock is the logical next step. It blinks groupings of LEDs based on the system time. This guide walks you through a working project using the techniques used by experts who build software for hardware every day.This common sense project moves forward in tiny, logical steps. As you progress, you can verify each step before moving on to the next. You don't have to be a Nerves novice to benefit from this project. Become a better Elixir programmer as you build your own desktop showpiece. With a layered approach to software design, you'll learn to control the complexity of your programs the way the experts do by focusing on one small slice of your system at a time.When you're done, you'll have your own binary clock, and also more of the tools you need to design and build your own Nerves and Elixir projects. You'll also be a better programmer with a deeper appreciation of layering techniques for controlling complexity.What You Need:This project is for Elixir developers who want to get started with Nerves, or improve their skills. The project is designed for Elixir 1.11 and Nerves 1.7, but later versions will probably work as well with slight modifications. The project uses a Raspberry Pi zero with a set of components. With slight modifications, you can make this book work with other components as well.
Contents:
Cover
Table of Contents
Acknowledgments
Frank Hunleth
Bruce Tate
Introduction
How to Read This Book
Building the Project
Online Resources
Part I-The Prototype
1. Our Plan
Burn Firmware
Make a Circuit
Build a Program in Layers
2. Burn Firmware
Choose a Computer
Install Nerves
Download and Install Firmware
What You Built
3. Build a Circuit
Build an LED Circuit
Control the LED from IEx
Part II-The Working Layered System
4. Blink an LED with Software Layers
The Layers of a Nerves Project
Initialize a Nerves Project from Scratch
Build a Coreless Boundary
5. Build the Clock's Circuit
Plan the Hardware
Prepare the Constant Current Driver
Finish the Hardware
Test the Hardware and Build the Cabinet
6. Write a Clock with a Core
Write the Core
Adapters Run One System, Three Ways
Build the Service Layer
7. React to Change
Order a Custom Binary Clock Chip
Load the LiveBook
Bringing up the Binary Clock PCB the First Time
SPI Communication
Simple Clock
What You'll Build
Bibliography.
Notes:
Description based on publisher supplied metadata and other sources.
Description based on print version record.
Description based on online resource; title from PDF title page (EBook Central, viewed May 14, 2025).
Includes bibliographical references.
Other Format:
Print version: Hunleth, Frank Build a Binary Clock with Elixir and Nerves
ISBN:
9781680509779
1680509772
9781680509786
1680509780
OCLC:
1343248308

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account