open source hardware logo

open / innovation  |  learning  |  mentorship

       

schematic & pcb design  ·  microcontrollers  ·  fpga / mpsoc  ·  3d printing

kicad  |  orcad  |  allegro  |  pic  |  avr  |  msp430  |  esp32  |  stm32  |  micropython  |  pi pico  |  zynq  |  mpsoc  |  openocd

projects

multidrop uart

Low-complexity shared bus with device discovery, address resolution, GPIO, and ADC over RS-422. Includes Python-based UART validation tooling.

rs-422 uart python embedded
battery & power systems

Li-ion charger circuits (LiFePO4, NMC/NCA), USB power monitors, and switched USB devices. Focus on safety, thermal management, and efficiency.

lifepo4 usb power electronics
circuitpython experiments

Toolless code distribution for embedded hardware. Open-source battery management firmware with frictionless device customization.

circuitpython micropython bms
obd rpi tesla

Pi Zero 2W dashboard and logger for Tesla Model 3 CAN via OBDLink Bluetooth - live web UI, signal decode, and optional Home Assistant hooks.

raspberry pi can obd python

writing

guide hardware
usb type-c and power delivery

A look at USB PD 3.1, the spacing implications of pushing 48 V through Type-C connectors, and whether the complexity of "one connector to rule them all" is worth it.

project fpga
mpsoc loader - ps/pl bare-metal

Lab-first Zynq UltraScale+ stack: OCM-only A53, JTAG console, OpenOCD PL load across MPSoC fabric variants, and named pin control - without Vitis.

project embedded
stm32 loader - one uart, three jobs

STM32G0 bootloader on a single USART: jump or stay, reload the app over a framed bus, and reconfigure the same wire to program blank parts via the ST ROM path.

project llm
home agent

Chat front door for the house - local LLM first, cloud when needed, Home Assistant skills, and a Telegram-style demo on the page.

project ui
padd - lcars tablet on the lan

Kitchen tablet LCARS shell: Fastify host, live status, notes, Toronto weather, and a clickable demo of the rail and themes.

project eda
ipc-2581 parser - board as a database

Query manufacturing XML without opening CAD: nets, placement, rev diff, MCP, and a canvas inspector you can pan on this page.

project motion
rp2040 foc servo - tune it from the browser

DRV8311H closed-loop FOC with the loop on Core 1, plus a simulated tuner for arm, gains, and step metrics.

project llm
hatch - a mind in a folder

Folder-backed mind loop: dual S1/S2, dreams, incubator, and a dashboard sim on the page.

project aoi
lumen - looking at circuit cards

Macro inspection on circuit cards: tiling, focus stacks, a digitally addressable ring light, manual polarization, and a capture vs process view.

about

peter hill

electrical designer & embedded hardware engineer

Professionally building complex, high-reliability hardware and embedded systems: schematic and PCB design, architecture, and technical review.

Outside work, still hands-on across the stack - microcontrollers, power electronics, batteries, FPGAs / MPSoC, home automation, and 3D printing.

Recent projects include a Vitis-free Zynq UltraScale+ bare-metal loader (PS/PL bring-up over OpenOCD on Kria), a single-USART STM32G0 bootloader for app reload and blank-target programming, a Pi Zero Tesla Model 3 OBD/CAN dashboard, a local-first home agent, an LCARS PADD for LAN tablets, an IPC-2581 query/viewer stack, an RP2040 FOC servo with a browser tuner, Hatch, a folder-structured mind with an LLM loop, and Lumen, macro AOI on assembled circuit cards (tiling, focus stacking, digitally addressable lighting).

Also working through multidrop serial buses, Li-ion / LiFePO4 power systems, CircuitPython experiments, and the messy reality of USB Type-C / Power Delivery at higher voltages.

Exploring LLMs, offline inference, and RAG tooling where they help the lab and the house - and sharing designs, write-ups, and a passion for the craft.

  linkedin