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

    Xinmo Controller Config and Remote Access

    Scheduled Pinned Locked Moved Help and Support
    retropicontrollerconfigremote shell
    15 Posts 2 Posters 1.3k 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
      rfxcasey
      last edited by

      I have a older serial X-arcade dual controller that I have converted to USB using a Xin Mo 2 player board. All buttons seem to be working however RetroPi (updated to latest version) on my Raspberry Pi 3b+ is only seeing it as one controller. There is a Wiki for the Xin Mo regarding this issue and the latest solution is to simply edit the /boot/cmdline.txt file, adding the line at the bottom "usbhid.quirks=0x16c0:0x05e1:0x040". While I have some previous Linux experience I am by no mean a Guru and can only assume this is a vendor name or config added to properly utilize the interface board. Anyways, I'm rusty as heck on my Linux cmd line commands, it appears the cmdline.txt file is write protected. Can someone tell me how to access and change it using nano or vi? Also, since I'm using the Pie 3b+ I can see it on my network and have access to the roms folder and a few others on my Windows desktop machine. Does anyone know the currently preferred remote access method used with Retro Pi, does the current version come with a shell utility or something? I used to run a Linux based Smoothwall firewall machine in front of my network switch and would often remote shell into it to change config files and such. Though I can see the default shared folders on my Retro Pi machine over my network I don't have access to anything else like the "/boot directory" and such. Security is not a huge issue but I'd still like to keep with good practice instead of just making the whole OS accessible over the network. It'd be nice to be able to remote shell into the thing and transfer files via something like WinSCP like I used to on my Smoothwall machine. Remote backup would be highly desirable as well. Hopefully some Guru will take the time to walk me through step by step so I don't screw something up. Love the flexibility and customization available in Linux but she can be a daunting beast. Sorry for the big all in one question but I'd really like the accomplish all these things. Main thing right now though is editing that cmdline.txt file, remotely if possible.

      R 1 Reply Last reply Reply Quote 0
      • R
        rfxcasey @rfxcasey
        last edited by

        @rfxcasey Ah, forgot all about Putty and sudo commands, I used to use that with my Smoothwall as well. Yeah, it's been a while, rusty as all get out.

        1 Reply Last reply Reply Quote 0
        • mituM
          mitu Global Moderator
          last edited by

          As you probably discovered, to edit the file, just connect via SSH (you'll need to enable it first, it's in the docs) and run sudo nano /boot/cmdline.txt to add the necessary parameters.
          Or you could take the alternate configuration path and add a configuration file for the kernel module by adding a .conf file in /etc/modprobe.d and adding

          options usbhid quirks=0x0314:0x0328:0x040
          

          to it.

          1 Reply Last reply Reply Quote 0
          • R
            rfxcasey
            last edited by rfxcasey

            That command is not working, I notice the post at the bottom has 'usbhid quirks' while the first command listed is 'usbhid.quirks' which is correct? The first bit of code I addes as a line to cmdline.txt and rebooted but it still only sees my Xin mo as once controller. And the accompanying code after the '=' what is that, why is it different in the two posts and does it change based on which USB port your using?

            mituM 1 Reply Last reply Reply Quote 0
            • mituM
              mitu Global Moderator @rfxcasey
              last edited by

              @rfxcasey said in Xinmo Controller Config and Remote Access:

              That command is not working, I notice the post at the bottom has 'usbhid quirks' while the first command listed is 'usbhid.quirks' which is correct?

              That's not a command, but the contents of the modprobe configuration file, which has a different syntax than the kernel command line.

              The first bit of code I addes as a line to cmdline.txt and rebooted but it still only sees my Xin mo as once controller. And the accompanying code after the '=' what is that, why is it different in the two posts and does it change based on which USB port your using?

              No, it doesn't change based on the port. Post your cmdline.txt here, surrounded by code marks ( ``).

              1 Reply Last reply Reply Quote 0
              • R
                rfxcasey
                last edited by rfxcasey

                OK will do, and sorry, yes I misspoke, but since you seem to know what you're doing is their any way we can chat instead or are such requests frowned upon here?

                mituM 1 Reply Last reply Reply Quote 0
                • mituM
                  mitu Global Moderator @rfxcasey
                  last edited by

                  @rfxcasey I think you're missing the point of a forum.

                  R 1 Reply Last reply Reply Quote 0
                  • R
                    rfxcasey @mitu
                    last edited by

                    @mitu LOL! Oh, I know it's just a time thing. Anyways, awesome, I enabled SSH in RetroPi, wrote down the IP of the machine, plugged the IP into Putty making sure SSH was the protocol and BAM, I'm in like Flynn. Here's the contents of my /boot/cmdline.txy file:

                    dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p11 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait loglevel=3 consoleblank=0 plymouth.enable=0
                    usbhid.quirks=0x16c0:0x05e1:0x040

                    mituM 1 Reply Last reply Reply Quote 0
                    • mituM
                      mitu Global Moderator @rfxcasey
                      last edited by

                      @rfxcasey Did you add the usbhid.quirks=0x16c0:0x05e1:0x040 on the same line with the other parameters or on a separate line ? It should be on the same line - but from what your posted it looks like it's on the next line.

                      R 1 Reply Last reply Reply Quote 0
                      • R
                        rfxcasey @mitu
                        last edited by

                        @mitu Yes, the first two lines in my post are all on the same line as originally and I haven't touched that line, it's just the way it pasted in this reply box for the forum. The line I added is the last line and is also on it's own seperate line.

                        Took the liberty of running lsusb and here is the output:
                        pi@retropie:/ $ lsusb
                        Bus 001 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver
                        Bus 001 Device 005: ID 16c0:05e1 Van Ooijen Technische Informatica Free shared USB VID/PID pair for CDC devices
                        Bus 001 Device 006: ID 0424:7800 Standard Microsystems Corp.
                        Bus 001 Device 003: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub
                        Bus 001 Device 002: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub
                        Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
                        pi@retropie:/ $

                        R 1 Reply Last reply Reply Quote 0
                        • R
                          rfxcasey @rfxcasey
                          last edited by

                          @rfxcasey Oh, sorry just read what you typed again, yeah I put it on a new line as per the Wiki for retropi with Xin Mo https://github.com/RetroPie/RetroPie-Setup/wiki/Xin-Mo-Controller

                          mituM 1 Reply Last reply Reply Quote 0
                          • R
                            rfxcasey
                            last edited by

                            Oh, sorry just re read what you said, I'm God aweful tired. No it's not on the same line as you're saying it should be. I was just following the instructions found here. https://github.com/RetroPie/RetroPie-Setup/wiki/Xin-Mo-Controller

                            1 Reply Last reply Reply Quote 0
                            • mituM
                              mitu Global Moderator @rfxcasey
                              last edited by

                              @rfxcasey the Wiki says:

                              Add the following to /boot/cmdline.txt -- just add a space to the end of the existing entry, so it is all on one line):

                              Where did you read to put it on a new line ?

                              1 Reply Last reply Reply Quote 0
                              • R
                                rfxcasey
                                last edited by

                                Ah, crap, I don't know, yeah I see it now, my brain is fried from work and lack of sleep. I don't know, somehow my brain saw add a new line, I think it was my dyslexia kicking in. Hold on and I'll fix it and hopefully I'll work now. JEEEZ, I need off of 3rd shift.

                                1 Reply Last reply Reply Quote 0
                                • R
                                  rfxcasey
                                  last edited by

                                  AWESOME!!! Just testing it out, when I went into RetroPi configure controller it recognized it as 2 gamepads right away, configured each and was instantly playing some Street Fighter Alpha 3 with my 5 year old. I works great! Thanks for the help, should have notice my mistake, the devil is in the details as they say. I read so much I have developed a tendency to be lays and just speed read without even realizing I'm doing it. I my brain just saw 'add to it's own line' for some reason. Anyways the device should be included by default and hopefully this will be fixed in a new version so folks don't have mess with it manually. Guess my wiring job was spot on, I don't have any issues now. Thanks again.

                                  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.