An LCD screen is hidden behind JOY's facial features that display pupils in her eyes and teeth in her mouth. Joy's "eye" move and rotate with the position of the 2-axis analog joystick. JOY also randomly blink her eyes.
JOY operates as a USB controller when plugged into a computer. The joystick is converted from 2-axis analog to a conventional D-pad (up, down, left, right). The action buttons are mapped to keyboards letters (such as W, A, S, D) but can be mapped to any characters, function keys and modifiers.
JOY doesn't have to be a game controller, she can control any number of software or media such as youtube, photoshop, premiere, Ableton live, etc anything that a USB keyboard can do.
At any skill level, soldering wires to breakout boards and 3D printing take up the majority of the build. I estimate the project build to about 2-3hrs, suggest for a weekend. So if you're a beginner or novice, building this project entails soldering, wiring, modifying and uploading code.
I recommend walking through the guide before committing and buying all of the parts. As a thoroughly documented tutorial, some "micro steps" and terminology are assumed.
If your new to electronics and the Adafruit Feather M0 Express, I suggest you walk through the following guides to get the basics. The Adafruit Feather M0 Express guide will walk you through setting it up with CircuitPython.
You'll need just a couple a parts to build this project. You have the option to choose from two Adafruit Feather M0 boards. You also can choose different batteries (capacities).
Hardware Machine Screws
The electronic components are secured to the 3D printed enclosure using metric machine screws. I used Phillips flat head style screws that are ~5mm in length. These low-profile screws can be purchased from your local hardware store or online retailers like Albany County Fasteners or McMasterCar.
These things really do help make building the project smoothly. You don't need them all of them, but I recommend them.