Author Topic: PSX Station controller to PC adapter  (Read 204 times)

0 Members and 1 Guest are viewing this topic.

Offline JaunedeauTopic starter

  • Regular Contributor
  • *
  • Posts: 102
PSX Station controller to PC adapter
« on: December 31, 2024, 01:53:07 pm »
Just to have fun and learn things, I' trying to add PSX controller support to an opensource game controller firmware (gp2040-ce).

I use this documentation for the PSX protocol.

Thing seem relatively accurate, but I get really strange levels. On the controller answer here (in dark blue, cursors show the 0V and 3,3V of the data line), you see the levels :
- change on clock rise (clock is cyan)
- is very low for "1" after a "0" has been sen and slowly rises.

Decoding sometimes work on the oscilloscope because I can choose the levels, but fail on the rp2040.



I've tried :
- checking every connection for bad breadboard connection, bad solder and shortcut : everything seems fine.
- slowing down the speed (trace is at half the nominal speed)
- activating or disabling pull up and pull down on the GPIO
- powering the controller with 5V instead of 3V3 (this is third party controller, but original one have been tested in 3-5V range and works fine)

Any idea what could be going wrong ? (I no lnoger have a playstation to test the controller, maybe it just doesn't work, but the problem could be on my side also)
 

Offline JaunedeauTopic starter

  • Regular Contributor
  • *
  • Posts: 102
Re: PSX Station controller to PC adapter
« Reply #1 on: January 01, 2025, 12:16:27 am »
Part of the answer was that the pullups on the rp2040 are very weak (I measured them around 90kr). Using an external potentiometer, it seems 6.8kr is a way better value.

Also the value needs to be sampled not in the middle of the cycle, but a bit after the clocks goes up (for 250kHz, I let 2us of clock down, rise clock, wait 1us, sample the value, then wait another value)

This still does not work thought, but I guess the problem is now how I interface with the firmware I use, not reading the value. Ill have to make test tomorrow.
« Last Edit: January 01, 2025, 12:20:13 am by Jaunedeau »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf