psx2usb/README.md
2024-09-22 07:38:03 +02:00

50 lines
1.2 KiB
Markdown

## 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