In this cool project, Mate Marschalko connects a USB racing wheel to a web browser running the HTML5 Gamepad API to wirelessly drive an RC car. This will likely go over the heads of anyone who doesn’t know JavaScript programming [raises own hand], but it doesn’t actually look too hard to do, if you basically know your way around JS and HTML5 (and Arduino hardware).


Mate Marschalko, who created the project, explains how the car itself was hacked to talk to the browser and Gamepad API (via a Javascript Node.js server and WebSockets):

The work has started off by taking out the original radio and motor drive modules and the antenna from the car. I was left with two motors, one for steering and one for acceleration, and the plan was to rebuild the whole architecture using Arduinos. I succeeded and the motors are now driven with a powerful H-bridge module (L298n) and the wireless connection is handled by two nRF24l01 antennas. The Arduino and the motors are both powered from the original 6V battery pack (4xAA).


Besides the hardware hacking, I’m sure the tricky part is getting the on-board Arduino Nano to talk to the radio-connected Arduino Uno to then talk to the software stack who in turn needs to talk to the USB racing wheel. But if you check out the video, I think you can see how much it’s worth it. That looks like fun!

Marschalko has future plans for his racing rig. “There are so many parts of this projects that are really exciting and interesting and parts that are a little bit more difficult to fully implement,” he writes. He’s definitely planning on adding a webcam to the car, and beefing up its battery. And as he points out: “With WebSockets, you could actually connect multiple users and browsers together to create multiplayer games, for example.” Marschalko is also working on a free ebook on “JavaScript Electronics” that promises to make clear the steps involved in this project, even to complete beginners.