The Magazine
The robot is forty years old.
I was in the first grade, the 1986-87 school year. I was at the Watson public library in Braintree, south of Boston, reading a Boy's Life magazine, and it had an article about how to build your own robot. It was silly. An upside-down trashcan for the body, arms of corrugated vacuum cleaner hose, and the rest of it switches, lights and motors, on a little wheeled drivetrain. Motors and switches, no brain, but a real build, and that has stuck with me my entire life because I've always wanted to build a robot. Little things along the way, Bicentennial Man and I, Robot, but it's that one page that has been in my head for 40 years. The issue is real. February 1987, Boys' Life, the cover story: “Build Your Own Robot,” by Tom Carroll. The robot had a name: GIS-MO2BL. Its drivetrain was the gearbox out of a Milton Bradley Big Trak, and the motor supplier later told Carroll that 27,000 kids built one. I was not one of the 27,000. I read it in a library, and it stayed.
Want to build one?
The plans are still out there. The Old Robots keeps the original 1987 GIS-MO2BL build article, scanned as a PDF.
The page stayed theoretical. The hobby was real: a Flipper Zero owned for years, NFC implants in both hands, a ring whose Bluetooth protocol I reverse-engineered in May. But all of it stopped at the case. I had flashed firmware onto other people's hardware; I had never wired a circuit from bare pins or built the firmware from source. The robot head existed as a repository in my closet, a shell 75 by 80 by 70 millimeters, waiting on parts. What it did not have, until this month, was a path from drawing to desk.
Then, on October 2, Meta released a piece of software, and the page from 1987 acquired a doorway.
The socket
The software is called the Muse Gadget SDK, and it is an odd artifact for a company of Meta's size to ship. Muse is Meta's personal AI agent, launched September 8, 2026. The SDK, published on GitHub on October 2, is the agent's hardware socket: flash a supported board, pair it through the Muse app, and the device becomes a terminal, its screen, speaker, microphone and sensors reachable by an intelligence that lives somewhere else entirely.
Meta frames it as a side project, built by hackers, for hackers. Every directory contains an AGENTS.md written for AI coding agents, so a builder can point a machine at the repo and let it do the porting. Meta's own gadget, the Home Link, is a sealed dongle bridging Muse to a home network; Meta made 5,000 to give away to United States subscribers. It runs only official firmware. It cannot be reflashed.
The open SDK can be. That asymmetry is the whole ballgame.
Asked what changed that weekend, after months of circling the idea, I gave the shortest answer of the interview: “Meta Muse Gadget SDK was released.”
The weekend's first recorded act came at 1:08 on Sunday morning: the SDK token, into my secrets vault. By evening I was ready to build the first sense: a mouth.
Concept · The terminal and the mind
This is the inversion the whole piece turns on. A gadget built on the SDK is a terminal: screen, speaker, microphone and sensors on the desk, intelligence somewhere else. The graveyard section is what happens when “somewhere else” is a startup's cloud. The closet section is what happens when it is yours.
Night one: a voice and two lights
On the evening of Sunday, October 11, 2026, in my apartment in Quincy, Massachusetts, a little pile of circuit boards and jumper wires played “Jingle Bells.” It was not much to look at. An ESP32 board wired to a small speaker amplifier and two loose LEDs. The music was a 39.5-second public-domain recording, piped in over Wi-Fi at volume 90. As it played, the two lights took turns fading, red, green, red, green. All of it commanded remotely, from a laptop. I have flashed images onto gadgets for years. I had never built the firmware myself, for a board I had wired myself, and watched it run.
I'm Nic Lydon; I work in security in Boston, and gadgets have been a hobby all my life. This was the first and deepest I had ever gotten into building them from the pins up. Asked whether that little show was really the peak of the first day, I did not hesitate.
“Oh, absolutely. The two different LED lights working with like slow fades to the jingle bells tone. I honestly think I might've like sat up in my seat a little bit and was like, holy shit, like I just typed something into AI on my computer and there's a little pile of chips and wires making lights and noises!”
The first Herald was assembled on a Seeed XIAO ESP32-S3, a board the size of a postage stamp; the SDK shipped no definition for it, so one was written that day. By evening it had paired with Muse, joined the Wi-Fi, and been given its name. Herald. Nickname: Hal. It got a speaker on an NS4168 amplifier module, two RGB LEDs, and firmware that let it be managed entirely over the network. I fired the Jingle Bells show. I sat up in my seat.
Then, at about 11:55 p.m., the gadget got its voice: ElevenLabs text-to-speech, and Herald spoke its first words in the voice called Eric.
I wear a Looki pendant, a lifelogging device that narrates my day, and its account of that Sunday evening runs seven hours and thirty-eight minutes under the title “A Productive Late-Night Deep Dive into Hardware and Code.” It places me on a gray sofa with a Raspberry Pi Zero, a camera module, an ESP32 board and an I2S amplifier, jumper wires in hand, while the system I was building “vocalized status updates over Wi-Fi.” In the background: stand-up comedy, then The Twilight Saga: Breaking Dawn, Part 1. Beside me, asleep through the birth of the fleet, was Carbon, my cat. The pendant logged breadboard work at 11:04 p.m., me still going at 1:49. At 2:01 I was resting on the sofa.
Earlier that Sunday, the pendant's trail runs to a hospital in Milford, where I picked up my mother and drove her home. Its recap of the whole stretch was titled, in six words: “From Hospital Halls to Hardware Hacks.”
My body kept its own ledger, a WHOOP strap. Sleep performance across the three nights: 52 percent, then 27, then 66. Recovery on the three mornings: 53, then 32, then 57, the middle night just three hours and forty-one minutes long. I built Monday's fleet on a 32 percent recovery morning. The formula, given without embarrassment: “I'm a nerd. I'm autistic. I have ADHD, and there's nothing with electronics that I have never conquered, and I had several AI tools at my disposal and a three-day weekend and several cans of Celsius.”
The three days
Timeline · Oct 11–13, 2026
- 01:08The SDK token goes into the secrets vault. The weekend's first recorded act.
- DaytimeA hospital run to Milford to pick up his mother and drive her home. Looki titles the stretch “From Hospital Halls to Hardware Hacks.”
- 19:13The bench: laptop open, a XIAO ESP32-S3 wired beside it. The SDK ships no definition for the board, so one is written that day.
- 19:47Herald is alive on the carpet: red LED lit, antenna up, running off a power bank. “Jingle Bells,” 39.5 seconds, two lights fading in turn.
- 21:13The microphone module goes in, rainbow wires and all. The ears arrive the same night as the mouth.
- 23:55Herald speaks its first words, in the ElevenLabs voice called Eric. Sleep performance that night: 52%.
- MorningMarquee, a four-panel red LED matrix, gets its name after “Ember” collides with the battery backup. 145 drawings rendered server-side; a Pac-Man animation eats the text backwards until the mirrored frames are flipped.
- Small hrsFlint is born on a Raspberry Pi Zero 2 W: a native renderer drawing a cinematic operations-room display about the homelab.
- EveningPane's firmware runs 1.0.0 to 2.6.0 in 101 minutes of commit timestamps: face mode, notify mode, touch, weather, a countdown, and Nova's animated avatar at 2.2.0.
- EveningLocket is wired, flashed, and dark. The detective story begins. Flint dies during a deploy, driven by three AI coding sessions at once, and comes back hot to the touch.
- 21:21Marquee reads “Hello Ryan!” Minutes later it reboots into clock mode. The poltergeist turns out to be the owner, multitasking at the bench.
- 23:32An unknown board is plugged in, chip-read as a classic ESP32, and named in one line: “Vox. Latin for voice.”
- 00:30Vox speaks, in the voice called Sarah, after a Guru Meditation Error and a pair of deaf microphones are diagnosed inside the same hour.
- 01:13Herald's push-to-talk firmware ships. It is loaded. It is live. The final step, a man holding a button and speaking to a pile of wires, has not happened.
- 01:49Locket's panel, moved to a second controller, stays black there too. Two suspects remain.
- 04:58The replacement Pi is delivered. Flint's resurrection becomes the farce of the weekend: the board has named itself “pizero,” and there is no keyboard.
- 11:37Kiln, the 3D printer, starts its first job for the fleet: a fitted tray for the Marquee matrix, 89 layers of PLA.
- 11:50Herald's bridge server goes live on Furnace. The first gadget becomes a full member of the system it inspired.
- 14:22Flint's dashboard is live on the television. Then the welcome show: five minutes and eleven seconds, one beat lost, and in the middle of it, the room listens.
The fleet day
Monday was a holiday, and I spent it walking through the door.
The morning brought a sign. Marquee is a four-panel red LED matrix, 32 by 8 pixels. My first candidate name, Ember, collided with my battery backup. Marquee it was. Within hours it had a web admin page and 145 drawings rendered server-side, and a Pac-Man animation that ate the text backwards: the modules mirrored everything. The frames were flipped. My review of the sign: “not bad.”
At 9:21 that night I set the sign to read “Hello Ryan!” Minutes later it had rebooted into clock mode, and for a day the record held a small haunting. I closed the case myself: “That was definitely the bench. It was in the middle of doing some other work at the same time, and so it sent a test right after I had used the web UI to change the text.” The poltergeist was the owner, multitasking.
The afternoon and evening belonged to Pane. Pane is the face: an ESP32-S3 with a touch screen, the kind of part that costs about fourteen dollars, in my own text message that night. “The tft display was like $14,” I wrote that night. “It's all custom firmware controlled by custom MCPs that I'm writing as I go with Claude and codex,” I explained, and then, because I wanted him to feel it: “I'm literally taking pictures of the back of the electronics where the pins are, plugging the ESP devices into the USB in my Mac and as soon as it flashes and joins to the WiFi the first time; the firmware allows me to keep doing OTA updates from that point forward.” The friend replied: “Reminds of the Arduino.”
Pane's firmware went from 1.0.0 to 2.6.0 in 101 minutes of commit timestamps on Monday evening. A face mode with a procedural avatar; a notify mode that takes over the screen and politely gives it back; touch; a weather card; a countdown timer. And nova mode at 2.2.0: the animated avatar of Nova, my chief-of-staff agent, on a fourteen-dollar screen, blinking on my desk. My verdict at the time is in the chat record (“that's actually awesome”), and later: “It's really cool, and it's animated and I'm excited to see that do more!”
Not everything survived the day. Flint, the television dashboard, was born in the small hours of Monday on a Raspberry Pi Zero 2 W: a native renderer, no desktop, drawing a cinematic operations-room display about my homelab. (The principle was mine, stated at 3:41 a.m.: “all of this should be about nexus and homelab equipment, not specifically about Flint.”) The board was being driven by three AI coding sessions, Claude Code and Codex and Antigravity all pushing builds at a single-core chip. During a deploy on Monday it died: light out, and when reconnected, hot to the touch, a short, not honest labor. “It kind of sucked,” I said. “I was not terribly surprised because I had moments before realized I was hammering it from three different coder sessions. Disappointed I would need to wait for a replacement, but this is the cost of this kind of hobby.” A replacement Pi, a humbler Zero W for $40.99, was ordered that night and delivered at 4:58 the next morning. Amazon did the work of a supply chain: $307.95 in orders, plus the Pi, in dribs of five and ten and thirty dollars.
Locket is the pendant of the family: a XIAO ESP32S3 wired to a round glass display, meant to hold a face the way a locket holds a photograph. On Monday evening it was wired, flashed, and dark. What followed was a detective story in which every suspect is eventually cleared except the corpse. Driver library one: nothing. Driver library two: a flicker, wrong colors. A slower build: stripes, garbled blocks, a pulse. The identical build, flashed again, produced blackness, where minutes before the same code had produced stripes. Same software, same hardware, different behavior: the variable had to be the hardware itself. Every wire was reseated. Nothing. The panel was not dead in any simple way; it was drifting, a marginal contact or a failing part, declining to be consistent enough to be diagnosed.
The night the room learned to coordinate
At 11:32 on Monday night, I plugged in another board. I did not know what it was. The board was chip-read first, a classic ESP32, and the brief was subtraction: speaker and microphone only, no screen. It was named by my agent in one line I accepted without amendment: “Vox. Latin for voice. Herald talks to Muse, Vox is the room's ears and mouth.”
Two of my corrections arrived within minutes: the microphone was a ZTS6631, not the assumed part, and the amplifier was an NS4168, very likely the second module from a speaker kit ordered back in May for the robot head project.
I wired it with jumper leads, no breadboard, asking the questions of a first run at this depth (“there's only one 5v on this board?”), and just past midnight I asked the question every product manager eventually asks, verbatim, typo and all: “is vox all built out right now? can it speak? can it listn for responses?”
The honest answer was no. Both of Vox's audio paths were broken, each in an instructive way. Speech crashed the device outright. The first playback test produced a Guru Meditation Error, the ESP32's crash liturgy. The decoded panic dump yielded one line: the play handler had called the wrong framework function, a null pointer. The code had never been valid. It had merely never been run.
Hearing failed more quietly. Vox recorded perfect digital silence, zero after zero. Herald, gaining a microphone in the same hours, failed identically and for the opposite reason: Herald's mic wires were still landed on superseded pins, while Vox's wiring was right and its firmware was listening to the wrong channel. Two deaf microphones, diagnosed inside the same hour, one fixed by moving wires, one by teaching the code to pick the louder slot. Asked for the lesson, I declined to overdress it: “Keep trying,” I said, “and also push back on AI if it's asking you to check the wires the third time and it hasn't itself yet checked the code.”
By 12:30 Vox could speak, in the ElevenLabs voice called Sarah. (“Two different devices,” I said. “I wanted Vox to be unique enough to easily know which device was generating the sound.”) It hit one more snag: after all that work, the security token in its server configuration had never been filled in at all. Not rotated, not leaked. Empty. The cautionary tale now lives in the device standard.
Vox and Pane were both in pieces on the bench when the weekend's largest idea arrived. “The coordination layer just became necessary when I was kind of working on Vox and Pane at the same time last night,” I said. “I was like, how do I make these kind of work at the same time, and that's when the coordination layer concept was born.”
The coordination layer is Surfaces, committed ten minutes after the decision was recorded. By the end of its first night it could take the status of every device in one call, fire an announcement each surface rendered in its own dialect, and hold its tongue during quiet hours, 10 p.m. to 7 a.m. By the end of the second night it had a registry, devices as data rather than code, and an admin web panel.
“The concepts come from the day job but they carry over well. But some things just make sense to do right and do well consistently.”
The camera got its name in the same small hours: Sentry. Everything else presents; this one perceives. Its microphone is physically present and firmware-excluded, because it shares its pins with the camera. Sentry watches. It does not yet listen. Somewhere around 3:30 that morning, per the house's own event logs, the only other machine still filing reports was the cat's litter robot.
Concept · One head, built sense by sense
“Look at the robot head repo, because the robot head is what I really want to build, and right now I am kind of building the senses one by one. The eyes, the ears, the mouth, etc.” Sentry is an eye. Vox and Herald are ears and mouths. Pane is a face. The head itself is still a shell in the closet, 75 by 80 by 70 millimeters, waiting on the mail.
The dignified failures
Every honest account of this weekend gives the failures their full weight, because I do.
Locket never lit. On Tuesday after midnight, the panel went to a second controller with a test build that cycled colors in three-second steps. The panel stayed black on the second brain too. The suspects left: a panel that has failed, or two wires that are both white, data and chip-select, crossed somewhere the eye cannot follow. Asked whether the unfinished thing itches, I said: “It does, but it's the only device that does not have its own pins, so I just haven't nailed down how to connect the wires securely yet, but I will.”
Marquee's failure is quieter, and more galling. On Monday night the sign learned Bluetooth presence. My iPhone bonded to it, and thereafter the sign was to know its owner by resolving the phone's rotating Bluetooth address with the bonding key. The cryptography was put on trial and acquitted: a test harness built from the spec's own vectors proved the resolver correct. And still, across two controlled tests in which I stood at my own sign like a man waiting to be recognized by a bouncer, it made roughly 84,000 attempts and matched none of them. The math is right. The stored key is simply not the key my phone resolves with. Presence does not work.
Herald carries two asterisks of its own. Its audio-reactive light mode hung on its first real test and hangs still; the fix is parked as a written prompt. And the push-to-talk firmware, which switches on the Muse SDK's voice uplink, shipped at 1:13 on Tuesday morning. It is loaded. It is live. And the final step, a man holding a button on a pile of wires and speaking to it, has not happened. Asked directly whether I have tried it, I said: “Not yet.” The same voice build broke its over-the-air updates, a fragmented heap leaving no room for the update task's stack; rescued by USB cable, the repair still in its proof cycle on Tuesday.
“Tbh, neither taught me anything specific other than keep trying, sometimes features don't work out even after 84,000 attempts and keep moving.”
Tuesday: the ecosystem gets a body, and a member
Tuesday morning the work turned from conjuring to carpentry. The 3D printer (my FlashForge, Kiln) started its first job for the fleet at 11:37: a fitted tray for the Marquee matrix, 89 layers of PLA. Flint's resurrection was the farce of the weekend. Its replacement board booted on the television before it could be reached over the network, alive at an address nobody had assigned it, its setup password recorded nowhere. The board had named itself “pizero.” There was, for its console, no keyboard. “Oh, I have no keyboard for this box,” I said, with an emoji doing the face. Two memory-card trips to the MacBook later, keys baked in and hostname corrected, the install proceeded under a new house anxiety, in my words: “I really, really don't want to burn out this chip like the last one.” The heavy compiling moved to Furnace, the little board on light duty only. That same morning, at 11:50, Herald's bridge server went live on Furnace and the first gadget became a full member of the system it had inspired. The admin panel's most melancholy status line retired: device up, MCP down.
The graveyard
The industry has run this experiment at scale, and the results are in the ground.
Tony Fadell's verdict, this month: the first wave solved no clear need. The survivors are boring in the right ways. One narrow job. A reason to exist that is not the AI.
Every corpse in the graveyard shares the same anatomy: the intelligence lived in a startup's cloud, and the hardware was a lease on the company's survival. When the company went, the gadget went, because there was never anything in the gadget to keep.
The closet
My gadgets invert the anatomy, and I backed into the inversion.
“Backed into it a little. Look at the record back to March. My first couple of weeks into AI everything was in AWS and wearables, all closed-system devices. Then I realized what I was planning and building and what it would store for data and what it would do and connect to. I ripped it all out of the cloud, bought two boxes for my closet, moved a lot of LLM inference and ALL data storage into my closet, opened up API connections for wearables like Looki to extend the platform's visibility and reach.”
Everything descends from that March decision. The intelligence is mine: a knowledge graph, an agent fleet, a memory that predates the gadgets. The boards are peripherals plugged into a mind I own outright. If every ESP32 died tomorrow, the thing that remembers my life would still be running in the closet, and the senses could be rebuilt in a weekend. Herald is the one partial exception, a hybrid: it pairs with Meta's Muse through the SDK, while its voice and lights run on my own servers. Meta's kit does not use MCP; my stack runs both. The gadget is a terminal either way. The only question is whose cloud, and I answered that in March.
Who built these devices? My first answer is one word long.
“Us.”
“Claude, Muse, Codex, none of them were going to come here and build these without me, and write the firmware without me, and think to add the little space invaders animation to the LED matrix without me. I had to come up with those ideas. Having just those ideas was never going to build any of it. I couldn't write the firmware without Codex, I couldn't plan the install and push the firmware to the ESP boards or wire anything without Muse. We all had to be a part of it and do our part or it would not have happened.”
“The AI is doing this all for the first time just like I am. I'm sending it literally pictures of hardware with jumper wires attached and it's giving me back which colors to plug where. We're like two small children helping each other just figure this shit out together. Sometimes I fuck up and sometimes the AI fucks up.”
My summary of the posture: “Same same, but different. Trust but verify. It's more connected and resourced than I am, but I have to remind myself that it's also experiencing all of this for the very first time.”
Trust but verify has an administrative form: the Herald microphone firmware sat uncommitted for days, because in this house agents do not push code without my go. Asked why I keep the gate, I answered from scar tissue: “Because if you don't, that's how things get broken and stay broken for a long time and the shit starts to pile up and nobody notices and all of the sudden it's because of a merge that happened 20 merges ago and your unraveling three days worth of time and effort. In short: experience.”
The show
The first real audience was a friend who had been following the build from the first night's messages. (“Damn you up to something lol,” came the reply. “Hacking.” Me: “This is something that Meta put out for free for people.”) The visit had nearly happened the first night, and did happen Monday. The welcome show I had commissioned for the occasion, 39 choreographed beats across every surface, was meant for that afternoon, and became a rain check instead.
It got Tuesday, after a preflight: Vox had fallen off the Wi-Fi into setup mode and had to be rejoined by hand. The first attempt I stopped myself, mid-show, because it was too quiet. The volume caps were raised. The second attempt ran end to end, five minutes and eleven seconds of a small apartment performing: Herald and Vox trading lines, the sign scrolling, the face on the panel keeping time, the whole show restoring the room's ordinary state, like a stage being struck. One beat failed, Vox's introduction, lost to a timeout, and the record notes it without flinching. And in the middle of the show sat the beat the whole weekend had been quietly owing: the room listens. Vox recorded three seconds of the room, the two of us in it, and played it back to us. The acceptance test owed since midnight Monday was discharged as a party trick, in front of a live audience.
The best moment was not the show. It was a typing exercise.
“It's honestly the coolness factor of typing in 'make the LED matrix have space invaders going across it' and two minutes later a little electronic led board with jumper wires to an esp chip and plugged into an Anker battery pack and a WiFi antenna is actually making little space invaders go across the board. Ten year old Nic would absolutely lose his fucking mind.”
The next sense is already in the mail. On Wednesday a package arrives with breadboards, proper jumper stock, and a Waveshare LED matrix, 64 by 32 pixels in full RGB: 2,048 lights to replace Marquee's 256 red ones. Asked what I would say to Meta's Muse Gadgets team, I asked for the only thing I have ever asked any platform.
“I don't know tbh. More I guess. More tools, more skills, more connections.”
The head is still a drawing on a server. The eyes are built, one watching my apartment, one waiting dark for a pair of wires to be told apart. The ears work. The mouths work, in two voices, and can tell each other apart. Somewhere in the closet the mind that all of them report to keeps its own counsel. Forty years after a first grader read a magazine page about a trash-can robot in the Braintree public library, the robot is under construction, one sense at a time, and I have basically everything I need for the whole head for a few hundred dollars. What I am waiting on now is not permission, or a product launch, or a company to survive. I am waiting on the mail.
Video from the three nights exists (45 clips in the camera roll) but is still iCloud-only; short sections join this page once the picks are downloaded. Photographs above are the record; the two concept pieces are labeled illustration wherever they appear.
The Fleet
Status as of Oct 13, 2026, as written in the v3 sidebar. Filter by state; every card carries its hardware and its honest asterisk.
Herald
A Muse Gadget SDK gadget that speaks and announces. Speaks as Eric.
Status: working, a full Surfaces member; push-to-talk loaded since firmware 999.0.10, physical test still unrun; over-the-air update repair in progress.
Pane
A touch-screen panel: expressions, notifications, weather, clocks, glyphs.
Status: the most feature-complete surface, on firmware 2.6.1; printed case designed, first print pending.
Marquee
A scrolling red LED matrix for messages, art and alerts.
Status: working, with a public gateway door; Bluetooth phone-presence unresolved after roughly 84,000 attempts, cryptography exonerated.
Vox
An audio-only puck for announcements, speech and listening, with no display by design. Speaks as Sarah.
Status: working; speak-and-listen acceptance completed during the Oct 13 showcase.
Sentry
A camera surface, the family's only input-only member.
Status: watching; it does not yet listen: microphone present in hardware, excluded in firmware.
Locket
A round-display avatar, meant to hold a face like a photograph.
Status: dark. Two suspects remain: a failed panel, or two identical white wires crossed. Not yet a Surfaces member.
Flint
A television dashboard for the whole homelab, rendered natively with no desktop.
Status: backend live; revived on the replacement board and verified live on Oct 13.
Surfaces MCP
A registry-driven facade on Furnace that treats the devices as one system.
Status: live, with an admin panel; quiet hours 10 p.m. to 7 a.m.