Building a hackable embedded game console from Scratch

Joylabz

Embedding Scratch in an Arm-based single board computer using Electron, React and Scratch 3.0.

View project

GameBender is a National Science Foundation and Kickstarter-backer funded Scratch game console that comes with tools for players to modify the Scratch games with other smaller Scratch programs called "glitches". We worked with JoyLabz, the company that invented Makey Makey, to create the software which makes GameBender possible.

Challenge

The JoyLabz team approached us in 2017 to implement a proof-of-concept Scratch-based game system with support for live code injection of Scratch programs into other Scratch programs on a resource constrained Arm-based device. We needed a way to embed the (at the time un-released) Scratch 3 Virtual Machine in a box, boot into the VM, update the device over the air, and play Scratch games from the internet and from disk. Although JoyLabz had deep expertise designing and bringing hardware products, like the Makey Makey and Drawdio, to market, GameBender was their first software product.

Solution

We implemented the proof-of-concept using the new JavaScript-based Scratch 3 VM for the runtime and Electron to embed a web browser and interface with the file system. Working on the product with JoyLabz was so rewarding that we signed on for two years of follow-on product development, during which time we oversaw the system’s architecture and implementation. We developed a pipeline for creating “glitches” (tiny Scratch programs which GameBender players use to “bend” or edit Scratch games while playing them), along with a web based lobby and game chooser built in React. We worked with leadership from JoyLabz to onboard into a software product management and ownership role. The GameBender project launched on Kickstarter in May 2019. We are now working on the manufacturing QA process, over the air update services, and some exciting yet-to-be-announced add-ons for the product!

Impact

As a result of our partnership, JoyLabz is shipping a new console which teaches kids that they can change the technology systems they interact with using code. We helped JoyLabz design an architecture, select technologies, and set up a software product development function in their organization. While delivering GameBender, we also made numerous improvements to the Scratch VM and GUI, improved the state of Electron on Arm, and fed back on the web platform with our educational and embedded web use case. GameBender is a first of its kind system on multiple levels. The console introduces the concept of real-time video game glitching to consumers for the first time, creating a learn to code while you game experience while also shipping a new kind of boot-to-web-application on a consumer device.

Working with Bocoup comes with the intimacy of working with your friends combined with the insane talent of a team that all seem like principle engineers.

Jay Silver, CEO, Joylabz

Contact Us

We'd love to hear from you. Get in touch!

Phone

+1 617-379-2752

Mail

P.O. Box 961436
Boston, MA 02196