I build hardware, software, and ML products from the ground up.
I'm an Information and Computer Engineer based in Cambridge, UK. My work moves between PCB design, firmware, desktop apps, developer tools, and edge AI systems. I like projects where the hardware constraints shape the software, and where the software makes the hardware easier to inspect, debug, and use.
- Founder of elektroThing
- MEng from the University of Cambridge
- Open-source hardware, local-first AI tools, desktop apps, and embedded systems
| Project | What it is | Links |
|---|---|---|
| Spark Analyzer | Open-source USB-C PD analyzer and programmable power supply built on ESP32-C3. It can set custom voltages, monitor current draw over WiFi/BLE, and help debug USB-C power behavior without guessing. | Site · GitHub |
| Tracer | Ultra-low-power IMU tracker for wearables and motion sensing. Designed around long battery life, compact hardware, and TinyML-ready firmware. | Site · GitHub |
| Plant-Bot | Solar-powered plant monitoring and automated watering system with capacitive soil sensing, environmental monitoring, WiFi alerts, and a pump driver. | Site · GitHub |
| FLORA | Solar ESP32 garden weather station with LoRa, soil moisture sensing, temperature/humidity monitoring, and long-range reporting for remote gardens. | Site |
| DS-Pi | RP2040 audio DSP board with an audio codec, headphone amp, and prototyping-friendly I/O for effects and signal-processing experiments. | Site · GitHub |
| Project | What it is | Links |
|---|---|---|
| codekeep | Terminal roguelike deckbuilder built with Ink/React. It reads local git history and turns development activity into game state. | Site · GitHub |
| ollamacode | Offline AI coding CLI powered by Ollama. It can work with files and commands directly without cloud API keys. | Site · GitHub |
| afkode | Frameless terminal overlay with a global hotkey, tabs, shell configuration, and cross-platform desktop packaging. | Site · GitHub |
| dot | Menu bar desktop pet built with Tauri v2 and Rust, with local persistence, achievements, and a small canvas UI. | Site · GitHub |
| Trinkt | Social web app for sending procedurally generated art to friends, built around small private gestures rather than public metrics. | Site |
| Area | Focus |
|---|---|
| Embedded systems | PCB design, firmware, power budgets, sensors, ESP32, RP2040, STM32 |
| Product software | TypeScript, React, Next.js, Electron, Tauri, CLI tools, desktop workflows |
| AI & ML | Edge AI, TinyML, OpenCV, PyTorch, TensorFlow Lite, local model tooling |
| Product development | Documentation, crowdfunding, small-batch hardware, usable interfaces |
- Embedded: STM32, ESP32, FreeRTOS, LoRaWAN, BLE
- Hardware: KiCad, Altium, Fusion 360, 3D printing
- Software: Next.js, Electron, Tauri, Docker, CI/CD
- Data: Pandas, NumPy, SciPy, scikit-learn




