Pseudonymous maker and vintage gaming enthusiast "Tasty Cakes," hereafter simply "Cakes," has turned a Raspberry Pi Zero W single-board computer (SBC) into an adapter to let a classic Atari 2600 console accept modern Bluetooth gamepads as input devices.
Launched in 1977, the Atari 2600 — known at launch as the Atari Video Computer System, or VCS — took the world by storm. While its eight-bit MOS Technology 6507 processor, running at a whopping 1.19MHz, and mere 128 bytes of RAM may seem limited by modern standards, the device sold over 30 million units — and its iconic single-button joystick is still recognizable today.
Recognizable, perhaps, but not the most ergonomic of devices. Cakes, being the proud owner of the cost-reduced Atari 2600 Jr., was looking for a way to play that didn't involve being tethered to the console by a joystick wire — and turned to a Raspberry Pi Zero W and a quick bit of wiring to add a little modern convenience to a classic gaming session, by acting as an adapter for modern Bluetooth controllers.
"It was really easy because the Atari controller just connects whichever input is pressed to ground," Cakes explains. "So all I had to do was code the GPIO [General-Purpose Input/Output pins] to be low for a button press on the [Sony PlayStation 4] controller and be an input otherwise. There is no noticeable lag. At least not that I could tell."
The project sees the Raspberry Pi Zero W's GPIO header wired into a nine-pin connector and plugged into the Atari 2600 Jr.'s joystick port, then the PlayStation 4 gamepad connected to the SBC's integrated Bluetooth radio. Once paired, a simple Python script uses the
pyPS4Controller library to read the controller's inputs over Bluetooth and convert them to GPIO outputs to be read by the Atari as joystick commands.