Independent developer project · not affiliated with, endorsed by, or sponsored by BrainChip Holdings Ltd. Akida and AKD1500 are their trademarks.

Demo 02 — Physical mapping, with negative controls

Map every variant onto a real AKD1500 with random weights. The two variants that must fail are the proof that the check works.

OUR OBSERVATIONEvent 2026-08-26Published 2026-09-27SE Inspect build 1.9.37

Needs: Pi 5, at least one AKD1500 (Demo 00 green), runtime environment. Stop the service first so the card is free: sudo systemctl stop vorsa.

Environment: source ~/akida-env/bin/activate.

Run

python3 tools/check_single_pass.py

Output we got (2026-08-26, firmware BC.A1.003.009, MetaTF 2.19.3)

Variant Input Grid Cell Sequences Passes AllNps NPs used Free Result
V2 224 px 14×14 16 px 1 1 29 5 27 PASS
V3 160 px 10×10 16 px 1 1 32 4 28 PASS
V4 224 px 28×28 8 px 1 1 23 14 18 PASS
V5 256 px 16×16 16 px 1 1 32 5 27 PASS
V6 256 px 32×32 8 px 1 1 28 18 14 PASS
V2-M1 224 px 14×14 16 px 1 1 30 5 27 PASS
V2-M2 224 px 14×14 16 px 1 1 32 5 27 PASS
X-gross 224 px — — — — — — — FAIL ✓
X-px320 320 px — — — — — — — FAIL ✓

Each PASS means: len(akida.devices()) used = 1; model.map(device, hw_only=True) without exception (no layer falls back to the CPU); len(model.sequences) == 1; hardware backend; NP demand ≤ 32; one pass per frame.

The two X variants are deliberate: X-gross has a 512-channel head input, X-px320 a 320-px input. Their failure messages are where the hardware limits on the Mapping page come from:

Limit Message from model.map
input edge ≤ 256 px maximum input second dimension size is 256
input layer ≤ 64 filters num_neurons should be set between 1 and 64
head input ≤ 256 channels Filter size is too big to fit in a CNP

If an X variant ever passes, the checker is broken and no PASS above means anything.

Proves

That the chosen architecture fits one card in one hardware pass, and that capacity is not the bottleneck (V6 leaves 14 of 32 NPs free); the binding limit is the 256-px input edge.

Does not prove

Detection quality. Random weights map exactly like trained ones; this demo is about the shape, not the function.

Failure modes

RuntimeError: no device → Demo 00. hw_only=True exception on V-variants → different firmware or MetaTF version than the one recorded; record yours and compare. Running while the service holds the cards → stop the service first.

Time: 5 minutes.