• Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
RetroPie forum home
  • Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

Fix Up/Left joystick direction for THT 2P arcade controller with device ID 0x75e1

Scheduled Pinned Locked Moved Help and Support
controllerxin mothtaxis
21 Posts 5 Posters 10.1k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R
    rkoster @zhaoyun
    last edited by 18 Jul 2017, 01:59

    @zhaoyun I just remembered something.

    Here is what I did:

    • Made the quirks change
    • Manually typed in the changes in the three files, rather than patch:

    hid_core.c added
    { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_3H_DUAL_ARCADE) },

    hid_core.h added
    #define USB_DEVICE_ID_3H_DUAL_ARCADE 0x05e0

    hid-xinmo.c added
    { HID_USB_DEVICE(USB_VENDOR_ID_XIN_MO, USB_DEVICE_ID_3H_DUAL_ARCADE) },

    • Went to follow the guide at https://www.raspberrypi.org/documentation/linux/kernel/building.md but with the following change:

    Instead of

    make -j4 zImage modules dtbs

    Type

    make -j4 zImage
    make -j4 modules
    make -j4 dtbs
    

    I had found that trying to do all three on one line didn't actually work.

    Then proceed with the rest:

    sudo make modules_install
    sudo cp arch/arm/boot/dts/*.dtb /boot/
    sudo cp arch/arm/boot/dts/overlays/*.dtb* /boot/overlays/
    sudo cp arch/arm/boot/dts/overlays/README /boot/overlays/
    sudo cp arch/arm/boot/zImage /boot/$KERNEL.img
    

    Then reboot.

    Github/helper scripts * Creativision/Arcadia/Astrocade guide * Amiga guide * Atari 8bit guide

    Z 1 Reply Last reply 18 Jul 2017, 02:25 Reply Quote 0
    • Z
      zhaoyun @rkoster
      last edited by 18 Jul 2017, 02:25

      @rkoster

      OK I followed the patch kernel guide mentioned in my OP and have only performed a "make" and a "make modules". from what I understand, it should already include zImage and modules, not sure if dtbs is included. Anyway, I'll try to follow exactly the steps you mentioned to compile again. Let you know the result later.

      1 Reply Last reply Reply Quote 0
      • S
        stuntstein
        last edited by 18 Jul 2017, 02:27

        If you didn't do below steps you never installed the new kernel. You have only compiled it.

        sudo make modules_install
        sudo cp arch/arm/boot/dts/.dtb /boot/
        sudo cp arch/arm/boot/dts/overlays/
        .dtb* /boot/overlays/
        sudo cp arch/arm/boot/dts/overlays/README /boot/overlays/
        sudo cp arch/arm/boot/zImage /boot/$KERNEL.img

        Z 1 Reply Last reply 18 Jul 2017, 02:31 Reply Quote 0
        • Z
          zhaoyun @stuntstein
          last edited by 18 Jul 2017, 02:28

          @stuntstein

          I have done this already. I have even quit to the command and run both evtest and jstest and both cannot detect up/left motion. So I believe it is more likely a device/kernel matter rather than emulationstation config matter.

          1 Reply Last reply Reply Quote 0
          • Z
            zhaoyun @stuntstein
            last edited by 18 Jul 2017, 02:31

            @stuntstein

            @stuntstein said in Fix Up/Left joystick direction for THT 2P arcade controller with device ID 0x75e1:

            If you didn't do below steps you never installed the new kernel. You have only compiled it.

            sudo make modules_install
            sudo cp arch/arm/boot/dts/.dtb /boot/
            sudo cp arch/arm/boot/dts/overlays/
            .dtb* /boot/overlays/
            sudo cp arch/arm/boot/dts/overlays/README /boot/overlays/
            sudo cp arch/arm/boot/zImage /boot/$KERNEL.img

            Yeah I have done "make install" and "make modules_install", but not the subsequent four lines of sudo cp. I assume make install at least do the zImage line, not sure if it also performed the dts lines.

            1 Reply Last reply Reply Quote 0
            • S
              stuntstein
              last edited by 18 Jul 2017, 02:31

              Ok, it just sounded like you only did the make.
              Can you check the build date of the running kernel to make sure that it is running yours?

              Z 1 Reply Last reply 18 Jul 2017, 02:39 Reply Quote 0
              • Z
                zhaoyun @stuntstein
                last edited by 18 Jul 2017, 02:39

                @stuntstein said in Fix Up/Left joystick direction for THT 2P arcade controller with device ID 0x75e1:

                Ok, it just sounded like you only did the make.
                Can you check the build date of the running kernel to make sure that it is running yours?

                I have forgotten most linux commands. Should I use "uname -a" to check build date?

                1 Reply Last reply Reply Quote 0
                • S
                  stuntstein
                  last edited by 18 Jul 2017, 02:43

                  @zhaoyun said in Fix Up/Left joystick direction for THT 2P arcade controller with device ID 0x75e1:

                  I have forgotten most linux commands. Should I use "uname -a" to check build date?

                  Try it.
                  According to my master, Google, you should use uname -v for "kernel version information" :-)
                  https://unix.stackexchange.com/questions/264833/find-linux-kernel-build-date-time

                  1 Reply Last reply Reply Quote 0
                  • R
                    rkoster
                    last edited by 18 Jul 2017, 02:55

                    At this point, I'd type in all three make -j4 lines. If they are current, it'll just say so and finish quickly. If not, then you are catching something that didn't compile.

                    The first time I tried this process, and put the three targets on one line after make, it resulted in a built kernel that was half and half... which I then copied over, and I had to wipe the SD card and start from scratch :)

                    I wouldn't follow the ithink.ch kernel building guide. I would follow the one at https://www.raspberrypi.org/documentation/linux/kernel/building.md

                    Github/helper scripts * Creativision/Arcadia/Astrocade guide * Amiga guide * Atari 8bit guide

                    Z 1 Reply Last reply 23 Jul 2017, 16:53 Reply Quote 0
                    • Z
                      zhaoyun @rkoster
                      last edited by 23 Jul 2017, 16:53

                      @rkoster said in Fix Up/Left joystick direction for THT 2P arcade controller with device ID 0x75e1:

                      At this point, I'd type in all three make -j4 lines. If they are current, it'll just say so and finish quickly. If not, then you are catching something that didn't compile.

                      The first time I tried this process, and put the three targets on one line after make, it resulted in a built kernel that was half and half... which I then copied over, and I had to wipe the SD card and start from scratch :)

                      I wouldn't follow the ithink.ch kernel building guide. I would follow the one at https://www.raspberrypi.org/documentation/linux/kernel/building.md

                      It took me several days to discover that the -j4 flag caused instability to my original version of pi which held up the compiling process, and it took me another couple of days to finally finish the compile. And I wish to update you that the pi can now recognise the joystick.

                      But the compiling really took a lot of time and I guess a lot of unnecessary modules were compiled. I am now trying to compile again using localmodconfig rather than bcmrpi_defconfig as the config set. I believe it takes much less time and still get the result.

                      Anyway, I think the emulator itself is another challenge, especially the mame. I totally don't know how the roms can be run. But this is another story......thanks everyone anyway.

                      1 Reply Last reply Reply Quote 0
                      • S
                        stuntstein
                        last edited by 23 Jul 2017, 16:59

                        Hi Zhaoyun,
                        Glad that you finally got it working. If you find a quicker way to build please let us know.
                        I was considering building on a more powerful linux machine but never found time to set it up.

                        1 Reply Last reply Reply Quote 0
                        • G
                          godsephiroth
                          last edited by 24 Aug 2017, 10:54

                          @zhaoyun Hi man! I'm having the left up problem with a 05e0 controller and I was going to follow this guide
                          http://ithink.ch/blog/2013/09/08/patching_the_linux_kernel_to_install_the_xin-mo_dual_arcade_driver_on_a_raspberry_pi.html
                          then I wanted to search for more info and I saw that the patch in that guide is for 0x05e1. I saw that you could resolve the problem with 05e0 and if you could make me a guide or explain me how did you do that I would really appriciate. I don't know nothing about this things and I don't even know how to edit the patch to change to 05e0.
                          hope you see this and can help me cause you will really save me the day. thanks a lot.

                          R 1 Reply Last reply 26 Aug 2017, 19:26 Reply Quote 0
                          • R
                            rkoster @godsephiroth
                            last edited by 26 Aug 2017, 19:26

                            @godsephiroth If you follow the instructions in my post here: https://retropie.org.uk/forum/topic/7832/fix-up-left-joystick-direction-for-tht-2p-arcade-controller-with-device-id-0x75e1/9 it should work for 05e0. The location in each file to make those edits is most easily found if you just

                            sudo nano <filename>
                            search for XIN_
                            add the line right after the existing entry

                            Github/helper scripts * Creativision/Arcadia/Astrocade guide * Amiga guide * Atari 8bit guide

                            1 Reply Last reply Reply Quote 0
                            • First post
                              Last post

                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.

                              This community forum collects and processes your personal information.
                              consent.not_received