Toy Workshop · round 1A radio for the whole family

Tune in to the past

The Malacka Family Radio

A family radio whose dial is marked with your own people: Grandpa’s 1956, Grandma’s 1971 and our son’s 2046.

  • Ages 8+
  • The whole family
  • Grandparents as co-authors
  • ~1,160 CZK (about €45)

Status: an idea from round 1 of the Toy Workshop. Nothing has been built or printed yet. Everything on this page is the plan.

Try the dial
The family radio, front and side view A walnut-brown radio cabinet about 240 by 160 by 130 mm, printed in two halves. A glowing 200 mm dial runs across the top with a red needle. Below it, magnetic name riders for Grandpa 1956, Grandma 1971 and Son 2046 sit on a steel rail. A fabric grille is on the left, knurled knobs and a call-in button on the right. A cutaway in the side shows the servo, the ESP32-S3 board, the amplifier and the padded speaker box. 1950 1975 2000 2025 2050 GRANDPA1956 GRANDMA1971 SON2046 Family Radio YEARSTATION CALL IN 1 2 3 4 5 6 7
  1. 1200 mm dial in translucent PLA, lit from behind by a WS2812 strip
  2. 2SG90 servo that moves the needle
  3. 3Steel rail with magnetic riders; Hall sensors underneath (optional)
  4. 440 mm 5 W speaker behind fabric, in a padded box
  5. 5ESP32-S3 board and MAX98357 amplifier
  6. 6CALL IN button with an INMP441 microphone
  7. 7Cabinet ~240 × 160 × 130 mm, printed as front and back halves
18:05Live

Tune it yourself

Turn the YEAR knob (drag it in a circle, scroll on it, or use the arrow keys), drag along the glass, or use the slider. Between stations there’s only static. Get close and words start leaking through. Click a family rider and the servo finds it for you. Sound stays off until you switch it on.

Year
Station

No station · staticRead the script ↓

Written by the model Real recording, played as is Code and the sound library

Stations on this dial so far

    On air No station

    Between stations

    Year 1965

      Fine-tune the needle to a station mark or a family rider.

      Program guide Family Radio
      Tonight on the family dial
      All times approximate
      18:30Memory station

      The wow moment

      Grandma turns the knob to her own rider, “Grandma 1971”. The static thins out and a radio report from her village comes through. The host talks about a summer flood on the river, then says, “And now, someone who was there.” The next voice is Grandma’s own, recorded last week on a web page. She goes quiet for a moment. The kids look at her, and she says, “That’s how it was.”

      Sample broadcast · memory station, summer 1971

      LibraryStatic, then a period station jingle.

      Host“Good evening, you’re listening to the Radio Magazine from South Moravia. It’s the summer of 1971, and in a small Moravian village the river has come over its banks. The water reached all the way to the train station, and people carried sandbags all night. We asked a young local for a few words.”

      Grandma“Well, the girls and I stood on the bridge and watched somebody’s barrel float by…”

      Host“Thank you. And now the weather. Tomorrow should be clear.”

      Sample broadcast · Fantasy Radio, 2046

      CodeThe Fantasy Radio jingle. It plays before every future broadcast, no exceptions.

      Host“Good morning from our little village. An engineer who happens to be your son unveiled a machine today that folds laundry faster than his sister. His sister says she ‘tested it until it broke.’”

      Code“Careful, this is Fantasy Radio.”

      Amber labels mark lines the model wrote. Green is a real recording, played exactly as it was recorded. Grey is added by code or taken from the sound library.

      18:45How it plays

      Six ways to use one dial

      • 01Family ridersMagnetic riders sit on a steel rail under the dial, one per family member, each with a printed name tag: Grandpa 1956, Grandma 1971, Mom, Dad, Son 2017, Daughter 2020. The needle moves on a servo. There’s a YEAR knob and a STATION knob.
      • 02History stationTune to a year and you hear a broadcast built from a local database of that year’s facts. The facts come from the database, and the model is only allowed to retell them.
      • 03Memory stationA grandparent records a two-to-three-minute memory on a web page served by the Gateway, the home server on our Mac that all our toys talk to. From the transcript and the year’s facts, Claude writes a period news report, and the original recording plays inside it as the eyewitness. The station then stays on the dial for good.
      • 04Fantasy Radio 2046The kids say what they want to be, and the radio broadcasts news from the year they’re grown up. Every one of these broadcasts opens with the Fantasy Radio jingle.
      • 05Call the studioPress the button and ask the host of that era a question. The host answers in character and still can’t invent events.
      • 06Guess the YearThe radio tunes to a secret station, memory stations included, and the family guesses the year. Grandpa guessing his own childhood wrong is part of the fun.
      19:00Feature

      Why a tenth time

      Every visit from the grandparents adds a station, so the dial slowly fills up with the family’s own memories. After a month it has more riders than it started with.

      Guess the Year can take a whole evening once the memory stations are in the pool.

      The future station changes whenever the kids change their minds about what they want to be. In a few years it will be fun to play back what they wanted at nine.

      Day one
      After a few visits
      After a year
      Illustration. Solid tags are the family’s own years, outlined ones are memory stations added on visits.
      What’s new thanks to AI

      Two minutes of Grandma becomes a radio show

      Grandma’s two-minute recording turns into a period radio show within about a minute, one that sets her memory inside the news of that year. That used to be a job for a sound engineer and a scriptwriter, and nobody hires either for one grandma and one flood.

      BeforeA scriptwriter, a sound engineer and an archive, for a single memory.
      NowA web page, Whisper, Claude and about a minute of the Mac’s time.

      The research behind the Toy Workshop kept finding objects that carry memories between generations. This one is a family archive that the grandparents keep adding to. It doesn’t keep an eye on the kids.

      19:30For makers

      How it’s built

      Printed parts (Prusa MK4S + MMU3)

      • ACabinet, ~240 × 160 × 130 mm, printed in two parts because of its size: the front with the dial and the back half. MMU colors: “walnut” PLA, a cream front panel and gold lettering.
      • BDial, 200 mm of translucent PLA with a backlight behind it, and a steel rail under it for the riders.
      • CRiders, 20 × 12 mm each, with a magnet sealed in during a print pause and the name printed raised on top.
      • DKnobs and grille: three knurled knobs, fabric behind the grille and a speaker box padded with wadding.

      A rider, layer by layer

      1Print the base with a pocket.
      2The printer pauses. Drop in the magnet.
      3Printing resumes and seals it in.
      4Raised name on top. It clings to the steel rail.

      Electronics

      PartWhat it doesPrice CZKShop
      ESP32-S3 DEVKitThe brain: knobs, needle, sound, Wi-Fi to the Gateway448LaskaKit
      KY-040 ×2Rotary encoders for YEAR and STATION58GME
      SG90Servo that moves the dial needle89GME
      A3144 Hall module ×6Senses where the riders sit (optional)180GME
      MAX98357 + 40 mm 5 W speakerSound187LaskaKit, GME
      INMP441 + buttonCall the studio98 + ~40 estimateLaskaKit
      WS2812 stripDial backlight~60 estimate—
      Total~1,160 CZKabout €45

      Sensing the riders with Hall sensors is optional. The radio can simply know each rider’s year from its settings on the Gateway. Not in the total: filament, the rider magnets, the steel strip for the rail, a microSD card for the cache and a USB power supply.

      Architecture

      How a memory station is made A grandparent records a memory on the Gateway web page. Whisper turns it into a transcript. Claude writes a script from the transcript, the year facts database and the kids' wishes. Code checks every event against the database and the transcript. The Gateway voices the host with Piper or ElevenLabs, adds a radio filter, splices in the untouched original recording and stores an MP3. The radio asks the Gateway for a station when the knob turns and plays a stream or its SD cache. ORIGINAL RECORDING, UNTOUCHED GRANDPARENT records 2–3 minutes onthe Gateway web page WHISPER speech → transcript YEAR FACTS DATABASE one-off extract fromWikipedia, per year KIDS’ WISHES “I want to be an engineer” CLAUDE writes the script {host, clips, jingles} style and links only script transcript facts CODE CHECK every event must be inthe database or transcript;the rest is cut or fixed approved GATEWAY AUDIO host voice: Piper (kids)or ElevenLabs (adults) + radio filter + original clip spliced in → MP3 CACHE MP3 whichstation? THE RADIO knob → ESP32-S3 → Gateway → stream or SD cache plays offline from SD THE GRANDPARENT’S VOICE IS NEVER CLONED only the original recording plays MODEL CODE AND DATA GATEWAY SERVICES (OUR MAC) HARDWARE

      Everything except the radio itself runs on the Gateway. On narrow screens the diagram scrolls sideways.

      Where code ends and the model begins

      Code holds state and rules

      • Which riders exist, their years and which stations are on the dial
      • The year-facts database and every transcript
      • Checking each event the script mentions, and cutting what fails
      • The Fantasy Radio jingle and label on every future broadcast
      • Sensitive years (1939–1945, 1968): factual tone, parental settings
      • The SD cache and what plays when the network is down
      • Splicing in the original recording, untouched

      The model only talks

      • The host’s lines, in the style of the period
      • Linking a memory to the news of its year
      • Answering Call the studio in character
      • Future news made from the kids’ own wishes, labeled as fiction by code

      Nobody does this

      • Clone the voice of anyone in the family
      • Add a fact that isn’t in the database or the transcript
      • Listen when nobody is pressing CALL IN

      Open questions before the first print

      • An SG90 turns 180°. Moving a needle along a straight 200 mm dial takes a dial cord and pulley or a lever. An arc-shaped dial would be simpler.
      • Steel under the riders holds the magnets, but it also shields them from Hall sensors underneath. The sensors may need small windows in the rail.
      • The drawing has three knobs and the parts list has two encoders. The third knob needs a job (volume, probably) and a part.
      • The SD cache needs a card slot. If the board doesn’t have one, add a microSD reader.
      20:00Public service

      Safety and offline

      • Offline first. Every generated station is saved to the SD card, so after a few weeks the radio plays almost entirely offline. New stations can be made overnight on the Mac, and a parent can listen before they go on the dial.
      • The future is fiction. Anything past today opens with the Fantasy Radio jingle and closes with a reminder. Code adds both, so the model can’t forget.
      • Sensitive years. 1939–1945 and 1968 get a factual tone and parental settings.
      • Real voices only. Grandparents’ voices are never cloned. Only their original recordings play; the host is a stock synthetic voice.
      • Magnets stay inside. Each rider’s magnet is sealed in plastic during printing, so a child can’t pry it out and swallow it.
      • Microphone. It listens only while CALL IN is pressed.
      20:15Coming up

      Roadmap

      1. Proto a weekendFirst playable prototype: the radio plus history stations from the cache.
      2. v1Family riders and the memory station, recorded through the web page.
      3. v2Fantasy Radio 2046, Call the studio and Guess the Year.
      20:30Ratings

      Scores, v2

      Novelty 8
      Engagement 9
      Feasibility 8

      Compared with v1: a “history while you wait” toy has become a family archive that grows with every visit from the grandparents.

      Status: idea stage, nothing built yet. The demo above plays sample scripts written for this page.