## PSX to USB HID controller converter rp2040 (raspberry-pi pico) based device to convert PSX controllers to USB HID gamepads. ![Photo of psx2usb](./jpg/photo_psx2usb.jpg) ### Components - one rp2040 board with 5 GPIO available - one PSX controller connector (female) ### Selected pinout The PSX connector controller port has the following pinout: 1. Data 2. Command 3. 7.5V Rumble motor 4. GND (also connected to the shield) 5. 3.3V 6. Attention 7. Clock 8. Not connected 9. Acknowledge ![PSX controller pinout](./jpg/controller-pinout.jpg) [Image from consoledev.net] | PSX signal | rp2040 GPIO | Direction | Description | | ----------- | ----------- | --------- | ----------- | | Data | 13 | IN | Receive ID, buttons and adc data from controller | | Command | 12 | OUT | Send read commands to controller | | Attention | 6 | OUT | Chip select (active low) for controller | | Clock | 5 | OUT | Clock serial communication for DATA/CMD lines | | Acknowledge | 3 | IN | Acknowledge command RX, active low | ### Installation * Run cmake && make * Start rp2040 in usb storage mode. Copy psx2usb.u2f to the device. * Reboot rp2040