Flockinator - a microscope for emergent behaviour

No hardware? Run the virtual wall

You can try the whole rescue exercise without soldering, wiring, or buying panels.

The virtual wall is a software-only version that runs on your laptop. It shows the same panel animations, the same shared rescue scene, and the same team scores you would see on the physical wall. It is useful for learning how coordination breaks down, for checking a published dataset, and for preparing before you build.

What you get

With only a computer you can:

You do not need LED panels, controllers, power supplies, or printed parts for any of this.

What is simulation here

Be clear about this: the virtual wall is simulation.

The quadcopter scenario is a visualisation on a shared virtual world plus the panel wall. It is not a flying aircraft. The scored results are host replay, not on-node measurement.

When a result says verified, that means label segregation, not crypto proof. In plain terms: the checking system keeps test labels separate so scores are not mixed. No planner has passed full gates yet.

This honesty matters because rescue work depends on trust. What looks smooth on screen may still struggle with real light, sound, and radio friction.

What you can do software-only

  1. Check the reproduce path. This confirms your Python, container, and files match.
  2. Run host simulation. This steps through a seeded rescue drill on your computer.
  3. Watch panels in your browser. This shows the 64x64 animations as the web page would show them.
  4. Replay a dataset. This replays sealed journals and scores from the 15 pre-registered experiments, including clear messages at 72.9% team success, silence / private at 56.6%, and corrupted at 33.6%.

Datasets are hash-linked, redaction-scanned, and shareable. The loop is the same each time: run a seeded drill, save sealed journals and scores, review in lanes, change the setup, and re-run. Hypotheses are written down first, scoring is held out, and failures are published.

What still needs real hardware

The virtual wall cannot show you:

If you later build, node firmware builds with:

pio run --project-dir firmware/node-platform -e waveshare-s3

Check the repo docs for handheld and Korvo build flags. Korvo uses pinned ESP-IDF 6.1. Use Python via uv only. Identity is provisioned per device privately with tools/node-commissioner.

Start in three steps

You need only a recent computer with container support and uv for Python.

  1. Verify your setup

Run:

tools/reproduce/run.py --verify

Run it through uv. This is the starting check. It tells you if files, Python packages, and the reproduce container are ready. Fix any message it shows before you continue.

  1. Open the browser preview

Start the node-commissioner preview. It serves on 127.0.0.1:8766.

Open http://127.0.0.1:8766 in your browser. You should see panel animations and the shared scene. This is simulation on your host, not light from a physical panel.

  1. Run a seeded host drill

Pick one seeded drill from the preview page and run it end to end. Save the journal and score files it produces. Keep them sealed, meaning do not edit them by hand after the run.

Check the repo docs for exact launch flags for your system.

Replay a published dataset on screen

  1. Download one shareable dataset link from the results page.
  2. Load it in the preview server at 127.0.0.1:8766.
  3. Watch the same steps the rescue team took: messages sent, pauses, retries, and final outcome.
  4. Compare your replayed score to the published score. They should match, because this is host replay.
  5. Read the pre-registered hypothesis for that run, then look at failures too, not only successes.

This is how to use the headline numbers responsibly. They came from host simulation replay, not from on-node testing.

How to read what you see

Use the virtual wall to learn, to ask better questions, and to decide if building the physical wall is worth it for you.

Source in the repo