-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[EG Starts Arcade] Joystick mapping(detected&working) #6
Comments
Hi @lars-derichter, Have you updated McAirpos with the latest changes?; |
Hi @Vegz78 thank you for replying. I have the latest version. I have been playing around with it today. It does not work out of the box. I should look into it in more detail myself, but this will have to wait for a couple of days. |
Hi @lars-derichter , From what I can infer without testing your setup, I would’ve expected it to be detected(like the retro-bit controller) and having mapped: However I discovered a bug where uinput-mapper creates an input event in between existing events instead of after highest event number(no buttons work, wrong input event is sent to game). I’m working on this now, soon to update. Do none of your buttons work or some? You could now also try the Sorry for the inconvenience, I’m having a steep learning curve here regarding testing for other systems/setups than my regular own... |
Hi @Vegz78 Thank you for your time. None of the buttons nor the joystick work. I am also new to this and I haven't found out yet how to get the button codes like @Kay-Wolfe did. |
Hi again |
The start input of
I have put this in arcade.cfg.
With nomap option I can use A B X Y as a grid of buttons for movement and LS (Z) and RS (C) as A and B in arcade. START and SELECT are used to reset and exit game. |
Sorry for the late reply, @lars-derichter. The main challenge(apart from clean exit out of games and adding a 2nd controller) has mainly been to get the analog(EV_ABS) joystick/directional events to play nicely with the MakeCode Arcade games' executables. Could you please do another |
Hi @Vegz78 I have just tried it. The joystick and buttons work out of the box now 👍, but the games freeze a lot. I could not play for more than 30 - 60 seconds without the system hanging. A couple of times I could exit from the game wit [CTRL]+[C], but a couple of other times I had to reboot to get out of the game. |
Ok, thx for your test and reply, @lars-derichter! I am thinking that your use case maybe is the direct opposite from mine, where I now have a lot of different controllers lying around in the house and where I wanted in general to have a wide support out of the box. But this also means a lot of redundant and extra mappings and functions, which strains the uinput-mapper pipe, and I had some of the same issues as as you in the start when I went from my RPi4 developer machine to my sons older RPi3. Probably still some issues with my layman’s coding and buttons chosen as well, and maybe the way the game files work, but it seemed more stable with only the keyboard controls directly, even though it mostly works fine enough here now. Wheras you, if I understand correctly, seem to have more of a fixed arcade setup with only the need to support the EG Starts 2 Arcade joysticks and buttons? My suggestion then would be a setup where most digital(EV_KEY) buttons are mapped in /sd/arcade.cfg directly, and the uinput mapping is stripped to a minimum with regards to mappings and code logic for the two EV_ABS sticks in one arcadeX.py file. This would also be of great help for me to find or rule out any remaining code logic errors, and we would also hopefully get a working arcade setup/template for EG Starts 2 Arcade joystick and maybe other similar ones. I could draft a setup if you could please provide me with the following:
I guess I will hear back from you soon, if interested. I will be a little less responsive the next week or so, needing some shift of focus, but I have not abondoned the project. |
Hi @lars-derichter, Does the newest update give some stability improvements, or should we try together with me drafting an arcade.py config based on the information from you that I requested above, and which would be very helpful? |
As mentioned by @lars-derichter above, the EG Starts Arcade controller works out of the box.. I am therefore closing this issue as resolved. If the instability issue mentioned persists, it’s better suited for a new issue. |
From @lars-derichter:
I think I have a similar problem, with EG Start Arcade setup
output from
more /proc/bus/input/devices
I: Bus=0003 Vendor=0079 Product=0006 Version=0110
N: Name="DragonRise Inc. Generic USB Joystick "
P: Phys=usb-0000:01:00.0-1.4/input0
S: Sysfs=/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.4/1-1.4:1.0/0003:0079:0006.0002/input/input16
U: Uniq=
H: Handlers=event5 js1
B: PROP=0
B: EV=1b
B: KEY=fff 0 0 0 0 0 0 0 0 0
B: ABS=3002f
B: MSC=10
and output from
input-read -v -p /dev/input/event5
Input: 0 Type: EV_KEY
BTN_TRIGGER → ([0, EV_KEY], BTN_TRIGGER)
BTN_THUMB → ([0, EV_KEY], BTN_THUMB)
BTN_THUMB2 → ([0, EV_KEY], BTN_THUMB2)
BTN_TOP → ([0, EV_KEY], BTN_TOP)
BTN_TOP2 → ([0, EV_KEY], BTN_TOP2)
BTN_PINKIE → ([0, EV_KEY], BTN_PINKIE)
BTN_BASE → ([0, EV_KEY], BTN_BASE)
BTN_BASE2 → ([0, EV_KEY], BTN_BASE2)
BTN_BASE3 → ([0, EV_KEY], BTN_BASE3)
BTN_BASE4 → ([0, EV_KEY], BTN_BASE4)
BTN_BASE5 → ([0, EV_KEY], BTN_BASE5)
BTN_BASE6 → ([0, EV_KEY], BTN_BASE6)
Input: 0 Type: EV_ABS
ABS_X → ([0, EV_ABS], ABS_X)
Properties: Max: 255 Min: 0 Fuzz: 0 Flat: 15
ABS_Y → ([0, EV_ABS], ABS_Y)
Properties: Max: 255 Min: 0 Fuzz: 0 Flat: 15
ABS_Z → ([0, EV_ABS], ABS_Z)
Properties: Max: 255 Min: 0 Fuzz: 0 Flat: 15
ABS_RX → ([0, EV_ABS], ABS_RX)
Properties: Max: 255 Min: 0 Fuzz: 0 Flat: 15
ABS_RZ → ([0, EV_ABS], ABS_RZ)
Properties: Max: 255 Min: 0 Fuzz: 0 Flat: 15
ABS_HAT0X → ([0, EV_ABS], ABS_HAT0X)
Properties: Max: 1 Min: -1 Fuzz: 0 Flat: 0
ABS_HAT0Y → ([0, EV_ABS], ABS_HAT0Y)
Properties: Max: 1 Min: -1 Fuzz: 0 Flat: 0
Input: 0 Type: EV_MSC
MSC_SCAN → ([0, EV_MSC], MSC_SCAN)
Hope this helps
Originally posted by @lars-derichter in #5 (comment)
The text was updated successfully, but these errors were encountered: