Login
Interactor
Login

Interactor lets students compete and collaborate through code they write themselves. Each student programs a BeagleConnect Zepto, a microcontroller board (a whole small computer on one chip) about an inch square. The boards then plug into a shared game board, where their code plays against or alongside each other's in real time. Nobody holds a controller. What happens is decided by the code each student wrote beforehand.

Why it's here

Many school robotics clubs give students a robot that's already built and programmed, and leave them only the last bit of wiring and setup. Often the result is a remote-control car. Interactor asks students to write the behaviour themselves, and then to watch it meet other students' code.

It began as a proposal to Northville schools, to be carried out together with their teachers and students (The_Interactor.pdf).

Interactor is one project in a program, a group of projects run by the same maintainer. The projects share a workbench called OCX, where AI agents and people build and test code. The research for Interactor drew on complexity theory, the study of systems with many interacting parts and the ways they fail. That research shaped the rules OCX is built on: its core axioms and values. A talk, the Mechanical Turk presentation, introduces those ideas, and its final demo runs on code kept here. The Big Picture page shows how all the projects fit together.

What it's made of

Today the code builds demos with two of BeagleBoard.org's boards: BeagleBadge, a wearable Linux board with an e-paper screen, and BeagleConnect Zepto.

How it's shaped

What success looks like

Each item links to its evidence: a forum post or a check-in (a recorded change in the repository).

  1. The analyzer shows real traffic. Done: on BeagleBadge at 100 kHz (post, check-in).
  2. BeagleConnect Zepto answers as an I2C target on hardware. Not yet: the firmware builds and passes its tests on a PC, but hasn't run on a board (TODO.md).
  3. The Mechanical Turk demo runs end to end. A BeagleConnect Zepto plays snake moves for BeagleBadge, with the analyzer watching. Not yet: the snake firmware builds and passes its tests, but hasn't run on hardware (MechanicalTurkDemo.md).
  4. Supercon add-on. BeagleConnect Zepto plays snake as an add-on for the Supercon 2026 conference badge. Built, not yet on hardware (check-in).
  5. Several students' boards play one game. Not yet.
  6. A classroom session with Northville teachers and students. Not yet.

The Status page says where the work stands today.

The virtues behind it

Like every project in this program, Interactor follows the four virtues of OCX:

The original proposal

The text below is the proposal as first written, kept for its history.

What is it?

A kit for building a setup for seeing several students code interacting in real-time, providing physical presentation, but minimizing complex physical world factors.

Provides environment for:

Background

Beagle has recently launched a $1 development board with 128KB flash and 16KB RAM about the size of a postage stamp and compatible with 1,500 mikroBUS add-on boards and 100s of QWIIC add-on boards called "BeagleConnect Zepto". There is an on-line competitive coding environment called "BattleSnake" (https://play.battlesnake.com/) that pits multiple snakes against each other where "code is the controller". I think putting your code on a Zepto board and bringing it to a system that will "battle it out" between multiple users where they cannot control it themselves, but instead have to have written code to handle the various conditions could be very inspirational.

Of course, I think there is a major personality bias when it comes to creating something that is purely competitive, but this is just to draw a picture for you. The objective could also be collaborative, like creating music or drawing a picture. I have specific implementations in mind, but want to get the conversation going before I get too far.

Videos

Watch The Classroom Coding Future

Watch The Phases of Play