I am using a lynx motion ps2 controller connected to an arduino and it only works at 3.3V not 5V. This is a problem because at 3.3 V the controller becomes glitchy and I need it to control a robot with continuous servos. I am using the example code from github. I am sure my wiring is correct. Any ideas as to why it doesnt work at 5V?
@creid41 Welcome to the RobotShop Commnuity. We see yo should have the following:
Can you confirm that the transmitter and receiver do indeed look like that? We ask because if there’s a chance you’re using a different remote control with the PS2 receiver adapter, that it would not work. If that’s not the case, keep reading below.
These are the connections:
There is quite a bit of sample code from Github, so it’s important to know which. For example from Lynxmotion:
From Bill Porter directly:
Note that the code needs to reflect the pins used. For example in the following:
The pinout would be:
error = ps2x.config_gamepad(9,7,6,8, true, true); //setup pins and settings: GamePad(clock, command, attention, data, Pressures?, Rumble?) check for error
- CLK = 9 (digital)
- CMD = 7 (digital)
- ATT = 6 (digital)
- DAT = 8 (digital)
- 5V
- GND
If it only works at 3.3V, then we’ll need to verify with our supplier to see if they have changed the model without our knowledge, though we have not had a model connected to 3.3V in the previous versions.
The last thing to verify would be the batteries within the transmitter - if it’s left on while unused, it drains the batteries.