back
user profile

mikeayles

396karma·75submissions·November 25, 2025
about
I build complex technical tools, from automated hardware development pipelines to raycasting engines in CAD software.

The DOOM on Engineering Tools Series:

OpenSCAD-DOOM: Raycasting in a parametric CAD language, now playable in browser. (The Register)

KiDoom: DOOM rendered on PCB traces. #1 on HN. (The Register, Hackaday)

ScopeDoom: Vector rendering on an oscilloscope via audio DAC. #1 on HN. (The Register, Hackaday)

The Serious Work:

Phaestus: Compiler for physical products. Generates schematics, PCBs, enclosures, and firmware from natural language.

Bitwise-MCP: MCP server for embedded systems. Indexes 1000+ page reference manuals with hybrid keyword/semantic search.

TOKN: Token-Optimised KiCad Notation. A compact encoding format that reduces schematic token count by 92%, enabling LLM circuit generation. Includes benchmark suite comparing model performance on hardware tasks.

Engine Simulator: Thermodynamic diesel engine model at 0.1° crank resolution, vanilla JS in browser.

I specialise in solving "impossible" technical problems and shipping validated products.

mike@mikeayles.com | mikeayles.com

recent activity (75 total)
comment
https://mikeayles.com Mainly electronics, kicad and other nonsense
7mo ago·view thread
comment
For AI designed schematics, you need to check out flux.ai (and quilter for layout), I don't have anything to do with this, i'm a little jealous tbh, but having used it, it's not for me …
7mo ago·view thread
comment
Yep, exactly. I'll do another blog when I have a little more to show, but the concept is, everything is on a grid of 12.7mm squares, where there is a common bus running through north-south. The b…
7mo ago·view thread
comment
I think we are targeting different ends of the market, but I'm trying to do a full product development pipeline end to end. PCB, enclosure, peripherals, firmware. https://github.com&#x…
7mo ago·view thread
comment
Most washing machines use a wax motor to lock the door, it heats up wax to cause it to expand when it melts, which drives a pin. They're fairly failsafe as if you kill power, they will open no ma…
7mo ago·view thread
comment
Well thanks for that rabbit hole. I was hoping the dingus was the actual term, but sadly not. For anyone needing some pub quiz trivia, a lower case g has the top half which is called the bowl, the bit…
7mo ago·view thread
comment
Have you checked out circuitsnips and kicanvas?
8mo ago·view thread
comment
I'm currently working on something that lets you describe a hardware product in plain English and get actual manufacturable files out — PCB, enclosure, firmware, the lot. Very early days still. W…
8mo ago·view thread
comment
Thanks very much. ScopeDOOM definitely has potential, I need to work on the occlusion logic to clean up the display, whilst it's not particularly visible on the demo, I did actually use distance …
8mo ago·view thread
comment
This isn't using the KiCad socket API, although it probably would have been cleaner. It's a bog standard Plugin that should work for v6+. I'd be keen to have a look at your s-expr libra…
8mo ago·view thread
comment
Author here: I pulled inspiration from this port to a vectrex: https://www.youtube.com/watch?v=VuVnoqFF3II , there is a wayback machine link to the authors writeup credited in my write…
8mo ago·view thread
comment
What an honour, thanks
8mo ago·view thread
comment
So the reason everything is on one net is so kicad doesn't need to calculate a ratsnest/air wires. As for the drawing, we pulled the vectors as a list from the C, and used a painters algo an…
8mo ago·view thread