Document
CI-0001
Revision
A
Date
2026-10-04

Embedded systems engineering

Circuit boards, the firmware that runs on them, and the software that talks to both.

I take an instrument from the first block diagram through schematic, layout, bring-up and firmware to the desktop tool that drives it on the bench. The tools I build along the way are published here for anyone to use.

1Features

Hardware

  • Schematic and multilayer layout, from block diagram to fabrication and assembly files
  • High-speed digital: stackup planning, controlled impedance, length and skew matching, unbroken return paths
  • Mixed signal: ADC and DAC front ends, references and clocks, grounding that keeps switching noise out of the measurement
  • Analog: amplifiers, filters, sensor conditioning and current sensing
  • Low-speed digital and power: microcontroller systems, bus interfaces, regulators, sequencing and protection
  • Assembly, rework and first power-up

Firmware

  • C on STM32 and ESP32-S3 microcontrollers
  • Interrupt- and DMA-driven drivers, timers and ADCs
  • Framed binary protocols with CRC checks over USB, UART and RS-485

Host software

  • C# and .NET desktop tools that drive the hardware and log every exchange
  • Python for test automation, instrument control over SCPI, and data analysis
  • Live BOM pricing and stock checks across distributors

2Applications

  • Research and development instruments
  • Bench test fixtures and production test
  • Data acquisition and sensor systems
  • Control and configuration software for hardware

3Description

Carrillo Industries is the workbench of an embedded systems engineer working in R&D. One person carries a design across the whole loop, so the board, its firmware and its software are designed to fit each other.

When the measurements say something should change, the loop runs again. The templates and tools that make each pass faster are published as open source.

Functional block diagram: schematic, layout, fabrication and assembly, bring-up, firmware, host software, test and data, with measurements feeding the next revision. REQUIREMENTS Schematic capture, review Layout stackup, impedance Fab and assembly BOM, sourcing Bring-up rails, clocks, scope Firmware C, drivers, DMA Host software C#, Python Test and data logs, analysis NEXT REVISION
Figure 1. Functional block diagram. Measurements from test feed the next revision of the schematic.

4Projects

Part numberDescriptionTypeStatus
carrillo-wpf-template A .NET 10 WPF starting point for hardware tools: navigation shell, MVVM, dependency injection, per-session logs, settings and tests. dotnet new carrillo-wpf creates a new app from it. Desktop Preparing release
ESP32S3-Starter ESP-IDF v6 firmware for the ESP32-S3-DevKitC-1: status LED, a command line over native USB, and JSON telemetry a desktop tool can read. Firmware In progress
Automate-BOM Looks up live stock and pricing for a bill of materials across DigiKey, Mouser and Newark, and writes a priced Excel workbook. Tool Preparing release
Altium project template New board projects that start with my design rules, stackups, title block and output jobs, plus a command that creates one. PCB tooling Planned

Repositories appear on GitHub as they are released.

A desktop app made from the WPF template: a navigation pane with the Carrillo Industries logo, and a Live data page showing temperature, pressure and flow readings from a connected device.
Figure 2. Typical application. A desktop tool made from the WPF template, showing live readings from a connected device (here the template's built-in simulated one).

5Design notes

Measure first
A claim about speed or noise comes with a number, and a fix comes with the measurement that proved it.
Write down the root cause
Every hard problem gets a short record: the symptom, the real cause, the fix, and what keeps it from coming back.
Record decisions
Design choices are written down with the alternatives and why they lost.
Version everything
Every release gets a version number and a changelog entry, and the version is stamped into the build.
Document while building
Docs are written alongside the work, while the reasons are still fresh.
Publish what helps
A tool that saves me an hour can save someone else one too, so it goes out as open source.

6Revision history

DateChange
2026-10-04Revision A of this page.
2026-10-03ESP32-S3 starter firmware 0.1.0: LED, USB command line, JSON telemetry.
2026-10-03WPF app template v0.1.0, with the Carrillo Industries brand.