RAINlabs: Pocket Arcade
A progressive learning journey from Player to Engineer, exploring code, design, and AI through hands-on arcade experiences.
Classes starting February 16th 2026
Player to Designer
Students explore a custom-built handheld arcade machine using pre-loaded games. The focus is on understanding how code, design, and AI shape digital experiences, without needing to assemble hardware.
Sessions
Meet the Machine
Students explore the arcade machine, learn what a microcontroller is, and understand how games run on limited hardware.
- • Identify core components inside the arcade machine
- • Understand the role of the ESP32 microcontroller
- • Explore screen size, resolution, and input limits
- • Discuss how constraints affect game design
Games Are Rules
Students investigate how games are built from rules, states, and feedback using simplified code examples.
- • Understand player movement using coordinates
- • Recognise game states such as start, play, and game over
- • Identify how scores and timers work
- • Link joystick movement to on-screen actions
AI as a Co-Designer
Students use AI tools to help customise game themes, visuals, names, and simple logic changes.
- • Use AI to generate ideas and code suggestions
- • Modify colours, sprites, and sound effects
- • Learn that AI outputs must be checked and refined
- • Discuss ethical and responsible AI use
Explain Your Game
Students reflect on their design choices and explain how their game works to others.
- • Describe how inputs affect gameplay
- • Explain at least one design decision
- • Identify how difficulty could be adjusted
- • Build confidence communicating technical ideas
Designer to Builder
Students take control of the arcade software, generating and uploading their own game code. They also personalise the physical design through engraved or printed components.
Sessions
Understanding the Code
Students explore the structure of the arcade game code and learn how logic controls gameplay.
- • Identify setup and loop structures
- • Understand variables and constants
- • Trace how input affects movement
- • Connect code sections to on-screen behaviour
Modify and Extend
Students use AI and reasoning to modify game behaviour and difficulty.
- • Adjust speed, scoring, and difficulty values
- • Understand timing and frame delays
- • Use AI to suggest changes and improvements
- • Explain why each change was made
Upload and Debug
Students upload their code to the arcade machine and learn how to identify and fix errors.
- • Upload firmware to the ESP32
- • Recognise common upload and runtime errors
- • Practice incremental testing
- • Develop problem-solving persistence
Custom Design Finish
Students design and add custom physical elements to their arcade machine.
- • Design engraved or printed side panels
- • Consider form, function, and aesthetics
- • Assemble and test final hardware
- • Reflect on the design process
Builder to Engineer
Students fully assemble the arcade hardware, explore advanced code concepts, and experiment with multiple firmware versions while learning real-world engineering trade-offs.
Sessions
Hardware Systems
Students learn how each electronic component functions and how they work together.
- • Identify all electronic components
- • Understand power and battery safety
- • Learn why constraints exist in embedded systems
- • Discuss signal flow from input to output
Assemble the Arcade
Students assemble the full arcade system using guided wiring diagrams.
- • Wire the display, joystick, speaker, and power system
- • Follow visual wiring maps
- • Test subsystems independently
- • Develop careful assembly habits
Advanced Code Concepts
Students explore deeper programming concepts and firmware customisation.
- • Understand memory and resource management
- • Explore interrupt handling
- • Experiment with multiple firmware versions
- • Compare different code approaches
Engineering Showcase
Students complete their arcade and present their engineering journey.
- • Final assembly and quality testing
- • Document design decisions
- • Present to peers and family
- • Reflect on the full engineering process