Week 19
AI prompt:
"Generate image when she started week 19 — final stretch of Fab Academy, granny at her desk surrounded by a robot car, joystick controller, NFC tags, and a glowing OLED screen, focused and excited"
Project Dissemination & Final Progress
CollectMaze is not just a final project — it's a concept I want to share, improve, and inspire others with. Below is my plan for getting this project out into the world after Fab Academy.
🌐 Fab Academy Documentation
Fab Academy Documentation is a great idea because it is built around open documentation. Step by step, you can write down everything you do, including all source code, KiCad files, 3D design files, and process photos. This allows anyone to reproduce the project from scratch.
📁 GitHub Repository
All of this can then be published through a GitHub repository, which makes the entire project transparent, understandable, and accessible. This kind of open sharing of knowledge and files not only helps the creator track their own progress, but also creates a powerful platform for the global maker community. Someone else can build the same device using your schematics and code. GitHub also keeps the complete history of all file changes.
🏭 FabLab Dilijan Exhibit
The physical game will stay at FabLab Dilijan as a permanent exhibit. Since the lab is located inside a school, children will be able to play the game and hopefully become inspired to create their own versions.
🎓 Educational Workshops
The project includes PCB design, embedded programming, wireless communication, CNC machining, laser cutting, and 3D printing, making it a great topic for a complete educational workshop.
🎮 Unity Simulation
I also created a digital version of the game in Unity. Creating a completely identical version would require more time, but I am sure it is possible. This allows the idea to be experienced in a virtual environment using only the joystick I created. Without building the physical car and game board, it is still possible to deliver the complete game concept to the player.
🇦🇲 Armenian Identity
I laser engraved Armenian bird letters on the maze walls. I really wanted to include an Armenian element in this game, and only two weeks ago I finally implemented this idea. It inspired me a lot and gave me new ideas for how the game could evolve in the future.
In a future version, the NFC tags could be hidden under specific letters, turning the game into an educational puzzle that combines Armenian language learning with logical thinking.
Tasks completed and remaining:
| Task | Status | Notes |
|---|---|---|
| OpenSCAD randomised maze algorithm | ✔ Done | Week 2–3 |
| Laser-cut test maze 300×300mm | ✔ Done | Week 3 |
| CNC-milled full plywood game board | ✔ Done | Week 7 |
| Robot car PCB (ESP32C3 + NFC + motors) | ✔ Done | Week 6–8 |
| Joystick PCB (ESP32C3 + OLED) | ✔ Done | Week 9 |
| ESP-NOW wireless communication | ✔ Done | Fixed MAC, stable without USB |
| Car drive joystick control | ✔ Done | Calibrated center + deadzone |
| NFC coin detection (5 NTAG213 tags) | ✔ Done | All 7-byte UIDs registered |
| Game logic — timer, win, game over | ✔ Done | SW button restart works |
| OLED display (timer, coins, battery) | ✔ Done | Win/GameOver faces working |
| LED feedback on coin collect | ✔ Done | Both car + joystick LEDs flash |
| Power switch (OLED sleep/wake) | ✔ Done | No reset needed on wake |
| 3D-printed robot car case | ✔ Done | Week 16 |
| 3D-printed joystick case | ✔ Done | Week 17 |
| Unity simulation version | ✔ Done | Week 15 |
| Armenian letter engraving on walls | ✔ Done | Laser raster engraving |
| Full video demo of complete game | ⚡ In Progress | To record for documentation |
ESP-NOW wireless link
After switching to a hardcoded fixed MAC address on the car, the connection is stable and works reliably without USB. Range is well beyond the game board — tested up to ~35 metres.
NFC coin detection
The NFC coin detection system is working correctly. The robot can successfully detect all NFC tags placed on the game board and count them during gameplay.
Game logic — timer, win, game over, restart
The 180-second countdown timer, the win screen, the game over screen, and restarting the game using the SW button are all working correctly. Both the car and joystick OLED displays update at the same time and stay synchronized throughout the game.
Car drive joystick control
The joystick is calibrated using its actual center values (VRX: 2139, VRY: 2248). The car stops immediately when the joystick is released, making the control feel responsive and reliable.
LED integration
Originally, I wanted to indicate the locations of the NFC tags using red LEDs. However, since the NFC tags are already visible on the game board, I decided to postpone the LED integration for now. I hope to implement this feature in a future version of the project.
Time limit balance
Is 180 seconds the right difficulty level?
It may be interesting to add difficulty levels in the future:
- Easy: 180s
- Normal: 120s
- Hard: 60s
Armenian letter puzzle (future version)
In a future version, the NFC tags will be hidden under Armenian bird letters. The player will need to solve a word puzzle in order to understand which letters they need to visit. The main question is: what should the first puzzle word be?
Maze card count
The random maze card system was created in Week 3. How many unique cards should be printed for the final version? 10? 20? What is the minimum number required to make the game feel different every time it is played?
Maze design, laser cutting, CNC milling, PCB design + milling, 3D printing, joystick, ESP-NOW link, NFC coin detection, full game logic.
Weeks 2–9 — Complete
Unity simulation, robot car 3D case, joystick 3D case — all designed and printed.
Weeks 15–17 — Complete
Applications & Implications — full BOM (~$140), process list, evaluation criteria, and project scope documented.
Week 18 — Complete
Dissemination plan, full progress tracking, open questions resolved. Finalising standalone power. Armenian letter laser engraving. Playtesting time balance.
Week 19 — This Week
Record complete video demo. Assemble everything into a single standalone unit. Present at FabLab Dilijan. Leave the game as a permanent exhibit for future visitors.
Final Presentation
Fab Academy gave me much more than technical skills. Here is what this project — and this whole semester — taught me:
Biggest lesson
Problems are not obstacles — they are the real learning. Every brownout reset, every incorrect MAC address, and every motor that spun in the wrong direction taught me more than any tutorial ever could. Solving these problems forced me to understand how things actually work, and that knowledge is much more valuable than simply following instructions.
On making physical things
There is something completely different about building a game that real people can pick up, play, and laugh at — versus building something that only exists on a screen. The physical world adds constraints that make you think harder and create better solutions.
On Armenian identity in making
I want to keep exploring how traditional Armenian culture — our alphabet, our visual patterns, our language — can be embedded into modern interactive technology. CollectMaze is just the first step of that idea.
Here is the first draft video of the working project. I hope I will be able to make a better final video later, because video production is definitely one of my weak points. 😄
Also, driving the car is not exactly one of my strongest skills, so I sped up the video 2× just so you don’t get bored watching me crash into walls. 😄😄
And here are my final presentation slides and the presentation video.
Licensing
For licensing the project Creative Commons.
COIN COLLECTOR © 2026 by Mariam Daghbasyan is licensed under CC BY-NC-SA 4.0
I chose this license because I believe this project, with both its strengths and its challenges, can be a valuable learning resource for others.
Week 19 marks the final documentation sprint before the presentation. Looking back across 19 weeks, CollectMaze grew from a sketch on paper into a fully working wireless game — with custom PCBs, a CNC-milled maze board, NFC coin detection, a joystick controller, a Unity simulation, and a complete embedded game engine running on two ESP32C3s talking to each other over ESP-NOW.
The game will stay at FabLab Dilijan as a permanent exhibit, all files will be open-source, and I hope it inspires the next student who walks in to make something equally strange and playful.
I hope I will get there 😄 — and I think I did.
AI prompt:
"Generate image when she finished Week 19 and the final project is complete — granny proudly holding a joystick, robot car on a wooden maze board in front of her, glowing OLED display, confetti, warm lab light"

