Core Electronics Forum

PSP Slide Joystick to RPi help

Hi everyone,

First post here. I am going to try and make a small retro gaming device. using a raspberry pi zero (or maybe a rPi3b).
most guides I’ve found say how to hook up buttons for a D-pad and A,B,X,Y buttons etc. But for my build I want to use a psp slide joystick instead of a D-pad. I bought one from Core but to be honest I’m a complete noob with this stuff and I’m not sure how to connect it to the GPIO. Any help with this would be greatly appreciated. I’ve managed to connect a screen, battery and charger so far.

2 Likes

Hi 7ames, Welcome to the forum :slight_smile:

What kind of reading were you hoping to get back from the joystick? The PSP joystick is pretty basic as it internally just behaves like two potentiometers, with one direction being maximum resistance and the other being minimum. This means you will need an analog to digital converter to read the position of each axis, then some code to interpret that digital number as a position on the scale.

We have other button and gamepad input devices which behave a little differently.
The Pimoroni Player X means that a series of button inputs will be read as a USB controller input by whatever it’s connected to.

This Sparkfun joystick looks like a PS2 analog stick and feeds back its position data via the I2C protocol

2 Likes

Hi Trent!

I purchased this Slide thumbstick

not sure if it’s the same as the PSP one.
I think for what I need it for I need to be able to get the X and Y values.
RetroPie and Recallbox are the main retro game platforms that I’ll be trying to use for this project.
So i just need those to be able to register the joystick values.

I also found this on the site

not sure if it’s necessary though as I really have no idea with this stuff.

2 Likes

Hi 7ames,

That slide thumbstick looks the same to me, it just comes from a different supplier.

That analog breakout board is a little confusing as it is designed to suit a 3 pin thumbstick that was retired and won’t fit the PSP thumbsticks. I’ll make a note to have the product page updated soon.

You will still need two analog to digital converter channels to transform the voltage readings into numbers the Pi can understand. Which could be something like this that feeds back the values using the Pis I2C interface.

1 Like

If i were to buy this would you (or anyone else) be able to help me fit it into my little schematic ?
I’m happy to solder everyhing but just not sure what needs to be done exactly.

This is my current plan. for the r Pi zero or 3b

Hi 7ames,

Check out this page from Adafruit’s guide, there are a couple steps involved for running this sensor in Python, but it just plugs into SDA and SCL, so it should be compatible with your current wiring diagram.

Have a read and get back to us if you’ve got questions

1 Like

I found this little one. seems a lot simpler. Would using this be easier to hook up ?

for my project it’s all i would need.
looks like it has 6 pins ? any idea how to work them into the diagram above ?

1 Like

Hi 7Ames,

These joysticks usually have four directions and a switch that closes when you push down. So it’s likely 1 common pin that gets connected to the 5 others when their respective directions are pressed.
While I couldn’t find the exact pinout on the datasheet, I’ll link it anyway:

It shouldn’t be too hard to connect this, just make sure you have 5 free pullup-capable pins and you should be good to go!

-James

1 Like

Hi 7Ames
Joysticks, there are 2 main types, not really interchangeable. You start off with analog. You supply it with +V and -V(Gnd??) and you get X output and Y output which will be a voltage somewhere between +V and -V depending on joystick position. Then the thread progresses to Digital (???) types which have 4 microswitches for X and Y operation. No variable output, all or nothing. Then your diagram with a heap of switches labelled up, down, left, right, X and Y which seems to be a mixture of the two. I for one am a bit confused.

I think you need to decide which type you need. If you want a continuously variable output you will need an analog device. Of you want a momentary switch action a switch type will be OK. But the two types ARE NOT THE SAME.
Cheers Bob

2 Likes