Hardware
Boards for the gaps nobody fills
Eight open designs, all born on a gig — a DMX node that daisy-chains on one Cat5, a bridge that lets a control app you already own drive amplifiers it was never sold to talk to, a stage fan-out that rewires to any manufacturer's Cat snake with a screwdriver, a wireless-mic antenna pair remoted down a single Cat cable, a video mainframe, a mixing console computed in FPGA fabric, a coupler that quietly extends a cat6a run past spec, and a network video decoder that tells you its own IP address.
Where these actually are: designed, simulated and reviewed — not yet proven on a bench. Each board says exactly what has and hasn't been run on real hardware. We would rather you knew.
Or read a discipline in full: AudioVideoLightingNetworking & InfrastructureRF & Wireless
Audio · IP and USB to CAN bus converter
dbCANary
Rev A laid out · connector fixed, re-route outstanding
An IP and USB to CAN bus converter for use with the d&b amplifier ecosystem. It puts amplifiers that only speak CAN onto the network, so the control software you already run can discover and drive them - through hardware you can build yourself.
- Transparent bridgeNo interpretation and no extra protocol layer. The gateway is invisible to the control application, which is the entire point of it.
- Protocol solvedVerified against the real control software: it is discovered, it connects, and it drives the bus.
- Standard partsESP32-S3, W5500 Ethernet, ADM3053 isolated CAN. Nothing exotic, nothing unobtainable.
- Bench test rigA board self-test image, a test script that runs in simulation, and generated probe-point renders for bring-up.
Honest status
The protocol work is verified against real hardware, but the firmware has never executed on a board and rev A is not orderable yet. The USB-C connector was found placed 180 degrees out - and since the board is USB-C powered only, it could never have powered up as drawn. It has since been rotated and moved onto the board edge, which tore up the nets around it: 17 connections still need re-routing, and every fab package needs regenerating, before anything is made.


- MCU
- ESP32-S3
- Network
- W5500 Ethernet
- Bus
- ADM3053 isolated CAN, 100 kbit/s
- Role
- IP and USB to CAN bus converter
- For
- The d&b amplifier ecosystem
- Repo
- Private
Audio · 1U passive Cat-to-XLR fan-out
etherCON Stagebox Fan-out
Design complete · gerbers generated, nothing fabricated
A passive 1U fan-out: four etherCON in, sixteen XLR out on flying tails, four balanced channels per Cat run. The signal path is fully passive and DC-coupled, so phantom power crosses it untouched. Each unit is self-contained, so 32 channels is two of them and 48 is three - rather than one crowded chassis nobody can rack beside anything.
- One board, every system on the marketFour balanced channels on four twisted pairs is settled. Which channel lands on which pair, and which end of it is hot, is not - there are nine catalogued schemes and they are mutually incompatible. Here every XLR lands on its own three-way terminal block that is hard-wired to exactly one pair, so channel order is which tail you plug in where and polarity is which way round two wires sit. Both are screwdriver jobs, and neither touches the PCB.
- Five of the nine need no work at allThe hot position is fed from the even pin of every pair - which is exactly what the E in an AES72 type code means. Every E-type variant is therefore pure relabelling. The mixed types need three terminals swapping per port and the fully inverted ones four: about a minute with a screwdriver.
- Four screen islands, deliberately isolatedEach Cat run's screen is its own ground, meeting the star point only through its own lift link. There are no copper pours anywhere on this board, because one continuous fill would short all four together and still pass every continuity test you would think to run.
- A wrong pinout cannot scrap a boardThe map is in copper, but every degree of freedom that map fixes is undone at a terminal block. A mis-transcribed pinout costs a screwdriver, not a fab run - which matters, because half the published maps in this corner of the industry disagree with each other.
- Nothing to alignThe etherCONs are chassis-mounted and reach the board on a flying link, so panel-to-PCB registration - normally the thing that ruins a first build - simply does not apply.
Adapting it to somebody else's stagebox
The default build is wired to one convention. Every other system on the market is the same board with the tails moved, and for five of the nine catalogued types not even that. This is the whole build sheet:
| System | AES72 type | To build that variant |
|---|---|---|
| the sssnake Cat Snake | 1E | Nothing - this is the default build |
| Neutrik AES72 stagebox | 4E | Nothing but relabelling: same wires, different tail into each block |
| Whirlwind Catdusa | 1M | Three terminals reversed per port |
| Radial Catapult | no AES72 type | Three terminals reversed per port, channel order reversed |
| SoundTools CAT Box | 2O | All four terminals reversed per port |
Radial matches none of the nine because they number channels from the far end of the connector - it is Type 1M with the channel order reversed. Only a scheme that split one channel across two pairs would need different copper, and no catalogued type does that.
The nine types, every manufacturer's map, and what happens when you mix two systems
Honest status
Design complete, DRC clean, fabrication package generated - and nothing has been made. The real open risk is the pinout itself: the convention the default build is wired to is published nowhere by the manufacturer whose snakes it is meant to meet, so the map is community-sourced and passes the twisted-pair sanity check rather than having been metered. Put a meter on a real Cat snake before you make up sixteen tails. It cannot waste a board - a wrong map is a screwdriver fix - but it can waste an evening. The other hard requirement is the cable: the screen is the only pin-1 conductor, so on unshielded Cat phantom power cannot work at all.
- Format
- 1U, 4x etherCON in, 16x XLR out
- Channels
- 4 balanced per Cat run, 16 per unit
- Signal path
- Passive, DC-coupled - phantom passes through
- As built
- AES72 Type 1E; all nine types by rewiring
- Board
- 380 x 72 mm, 2-layer, all through-hole
- Grounding
- 4 isolated screen islands, one lift link each
- Cable
- Shielded Cat - mandatory, not advisory
- Repo
- Private
Audio · FPGA-native live mixing console
LOOM
DSP core bit-exact under Verilator
An open, FPGA-native live mixing console. 128 inputs, 64 buses, every channel strip computed in fabric at 96 kHz - speaking Dante, RAVENNA/AES67 and AVB/Milan simultaneously, with an x86 sidecar for VST3 hosting and NPU-accelerated ML audio.
- Everything in fabric128 in, 64 bus, 32-bit fixed-point Q4.27 with a 59-bit accumulator. No DSP chips to run out of.
- Three AoIP stacks at onceDante native on-die, AES67/RAVENNA and AVB/Milan in the PL - concurrently, not one at a time.
- Latency-aligned routingA full 192x64 crosspoint where any input reaches any output in the same sample count, whatever the route depth.
- Verified, not assertedA fixed-point Rust reference model pins the arithmetic, and the SystemVerilog is checked bit-exact against it.
- A smart layer that is optionalML feedback prediction and noise reduction on a Hailo-8, fed feature vectors computed in fabric.
Honest status
The fixed-point model and the biquad and TDM cores are built and verified bit-exact under Verilator. That is a long way from a console: no board exists, and nothing has run on an FPGA.

- Platform
- AMD Zynq UltraScale+ XCZU7EV (ZCU106)
- Channels
- 128 in / 64 bus @ 96 kHz
- Format
- Q4.27 fixed-point, 59-bit accumulator
- AoIP
- Dante + AES67/RAVENNA + Milan
- Local I/O
- 192 in / 192 out (analog, AES3, MADI)
- Repo
- Private
Video · NDI and SRT decoder
PineMarten
SRT path built · NDI licensing unresolved
Open decoder firmware for a commodity single-board computer: a stream in over the network, a picture out of HDMI, for a fraction of what a closed appliance costs. Web UI, OSC and AES70 control, mDNS, and a boot splash that tells you the IP address of the box you are standing in front of.
- It tells you where it isFrom power-on it shows its own IP address, hostname, link speed and why it has no picture yet. A decoder that explains itself saves a walk to the truss.
- Switches without a black frameThe splash and the video live on separate hardware planes, so a stream arriving is a visibility change - not a mode set with a blank screen in the middle of it.
- Fails over on picture, not handshakeA source is promoted when it delivers a frame, never when it merely connects. A connection carrying nothing is a failure that looks like a success.
- Hardware decode or a loud complaintSRT goes straight to the SoC's video unit. If the hardware decoder is ever missing, the firmware says so rather than quietly falling back to software and stuttering.
- One cablePower over Ethernet, or USB-C on a bench.
Honest status
No board exists yet. The SRT receive and decode path is exercised end to end against a real stream, but in software on a development machine - and the display backend has never been executed at all. Every performance figure is arithmetic from published specs, not a measurement. The NDI decode budget in particular is an estimate with a wide error bar. Bigger than any of that: the free NDI SDK licence appears to exclude fixed-purpose Linux appliances, which is exactly what this is - so whether the NDI half can ship at all is an open question for the vendor, not something the code can settle. SRT is unaffected.


- Platform
- Radxa ZERO 3E (Rockchip RK3566)
- Output
- 1x HDMI, 1080p60
- Transports
- SRT, NDI High Bandwidth, NDI|HX
- Control
- Web UI, OSC, AES70/OCA, mDNS
- Power
- PoE (802.3af) or USB-C
- Repo
- Private
Lighting · Art-Net / sACN to DMX512
nanODE
Board v0.4.1 · routing in progress
A PoE-powered, daisy-chainable Art-Net / sACN to 4x DMX512 node. One Cat5 in, one loop out - power and data - so a run of nodes needs a single cable from the switch, not one per box.
- 4 universes out5-pin XLR, from Art-Net 4 (including ArtSync) or sACN / E1.31.
- Real RDM discoveryRuns as a background task, so the web console never blocks on it.
- Daisy-chain built inInternal 3-port switch: Cat5 in, loop out, plus the ESP32 itself.
- Field-replaceable portsEvery external connector is a daughter-card. Smash an XLR on site, swap it without a soldering iron.
- Browser consoleOver WiFi or Ethernet - patch, address, and see RDM devices live.
Honest status
Firmware builds clean against real ESP-IDF 5.5 tooling, and the REST API and RDM discovery are verified against a mock node - but this has never run on real silicon. The board render predates the current layout.


- MCU
- ESP32
- Network
- Internal 3-port switch, PoE
- Outputs
- 4 x DMX512 on 5-pin XLR
- Protocols
- Art-Net 4, sACN / E1.31, RDM
- Enclosure
- Aluminium extrusion, laser-cut acrylic ends
- Repo
- Private
Infrastructure · Inline 10GBASE-T regenerator
etherCON 10G PoE Repeater
Feasibility closed · schematic capture
An inline, fanless Layer-1 10GBASE-T repeater with managed pass-through PoE, built into a shell the size of a Neutrik NE8FF feedthrough. Its job is to reset the 100 m cabling budget so a cat6a run can be extended past spec by dropping a unit in mid-run.
- Not a booster10GBASE-T can't be analog-amplified. The link is fully terminated in a PHY and re-transmitted, which resets the distance budget and hands the far end a fresh eye.
- Invisible to the networkNo MAC, no switch fabric, no store-and-forward - so it is transparent to L2/L3 and, critically, to PTP. It looks like a slightly longer cable.
- PoE passes through, managedAn 802.3bt PD front-end feeding an 802.3bt PSE, so power crosses the joint under supervision rather than by accident.
- Fits the shell it has to fitTwo AQR113C PHYs host-to-host over fixed 10G XFI on a ~119 mm board, inside a finned extrusion the size of the coupler it replaces.
Honest status
Electronics feasibility is closed with margin and the thermal budget is written down. The KiCad project has both PHY sheets wired, but the remaining risk is mechanical fit - and no board has been made.
- PHYs
- 2x Marvell AQR113C, host-to-host XFI
- Rate
- 10GBASE-T, fixed 10G
- Magnetics
- Bel 10G PoE MagJack
- Power
- 802.3bt PD in, 802.3bt PSE out
- Board
- ~119 mm, NE8FF-size finned extrusion
- Repo
- Private
RF & wireless · Antenna pair over one Cat cable
UHF Pair Extender
Front-end board placed · routing next
Remotes a wireless-mic receive antenna pair over a single shielded Cat cable. Filtering, gain and line drivers at the antenna end; balun, slope equalisation and a matched step attenuator pair at the rack end. 470-698 MHz, A/B diversity preserved, one cable instead of two coax runs down the side of a stage.
- Diversity stays diversityEach antenna gets its own individually screened pair. With a single overall screen, pair-to-pair crosstalk at 500 MHz is 30-40 dB, which couples antenna A into B and destroys the independence the receiver's diversity logic depends on - silently.
- Noise figure is the whole design0.97 dB system noise figure at any attenuator setting, because the step attenuator sits after the line driver rather than mid-chain. The same parts mid-chain give 11.8 dB.
- The preselector is split on purposeLow-loss filtering before the first LNA, where its 0.46 dB lands directly on noise figure; the lossy LTE traps after 20 dB of gain, where 3.3 dB costs a hundredth as much. Worth 2.8 dB of sensitivity for no extra parts.
- No AGC, everReceivers derive squelch thresholds and diversity decisions from absolute RF level. Gain is measured once at commissioning and then frozen. A running loop that holds a target level is a defect here, not a feature.
- Power gets its own pairWideband UHF transformers rate around 30 mA and the head needs roughly 200 mA, so the DC feed rides the one pair that is split at the connector and therefore useless for signal anyway. Never parallel two pairs for one RF signal: cable delay skew puts comb nulls inside the passband.
Honest status
Three boards, and the one being built first is not a product. The front-end characterisation board is a single-channel test board that exists to decide whether either production board works, because it can be measured with a VNA and one receiver - its schematic is ERC-clean and all 43 footprints are placed, but it is not routed and nothing has been fabricated. The head unit's schematics are roughly 80% drawn; the rack unit is an empty project. Every figure quoted above is a budget computed from datasheet numbers, not a measurement, and the point of the first board is to find out which of them are true.
- Band
- 470-698 MHz, A/B diversity
- Cable
- One S/FTP Cat run: 2 RF pairs, 1 DC, 1 RS-485
- Front end
- Split preselector either side of the first LNA
- Gain block
- QPL9547 LNA, TCM2-33WX+ balun
- Level control
- PE4312 step attenuator, both channels one control word
- Boards
- Head, rack, and a front-end characterisation board
- Stack-up
- 4-layer, impedance controlled, 50 ohm microstrip
- Repo
- Private
Nothing under that heading yet. .
More hardware
There's a queue behind these
A touring control surface for the desk. A bespoke surface for the dMix 128. An in-house PCB assembly line so these stop being quotes from someone else. They are at various stages of not-being-finished, and they surface here as they get close enough to show.