mmoller2k / pikeyd

Universal Raspberry Pi GPIO keyboard daemon
111 stars 36 forks source link

Using Pikeyd and an Arduino #1

Closed PhillyNJ closed 10 years ago

PhillyNJ commented 10 years ago

Hi, I am using Pikeyd which uses an Arduino to translate a joystick movement into 4 output pins, setting them to High for up, down, left, right on the Raspberry Pi. In the below example, I have pin 13 connected to GPIO 22, which in Pikeyd will simulate the UP key. When I send pin 13 high, Pikeyd executes the KEY_UP, but when I set pin 13 low, Piked continues to have the KEY_UP executed. Basiclly it Pikeyd never tells uinput to go low.

Any ideas on how to resolve this?

pikeydarduino

bushrat011899 commented 10 years ago

Hi mate, hey you verified that your Arduino is sending the correct HIGH and LOW values using a multimeter or LED light or similar?

If so then check your Pi by wiring a small direct circuit using a resistor and some wire (follow the diagrams posted on the GitHub page)

Hope that helps.

Regards, Zac

On 29 May 2014, at 21:38, PhillyNJ notifications@github.com wrote:

Hi, I am using Pikeyd which uses an Arduino to translate a joystick movement into 4 output pins, setting them to HI for up, down, left, right. In the below example, I have pin 13 connected to GPIO 22, which in Pikeyd will simulate the UP key. When I send pin 13 high, Pikeyd executes the KEY_UP, but when I set pin 13 low, Piked continues to have the KEY_UP executed. Basiclly it Pikeyd never tells uinput to go low.

Any ideas on how to resolve this?

— Reply to this email directly or view it on GitHub.

PhillyNJ commented 10 years ago

Hi, I can verify 13 is High or low as applicable, via a multimeter. The diagram (wiring.png), shows using a switch which is pulled high when pressed. That works for my buttons, but how would I wire this up from an Arduino? The wiring.png, does not show a similar configuration. Keep in mind, I am not a good EE :) - I am learning.

bushrat011899 commented 10 years ago

Ok, what it seems you need is a way to "complete" the circuit using your Arduino. I'm not certain on an exact way to do this so bare with me.

One option would be to find out what signal the Pis pin is looking for and just send that directly. So for example, a wire between pin 7 on the pi and pin 13 on the Arduino and just set the 13 to high on press and low off press.

Again take what I'm saying with a grain of salt, but I think that could work.

Regards, Zac

On 29 May 2014, at 23:25, PhillyNJ notifications@github.com wrote:

Hi, I can verify 13 is High or low as applicable, via a multimeter. The diagram (wiring.png), shows using a switch which is pulled high when pressed. That works for my buttons, but how would I wire this up from an Arduino? The wiring.png, does not show a similar configuration. Keep in mind, I am not a good EE :) - I am learning.

— Reply to this email directly or view it on GitHub.

PhillyNJ commented 10 years ago

Thank Zac, as I mentioned, I am new to EE. Do you mean like this?

screen shot 2014-05-29 at 1 41 13 pm

PhillyNJ commented 10 years ago

I found the solution. It was right there in front of me. Since the GPIO is looking for a Pull Up, all I need to so is change my arduino pin to go LOW instead of HIGH when selected. Code is here: https://github.com/PhillyNJ/ArduinoParallaxJoystick