Push buttons issues on Alps RKJXT1F42001

Cant get this Alps joystick switch to work.

When ever i press the push button its ok, BUt it also engage when i press Up/Down/Right/Left

Tried all sorts of groundings and swaps. Still same, push is always on when pressing those directions.

Any tips? Tried 10k pull down resistor to pin its connected to, and also on the ground side. No diff.

Would really need some tips to this, i see the drawings is showing ON for the push on all the directions on the 4 way, but there must be a way so the push buttons works even without triggering the other to ON as well.


Any tips?

Yes post a picture of your schematic.


i have the same problem and like to give more details
the ALPS is connected to my adruino micro

A,B,C,D - hat switch directions are connected to digi input 2,3,4, 5
Push - hat switch button ist connected digi input 6
Encoder function to 7 and 8
COM and Encoder COM connected to GND

let me try to explain what is happening
when i open the game controller under windows 10 i get the following behavoir

pressing pushbutton → OK, single signal
turning the encoder → OK, 2 signals
moving the hat switch to up, dow, left, right (after click) will delvier the desired button signal → OK, 4 signals

!!! BUT - moving the hat switch to one of the mentioned directions will also activate the push button singal

i am using this hat switch also with a special board having a SW solution to avoid digital inputs as soon a button is being pressed - this allows a 100% function of this 7 way switch

BUT with my micro i am not able to add such a CODE/SOFTWARE logic. Meaning i like to tell my sketch - Please ignore digi input 6 at the time digi inputs 2,3,4 or 5 is being activated

I hope you can help me

the code is produced by a SW called simhub - it allows a modular way add different items to the code - I added it as zip file too


too long to post

alps.pdf (580 KB)


test1.zip (48 KB)

I hope you can help me

Same problem as the OP, you do not give a schematic.

sorry, will draw one

schematic attached

Sorry but this is not a schematic.

Your switch components should be drawn like this:-

And your Arduino must be drawn as a box with the pins in any order but the pin names should be next to them on the outside, along with the pin numbers on the inside.

i hope this is what you need and accept :slight_smile:

i hope this is what you need

|500x442 Thanks this makes it clear what you have.

moving the hat switch to one of the mentioned directions will also activate the push button singal

Can you write a very short sketch that illustrates the problem. I did download the zip file but it was very long and a bit tangled looking. I think you might have a problem with the push connection because it is connected to the four direction contacts.


indeed this is the problem - this switch is designed to co-activate the push when activating one of the A,B,C,D

what do you mean by writing a sketch - should i do a reduced arduino program file. or should i explain to you what is happening if i press the different buttons


what do you mean by writing a sketch

A program. In the Arduino world a sketch means some code.


unfortunately i am not able to sketch it on my own
i will try to streamline the sketch - meaning delete all not needed parts
meanwhile i did a short update chart showing the button logic


actions 1-2-3-4 are the mentioned hat switch directions - up, down. left, right
as soon i am moving the stick to one of those directions and activate the click in this direction i get the respective button signal
action 1->acitivates pin2 signal & pin6 signal
action 2->acitivates pin3 signal & pin6 signal
action 3->acitivates pin4 signal & pin6 signal
action 4->acitivates pin5 signal & pin6 signal
as detailed in the picture i also get an additional button signal → always pin6

if i press the heat switch button - called push i get the standalone pin 6 signal
action 5->activated pin6 signal

encoder - when you tunr the hat stick left and right - is working
action 6->activated pin 7 signal
action 7->activated pin 8 signal

I am looking for a solution to avoid the co-activation of the pin6 signal described in PART1

I hope this helps

unfortunately i am not able to sketch it on my own

So you didn't write that code you posted, you never said. So where did it come from and have you got a link?

Describing the effects you see on some one else's code is unfortunately not very helpful. What we need to know are things like are the internal pull up resistors enabled on the inputs. What happens with pin 6? Is this an input or an output. Do you do anything with pin 6 in the reading process?

I don't have that component, was the code designed for that component or is another type recommended? Are there any pull down, or series resistors that you are missing from that schematic?

peterwinkler: the code is produced by a SW called simhub - it allows a modular way add different items to the code - I added it as zip file too

i tried to share that i am not an expert - sorry for this there is a SW called simhub - this allows to create for different items (gauges, LEDs, display, buttons, buttons matrix, encoder) ready to use arduino codes. I am doing many free to use HW projects with this - only thing i was not able to solve is this 7 way switch :-) https://www.thingiverse.com/peterwdorf/designs

in case help is not possible i fully understand - this code is a monster and i fully respect in case it is to much work to read, understand and fix it

I was maybe hoping that there would be a "easy" conditional logic i can add to avoid the problem i described

Sorry in case i was asking for something impossible

THX Peter

there is a SW called simhub



That is just the box, which in terms of coding and electronics is irrelevant.


i was just sharing my projects to understand where i am coming from i a trying to do a lot for DIY people - but i am a HW guy :-) no SW expert :-(


You still didn’t answer:-

was the code designed for that component or is another type recommended?

I am after the original schematic to see if that is any different from what you posted.

Have you tried this?

the code is designed for general button inputs and encoders

when it come to this component - it is used in many simracing wheels but those use expensive and commercial PCBs

and my plan is to open this 7 way stick to my DIY community running Arduino

i found one solution, but i got stuck to get it into my environment https://github.com/darjusp/test


In the code you posted there is a call to load a joystick library. This is nowhere in your code so where did it come from. I also notice that the code you linked to had pullup and pulldown resistors like I mentioned. I still don’t know where you got your schematic from.

Dear Mike,

thanks you taking the time and read the code
the joystike lib came with the simhub SW installation

the schematic i was drawing - tried to understand the logic of this stick
and connected it to the arduino based on my best knowledge

this stick does not have good ressources in combination with the arduino

to get the encoder working i had to select Encoder 1 pullup resistor - if i do not set this to on the whole stuff was not working - see 2.jpg

Many Thanks

Joystick.zip (21.1 KB)

OK fine. Is everything as it should be now?