PEN V
BACKGROUND V
Currents
or drop a .pcap / .pcapng anywhere
live 802.11 → organism
first time? flash an ESP8266, then connect it
– fps? for help
recreation of Bleuje’s interactive-physarum · parameters from mxsage’s “36 Points” · CC BY-NC-SA 3.0

⚡ Install Motoko radio-pipe firmware

Writes the Motoko radio-pipe firmware (266 KB) to an ESP8266 / D1 Mini over USB, using esptool-js + Web Serial. Once it's flashed, hit 🛰 connect receiver and this piece visualizes the 802.11 frames it hears — strictly read-only.

The firmware is a promiscuous radio pipe: it ships inert and bundles no attack tooling, and this site only ever reads from it — but the firmware itself is transmit-capable (a host program can drive it to send 802.11 frames). Install it only where you're allowed to.


  

Needs a Chromium browser (Chrome / Edge / Brave) with Web Serial, over HTTPS or localhost. Demo Mode and read-only visualization never touch this gate.

Motoko-Retia · making the unseen visible

a browser recreation of Bleuje’s interactive-physarum, fed by Wi-Fi packet entropy

Millions of agents deposit and follow trails; their four classic physarum parameters are modulated by the sensed trail value (mxsage’s “36 Points” technique). A pen area around your cursor carries a second parameter set, spatially blended into the background set — move it around to morph the organism.

Mouse

moveposition the pen (parameter blend area)
dragpush particles (displacement bias)
clickcircular particle spawn
right clickscatter spawn near pen
middle clicktrigger wave
wheelpen size

Keyboard (same as the original)

← →change Point of selected layer (with 0.5 s transition)
↑ ↓select pen / background layer
R, Spacerandom points
Sswap pen ↔ background
D / Fcircular / scatter spawn
X / Cpen size − / +
Wwave
Acolor mode
Pshow/hide pen circle
Hhide / show the menu (clean view)
[ ]previous / next packet mode
Ishow/hide the mode caption
0–9jump to Point A–J
Nreset particles

Touch

dragmove pen + push particles
tapcircular spawn
2-finger tapwave
pinchpen size

Gamepad (original was built for one)

Left stick: pen · Right stick: push particles · L2: inertia · D-pad: points · A/B: spawns · X: swap · Y: color · LB/RB: pen size · R-stick click: wave · Back: random.

📡 Wi-Fi entropy (live receiver + PCAP)

Two ways to feed the organism the radio around you. 🛰 Connect receiver links a Motoko radio-pipe (an ESP8266 running the passive sniffer firmware) over USB and plays the 802.11 frames it hears live, in real time — for an ongoing installation, just leave it connected. Or load / drop a .pcap / .pcapng capture to replay one. No hardware handy? Demo drives live mode with synthetic packets so you can rehearse.

Don't have a receiver yet? ⚡ Flash a receiver writes the firmware to a bare ESP8266 / D1 Mini straight from the browser (esptool-js + Web Serial), then connect it. The radio-pipe firmware ships inert and this piece only reads from it, but it is transmit-capable, so install asks you to affirm authorized use first.

Either way, every device gets a stable identity from its MAC hash — a home position, a color, and its own perturbation direction on the 15-parameter matrix. With follow on, the pen wanders on its own while your mouse is idle; the influence slider sets how hard the radio bends the organism. G pauses PCAP playback.

Modes — ten ways to read the same air

The row of icons at the top of the 📡 panel switches how packets become art (each also brings its own color palette). Try them under Demo — the synthetic feed exercises every one. A short caption at the bottom names the current mode's rule (dismiss with I or ×). Use ✎ curate to hide the modes you don't want (it remembers your set), 🙈 hide menu (or H) to hide the whole menu for a clean view — press H again to bring it back — and [ ] to flip between modes hands-free.

🌊 Currentsdata traffic flows as currents across the canvas; deauths are squalls, probes scatter. The default.
🌡 Presencesignal strength dominates — the organism blooms toward whoever is physically near.
ConstellationAPs are stars; a probe lights its network's star; data draws links; deauths are shooting stars.
🎛 SpectrumWi-Fi channels become colored horizontal lanes; busy channels glow brighter.
💓 Pulsetraffic accumulates into a heartbeat; busy air beats faster and the field breathes.
🚨 The Jammera deauth flood is an attacker — the swarm scatters, a red pathogen blooms. Broadcast deauths hit hardest.
🐋 Airtime Baronsairtime claimed (Duration/NAV) becomes mass — a 4K stream grows gravitational; a sensor stays tiny.
🎵 Metronomes & Jazzperfectly-timed machine traffic crystallizes into rigid lattice; bursty human traffic stays turbulent.
🏷 Maker's Marksthe MAC's OUI sorts the swarm into species (Apple, Espressif, …); randomized MACs drift as grey ghosts.
📍 Room of Bodieswith the 3-adapter rig, devices are placed in the physical room by signal strength and drift as people move. (Demo simulates the rig.)

🛰×3 — three receivers, no scanning. One receiver must hop channels and misses ~90% of the air; three parked on channels 1/6/11 capture the whole 2.4 GHz band continuously. Click 🛰×3 and pick three Motoko boards in turn. For Room of Bodies localization specifically, spread the three receivers apart on the same channel instead — position is triangulated from how loud each hears a device (rough by nature — the shimmer is the art).

The receiver link is read-only: the piece only ever reads the frames the radio hears — it never transmits, injects, or attacks. Live capture needs a Chromium browser (Chrome / Edge / Brave) with Web Serial, over HTTPS. Console API: physarum.loadPcapBuffer(buf, name), physarum.connectReceiver(), physarum.connectRig(), physarum.startDemo(), physarum.setMode('metronomes').

Credits: interactive-physarum by Etienne Jacob (Bleuje), technique & parameters from 36 Points by Sage Jenson (mxsage). See Bleuje’s explanation article. License CC BY-NC-SA 3.0.