After more than a decade of designing electronics and writing firmware, I'm convinced of one thing: the cleanest products come from engineers who refuse to draw a hard line between the hardware and the code that runs on it.
One system, not two hand-offs
When a circuit is designed in isolation and then "thrown over the wall" to a firmware team, small mismatches accumulate. A pin that's awkward to reach in software, a missing test point, an ADC reference that drifts under load — each is cheap to fix on the schematic and expensive to work around in code.
Designing both sides together lets me make trade-offs where they're cheapest:
- Move a function into hardware when timing is critical.
- Move it into firmware when flexibility matters more than speed.
- Add the test points and diagnostics that make production testing painless.
It shows up in the details
This is the mindset behind everything I publish here: schematics that respect the firmware, and firmware that respects the silicon. The result is products that reach series production with fewer surprises.
DE