All paths

Firmware capstone: your own device

Take your own device from an idea to a tagged release: a brief, testable requirements, a layered architecture, a driver from the datasheet, self-tests and unit tests, a watchdog and a power budget, then the write-up.

ESP32-C3-DevKitM-1Free7 lessons8 h4 chapters3,600 XPEmbedded engineering · Expert+400 XP

0 of 7 done

What you will build

3 projects, built step by step

7 lessons in 4 chapters, about 8 hours on a simulated ESP32-C3-DevKitM-1. Free, in your browser, every step checked by the simulator.

Chapter 1 project

Requirements

Five numbered requirements, each one testable: an alarm above a limit, hysteresis so it does not chatter, a button that silences the buzzer, and a change request handled by editing one constant.

Open it in the simulator
Chapter 2 project

Drivers

A BME280 temperature driver written straight from the datasheet: registers, calibration, the integer compensation formula, error codes instead of wrong numbers, a configurable address and a plausibility check that catches a chip that reset.

Open it in the simulator
Chapter 3 project

Power and reliability

A task watchdog that reboots a stuck loop and says why, a FAULT state that recovers by itself when the sensor comes back, and a battery budget worked out from the firmware's own measured awake time.

Open it in the simulator
The map

Chapter by chapter

Each lesson opens when the one before it is done, and each chapter ends in a project.

Chapter 1

Plan it

Choose the device, prove the parts, and write requirements you can test.

  1. Open350 XP

    Pick a device

    The brief, the reference device and the bring-up: scan the I2C bus, check the chip id, predict a reading, and prove the LED, the buzzer and the button all work before writing a single feature.

    0 of 6 steps

  2. ProjectLocked800 XP

    Requirements

    Five numbered requirements, each one testable: an alarm above a limit, hysteresis so it does not chatter, a button that silences the buzzer, and a change request handled by editing one constant.

    0 of 7 steps

Chapter 2

Build it

Layers, a state machine, a command shell and a driver from the datasheet.

  1. Locked350 XP

    Architecture

    Three layers that only talk downward: drivers, a state machine with IDLE, ALARM and FAULT, and a serial command shell with a table of commands you extend with one of your own.

    0 of 6 steps

  2. ProjectLocked700 XP

    Drivers

    A BME280 temperature driver written straight from the datasheet: registers, calibration, the integer compensation formula, error codes instead of wrong numbers, a configurable address and a plausibility check that catches a chip that reset.

    0 of 6 steps

Chapter 3

Prove it

Self-tests, unit tests, a watchdog, recovery and a power budget.

  1. Locked350 XP

    Tests

    Self-tests at boot that print PASS or FAIL, a test command for the bench, and unit tests of a pure state machine function that run on the chip, catch a real hysteresis bug, and grow by one case.

    0 of 6 steps

  2. ProjectLocked700 XP

    Power and reliability

    A task watchdog that reboots a stuck loop and says why, a FAULT state that recovers by itself when the sensor comes back, and a battery budget worked out from the firmware's own measured awake time.

    0 of 6 steps

Chapter 4

Ship it

A version, release notes, a demo and the write-up for your portfolio.

  1. Locked350 XP

    Release and write-up

    Greenhouse guard 1.0.0: a version string, a version command, release notes with known issues, a version bump, a demo run, and the README, demo script and shared project link that make it a portfolio piece.

    0 of 6 steps

Syllabus

Every lesson in the course

All 7 lessons, in order, each with what it covers. Any of them opens in the editor right away.

Chapter 1

Plan it

  1. Pick a deviceThe brief, the reference device and the bring-up: scan the I2C bus, check the chip id, predict a reading, and prove the LED, the buzzer and the button all work before writing a single feature.
  2. RequirementsFive numbered requirements, each one testable: an alarm above a limit, hysteresis so it does not chatter, a button that silences the buzzer, and a change request handled by editing one constant.
Chapter 2

Build it

  1. ArchitectureThree layers that only talk downward: drivers, a state machine with IDLE, ALARM and FAULT, and a serial command shell with a table of commands you extend with one of your own.
  2. DriversA BME280 temperature driver written straight from the datasheet: registers, calibration, the integer compensation formula, error codes instead of wrong numbers, a configurable address and a plausibility check that catches a chip that reset.
Chapter 3

Prove it

  1. TestsSelf-tests at boot that print PASS or FAIL, a test command for the bench, and unit tests of a pure state machine function that run on the chip, catch a real hysteresis bug, and grow by one case.
  2. Power and reliabilityA task watchdog that reboots a stuck loop and says why, a FAULT state that recovers by itself when the sensor comes back, and a battery budget worked out from the firmware's own measured awake time.
Chapter 4

Ship it

  1. Release and write-upGreenhouse guard 1.0.0: a version string, a version command, release notes with known issues, a version bump, a demo run, and the README, demo script and shared project link that make it a portfolio piece.
Kits

Build it on your bench too

Every lesson runs in the simulator with nothing to buy. When you want the real thing, these kits have the parts.

Have a kit already?

Find your kit

Pick the starter kit you own and run every lesson in its manual with the same parts on the same pins.

See every kit
Questions

About Firmware capstone: your own device

Is Firmware capstone: your own device free?

Yes. All 7 lessons of Firmware capstone: your own device are free and run in your browser, with nothing to install and no parts to buy before you start.

Do I need a real ESP32-C3-DevKitM-1?

No. Every lesson runs on a simulated ESP32-C3-DevKitM-1 with its parts on the canvas, and the simulator checks each step as you go. When you want to build it for real, the same wiring and code work on a real board.

How long does Firmware capstone: your own device take?

About 8 hours: 7 lessons in 4 chapters, each one a few short steps. Your progress is kept, so you can stop after any lesson and pick up where you left off.

What will I build?

Each chapter ends in a project that puts it together: Requirements, Drivers and Power and reliability.

Where do I start?

With "Pick a device", and each lesson builds on the one before it. New to circuits? Electronics basics is the course that starts from zero.