Arduino Playstation 2 Controller Library Troubleshooting Guide

Posted in Arduino Libraries by Bill
27 Mar 2011
Arduino Playstation 2 Controller Library Troubleshooting Guide

Ok, if you are here, you are having trouble getting your Arduino talking to your PlayStation 2 Controller via my Handy Dandy PS2X Library. Well, never fear, I stand by my leet coding abilities (Ha! who am I kidding? Really though, the library works, there’s tons of examples using it.) and I’m here to help. The problem is there’s not much I can really do unless you live near North Florida and want to come pay me a visit. It’s hard giving help over the internet! But maybe I can guide you in the right direction with this troubleshooting guide.

I’ll walk you through some debugging steps, and you should follow through with me with DEBUG off until I tell you to enable it and using the example sketch unmodified. In-between attempts, power off the Arduino and controller for 10 seconds before testing it again.  I’ll bold the quick steps if you want to skim through.

A little background first. I have not personally reverse engineered the communications protocol a PS2 controller uses. That has been done by a few other cool guys like this one.  I used what they reported in writing the PS2X library. As far as I know Sony has never official published the communications protocol to the public, so reverse engineering efforts is all we have to go on. This has lead to a few problems; for example some controllers just don’t behave like others. From the various sources around the web, the best chance of success comes from using ‘Official’ Sony controllers, and not the cheap knock-offs, 3rd  party controllers. There’s also some links with wireless controllers not working well either. Personally I have tried a wired Sony controller, and a few wireless Guitar Hero Controllers all with success, powered at 5V and no resistors.

Therefore the first thing to consider is what controller are you using? Can you try another brand, model?

Ok, now that we are past history of controllers, I’ll tell you this: 90% of the problems people have end up being related to wiring. I can’t look at your setup, so you are going to have to use your best judgment. Does the wiring look sound? Controller wires are thin and small and tend to break easily. During prototyping, I cut the ends off my wired controllers, stripped 1/4″ insulation off and heavily tinned the wires to create solid ‘pins’ that could be pushed into the female pinheader on the Arduino. This method worked, but was fragile. Later on I bought a few $5 PS2 controller extension cables and cut off the female receptacle end. I soldered the wires from the plug to PCB board and that worked well also.

 

Don’t trust the color scheme on the wiring picture. It can vary! Instead, use a voltmeter and test continuity between pin positions in the connector and the bare wires. I’ve had a few people report odd color schemes, and a few not realize what end of the connector they were looking at and got the wiring completely backwards. A quick check is to power up the controller, and pushing the ‘Analog’ button. Either the LED should have been on when it powered up, or it should light up when you press the button. If not, the controller isn’t getting power and you probably have the wiring reversed.

Alright, so you trust the wiring job, what next?

There are discussions over whether or not the controllers are tolerant of 5V logic. I’ve never had one burn out, so I believe they can handle “receiving’ 5V, but they still won’t ‘send’ 5V to the Arduino. It seems to me the one fix that seems to work the most is adding a 10k resistor between DATA (brown wire, or pin 1 on the controller port) and VCC (try both 3.3V and 5V in that order) on the Arduino.

This will help ‘pull-up’ the data line. Also there’s disagreement on what voltage to use to power the controller. A PlayStation powers the controller at 3.4V. I have always powered my controllers at 5V and had no problems, but it is risky. Controllers are so cheap on ebay though, why not try it? Try different voltages for power, switch between 3.3V and 5V, and for each voltage try it with and without the pull-up resistor on the DATA line .

One person claimed his controller wouldn’t work without level shifting all his wires, which means he just added resistors inbetween the controller’s pins and the Arduino.

The numbers he reported success with is as follow:

  1. 5V = 180 ohm, voltage drop of 1.85V (3.15v to the controller)
  2. ATT = 5.6K ohm, voltage drop of 1.08V (3.92 to the controller)
  3. CLK = 5.6K ohm, voltage drop of 1.15V (3.85 to the controller)
  4. CMD = 860K ohm, voltage drop of 1.39V (3.61 to the controller)

so you can give that a try as well. Though really, ignore the resistor on 5V and just connect the red power wire to 3.3V.

Some people report issues using pin 13 on the Arduino for CLK. Try moving the CLK line to another pin, and editing the example sketch to match.

If you have gotten this far and still no luck, you might just be out of luck. Controllers can go bad and some people just aren’t any good at wiring. But, there’s one more thing we can try messing with.

There’s a value in the ‘PS2X_lib.h’ file that governs the speed of the bus to the controller. It’s called ‘CTRL_CLK’ and you can find it by looking for this line:

#define CTRL_CLK        4

The PlayStation 2 talks to its controllers at 500kHz, or a value of ‘2’ in my library. Arduino tends to have issues setting a value that low, so by default I have it set at 4. You can try using 2 instead, and I’d also try using some higher number for a slower bus speed. Go from 2-20 and even 200 to see if you can get the controller talking. Remember to save the .h file every time you edit it, and re-compile the sketch.

Still no luck? Man you are killing me. I’ve dropped all my suggestions into this guide, so there’s not much else I can say even if you ask really nicely. Florida is nice year round, so feel free to come visit me and I will help you in person. Otherwise, you can try to enable debug. It won’t really help diagnosing wiring problems (or bad controllers) because all you will see is all FF’s or 0’s. But if you are getting some values, they may be something else going on. Drop the output in the Support Forum and I’ll see if I can help.

My last fleeting thoughts include removing the checks in the example. At the end of the setup function (after the switch statement and before the closing curly bracket ‘}’ ), add the following code:

error = 0;

type = 1;

This will bypass the error checking and run the code anyway. What do you get? Try pressing reset on the Arduino without disconnecting the controller. Anything?

Still need help?

Use the Support Forum to ask for help. Please don’t use the comments below.

Share
  1. 180 Comments.

    • Mountain_MattNo Gravatar says:

      This is a great project! I got this working today and am very excited to incorporate this into some of my projects. One question though, I ran the demo and noticed that the values for the joystick positions reach their max/min values along time before the full range of motion is reached. Is this typical to what others are seeing?
      Again thank you for sharing this excellent work!

      • BillNo Gravatar says:

        I have found it typical that there are a wide range of responses across the video game controller market. I don’t remember if my controller was bad like that as well, but would not be surprised if it was.

    • jrbotNo Gravatar says:

      Hi Bill,

      Just to let you know that we will again drive our robot thanks to your lib this year!

      Here you have code and schematics from last year robot: http://jrbot.blogspot.com/p/robot-2011.html

      It was for arduino 022 at the time. We’ll be updating for arduino 1.0 this time, and of course publish everything in due time. The kids are getting better at coding and building robots.

      Thanks again for your work, having the kids drive a real “thing” from a PS2 controller is a great argument to get them interesting into building stuff 🙂

    • JHNo Gravatar says:

      Hey Bill,
      Just wanted to let you know I was getting no data read(0x00 0x00 etc) with a normal PS2 controller and the following with a guitar hero controller

      1:FF 42:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN
      1:FF 42:1 0:10 0:7F 0:FC 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      Controller mode not matched or no controller found
      Expected 0x41 or 0x73, got 1
      No controller found, check wiring, see readme.txt to enable debug. visit http://www.billporter.info for troubleshooting tips
      Unknown Controller type

      on my Arduino Uno with the library and changing CTRL_CLK to 8 fixed it.

      Thanks a ton for the library and all the helpful documentation!

    • FritzNo Gravatar says:

      Hi, i don’t speak english very well. However i have this problem

      OUT:IN
      1:FF 42:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:41 0:5A 1:FF 0:FF
      OUT:IN Configure
      1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
      OUT:IN Configure
      1:FF 4F:F3 0:5A FF:0 FF:0 3:0 0:0 0:0 0:0
      OUT:IN Configure
      1:FF 43:F3 0:5A 0:0 5A:0 5A:0 5A:0 5A:0 5A:0
      OUT:IN
      1:FF 42:41 0:5A 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      Controller not accepting commands
      mode stil set at41

      where can i solve this problem or find the stil and set at 41?

      Thank you

    • AndyNo Gravatar says:

      Hi Bill,

      Thanks for taking the time to build such a great library for the controller.

      I’m having an issue with the connection of mine, I believe its probably down to incorrect wiring. The wiring on my lynxmotion adapter looks like this: http://i.imgur.com/u6vpb.jpg

      I’ve interpreted this as:

      Blue > CLK > Arduino Pin 13
      Yellow> ATT > Arduino Pin 10
      White > CMD > Arduino Pin 11
      Brown > DAT > Arduino Pin 12

      Would you say this correct or have I made an error in the wiring?

      Thanks 🙂

      • BillNo Gravatar says:

        Couldn’t be sure. The only way to correctly label all the correct wires is to compare the PS2 connector to the wiring diagram on this page. it’s the only true constant. Wire colors can change.

    • JoeNo Gravatar says:

      This may help a lot of users hooking up the ps2 to a nano.

      When I initially set mine up, I kept getting the controller not found error, yet if I rebooted the nano several times (sometimes 10x) it would “catch” and the controller would work.

      So I simply put a loop around:
      error = ps2x.config_gamepad(2,4,3,5);

      This solved my issue, so now the controller loads every single time.

      Hope others find this useful!

      • JanoschNo Gravatar says:

        Hi Bill!
        I tried out your PS2X library but have some problems:
        It says”No controller found,… Unknown Controller type”.
        (I have an Original Sony Dualshock2 gamepad).
        I tried with each 3.3v and 5v, with resistors…
        but it doesnt change anything.
        I also tried to”Debug”, but when I change the PS2X_Lib.h, Arduino(uno) says:

        C:\Arduino\libraries\PS2X_lib.cpp: In member function ‘boolean PS2X::read_gamepad(boolean, byte)’:

        C:\Arduino\libraries\PS2X_lib.cpp:135: error: ‘dword’ was not declared in this scope

        C:\Arduino\libraries\PS2X_lib.cpp:141: error: ‘dword2’ was not declared in this scope

        Some ideas?
        Thx

        • JanoschNo Gravatar says:

          Finally it works!
          (by adding a 10k pullup R to the Data Pin and only with the 1.4v lirary).
          Don’t now how to get it rumble?
          to what Pin should I connect the “7.5vdc” (for motors) cable?
          Thx a lot for this library!

        • KurtNo Gravatar says:

          I think I caused the compile issue. Sorry about that.

          I added code to try to make the connection more robust. Will also look into rumble…

          The problem in debug mode is that, I put the init code in a loop which added scope. Fix is to simply move these two lines:
          char dword[9] = {0x01,0x42,0,motor1,motor2,0,0,0,0};
          byte dword2[12] = {0,0,0,0,0,0,0,0,0,0,0,0};

          to just above:
          // Try a few times to get valid data…
          for (byte RetryCnt = 0; RetryCnt < 5; RetryCnt++) {

          That will get it out of that scope.

          Will check for more fixes, and work with Bill.

          But that should take care of compile issue

          • JanoschNo Gravatar says:

            I moved the lines and now I get:
            “OUT:IN Configure
            1:FF 43:FF 0:FF 1:FF 0:FF
            OUT:IN Configure
            1:FF 44:FF 0:FF 1:FF 3:FF 0:FF 0:FF 0:FF 0:FF
            OUT:IN Configure
            1:FF 43:FF 0:FF 0:FF 5A:…………………………………….
            ……………………….blablablbla(many numbers)….blabla…
            Controller mode not matched or no controller found
            Expected 0x41 or 0x73, got FF
            No controller found, check wiring….Unknown Controller type

            But it works fine with v1.4.

          • BillNo Gravatar says:

            Janosch,

            Try using THIS VERSION. It was my last update before Kurt made some big changes to add more compatibility/features/cleanup. Let us know if it works ok so we know where to look to fix it.

    • Cor'eNo Gravatar says:

      I would like to know if a PS3 wireless controller could be used on a PS2, i guess it could be used by the USB port on the PS2 and FMCB loads a USB driver, or by hardware – somehow the PS3 signals get converted to PS2 inputs.

      Any Ideas?

      • BillNo Gravatar says:

        It is within the realm of possibility, but would require an Arduino with HOST side USB at least, and tons of custom code that this library wouldn’t help you with. I’d start by finding the buy that wrote the opposite of my library, and Arduino that pretends to be a controller. I Think one of the trackbacks on my main library page points to a forum post by him.

    • MarkNo Gravatar says:

      When I try to get your PS2X_Example sketch to compile, I get the following errors. Am I doing something wrong?

      -oC:\Users\msailer\AppData\Local\Temp\build4460349875314078695.tmp\PS2X_Example.cpp.o
      In file included from PS2X_Example.cpp:1:
      C:\arduino-1.0-windows\arduino-1.0\libraries\PS2X_lib/PS2X_lib.h:68:22: error: WProgram.h: No such file or directory
      In file included from PS2X_Example.cpp:1:
      C:\arduino-1.0-windows\arduino-1.0\libraries\PS2X_lib/PS2X_lib.h:135: error: ‘boolean’ does not name a type
      [removed the rest, first line is your problem]

    • VishnuNo Gravatar says:

      I have tried the library on my PC and laptop, but after enabling debug, i get the following errors – E:\Softwares\arduino-1.0\libraries\PS2X_lib\PS2X_lib.cpp: In member function ‘boolean PS2X::read_gamepad(boolean, byte)’:
      E:\Softwares\arduino-1.0\libraries\PS2X_lib\PS2X_lib.cpp:135: error: ‘dword’ was not declared in this scope
      E:\Softwares\arduino-1.0\libraries\PS2X_lib\PS2X_lib.cpp:141: error: ‘dword2’ was not declared in this scope

      Please help.

    • VishnuNo Gravatar says:

      The library doesn’t seem to work on arduino 1.0.
      I have tried 2 controllers and still no results. It always shows – No controller found, check wiring, see readme.txt to enable debug. visit http://www.billporter.info for troubleshooting tips
      Unknown Controller type

      and when i enable debug, the code doesn’t compile giving a pile of errors. I am using the arduino mega 2560 with the sony SCPH-10010 controller.

      • BillNo Gravatar says:

        Try downloading the library again, replace the old version and re-compile your code. There was some efoort to increase compatibility with other MCUs and I think it’s causing problems.

    • KurtNo Gravatar says:

      I will take a look again. Have been using it, mostly on Arduino 1.0 systems.

      Yes the later change did make it compatible with Chipkit Pic32 systems (mpide), but that was not the main purpose for the changes.

      Earlier versions had no atomic write support in when it was manipulating the IO lines, which corrupted data, when other libraries such as the servo library changed IO lines during interrupts… Helped with a fix earlier that tried to guess when to enable or disable interrupts. That version helped, but we found it then held the interrupts disabled too long, which caused the servo pulse widths to vary, which gave robots the jitters. This last fix (minus compile error in debug mode fix), was to make all of the writes to be atomic. Also made these operations as fast as possible, by keeping the pins port bit mask instead of port pin number as to not have to do shifts each time. With these changes the jitters went away. There were a few other issues I also tried to address. At times the PS2 would drop out of Analog mode. Tried to detect this and then try to automatically get back in…

      For those who have problems, would be good to know how you configure your PS2. I normally keep mine without extra data or motors as I don’t use the extended pressures and the like. You might try this and see if that helps. Also I did most of my testing with Lynxmotion wireless PS2’s. Will see if I still have a wired Sony sitting around.

      Again will take another look through.

      Kurt

      • KurtNo Gravatar says:

        Update: yesterday I tried one of my hexapods with an Arduino Mega on it using Arduino 1.0. I verified that it still worked with current PS2 code, with a Lynxmotion wireless controller as well as an old Sony wired controller. Both worked. As usual the Sony one mechanically did not work as well as its joysticks do not track well back to their center points. Not a software issue…

        So again, for those who have problems, it would help to know what type of controller. Also if it worked on other versions of the code. If not could be several other issues, like some controllers may not work on 5.0V, some may require a stronger Pull-Up resister on their data line than the week PU that is internal to the Atmel chips…

        Kurt

        • Gary AlvarezNo Gravatar says:

          What was the PIN connections from your wireless controller to the MEGA !!

          Mine Are:

          CLK – 52
          CMD – 51
          ATT – 53
          DAT – 50

          SPI is different on MEGA than on UNO (which worked)

          UNO MEGA
          SCK 13 52
          MOSI 11 51
          SS 10 53
          MISO 12 50

          I tried the proper pins on the MEGA & it STILL didn’t work! HELP !!!

    • MousNo Gravatar says:

      Hello, I followed your advice and everything works perfectly.
      I put all the resistors as indicated. and the voltage is 3.3VDC

      I will send a very big “thank you” from Pais.

    • JorgeNo Gravatar says:

      Where goes (if goes somewhere) the whire 9 “acknoledge”

      Thanks

    • Gary AlvarezNo Gravatar says:

      Connected it to an Arduino UNO & it worked !

      Via pins 13,11,10 & 12

      clk = 13
      cmd = 11
      att = 10
      dat = 12 w/10K resistor on Data

      Tried same setup on Arduino MEGA & did not work. Has anyone gotten this to work with a MEGA with different pins other than 13,11,10,12 ? My Teeces lights use pins 7,8,9,10,11,12. Tried ALL suggestions in guide nothing worked !!

      Need help please !!!!

      Gary

    • MikeNo Gravatar says:

      Ok, I would like to say thanks for putting this out there, I just am having some problems getting this up and running.

      I am using the Arduino UNO R3, and a logitech wireless ps2 controller,

      http://www.amazon.com/gp/product/B0001VNNE8/ref=s9_simh_gw_p63_d0_g63_i1?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=center-2&pf_rd_r=0FVZ53DGT40BGE2QSNEK&pf_rd_t=101&pf_rd_p=470938631&pf_rd_i=507846

      I have the following pins connected in the following sequence,

      clk = 13
      cmd = 11
      att = 10
      dat = 12 w/10K resistor on Data(tried 3.3 and 5 v)

      I just keep getting the following error:

      OUT:IN
      1:FF 42:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      OUT:IN
      1:FF 42:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:FF 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0 0:0
      Controller mode not matched or no controller found
      Expected 0x41 or 0x73, got FF
      No controller found, check wiring, see readme.txt to enable debug. visit http://www.billporter.info for troubleshooting tips
      Unknown Controller type

      • BillNo Gravatar says:

        Are you still having problem Mike? Really everything I can suggest is written in this troubleshooting guide. Make sure you try all the suggestions.

Leave a Reply