Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Gamepad not detecting on macOS Catalina 15
Forum Updated to NodeBB v4.3 + New Features

Gamepad not detecting on macOS Catalina 15

Scheduled Pinned Locked Moved Unsolved General and Desktop
12 Posts 5 Posters 2.1k Views 4 Watching
  • 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.
  • B Offline
    B Offline
    bluezap
    wrote on last edited by
    #1

    I am having issues with the gamepad.

    I connect my xbox one controller to my mac (Catalina 15) and even running the simple gamepad test, it throws the error "Gamepads not found" I have already installed the latest drivers from the xbox360 github. I have tried the wired connection and also the Bluetooth connection. Nothing seems to find the controller. I have seen many people complain about this but haven't seen any fixes. How would I get this working on my mac?

    Thanks!

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi and welcome to devnet,

      Is the controller properly found by the system ?

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • B Offline
        B Offline
        bluezap
        wrote on last edited by
        #3

        yes shows up fine on the xbox360 driver GUI and other testing apps

        1 Reply Last reply
        0
        • B Offline
          B Offline
          bluezap
          wrote on last edited by
          #4

          Does anyone have any idea why this is happening and how to fix it?

          1 Reply Last reply
          0
          • B Offline
            B Offline
            bluezap
            wrote on last edited by
            #5

            Nobody has any answers to this? I have tried contacting the devs and QT technical support directly as well. It's very strange that such a big issue is going unanswered.

            1 Reply Last reply
            0
            • Kent-DorfmanK Offline
              Kent-DorfmanK Offline
              Kent-Dorfman
              wrote on last edited by
              #6

              Post your sample/test code. Also, make sure your Qt app has the correct privilege level to read the USB events. I'm not a MAC guy so I do not know what's involved doing that on your platform. I've used xbox360 on many occasions under linux, and aside from mapping the buttons and pots correctly, it's pretty much plug-n-play. Keep in mind that if the particular xbox-one USB vendor/product ID isn't recognized by the x360 driver then it won't be enumerated at all.

              I light my way forward with the fires of all the bridges I've burned behind me.

              1 Reply Last reply
              0
              • B Offline
                B Offline
                bluezap
                wrote on last edited by bluezap
                #7

                The test code is simply the "simple test" for the gamepad in the example projects inside QT creator. I'm not doing anything special. I've used multiple controllers from different vendors and it doesn't recognize it. This issue on the mac has gone unanswered for 3 years now, the first bug report was opened in 2017, and yet QT still mentions that the gamepad is supported on the mac in their official website.

                I have opened a new bug report as well with absolutely no responses from QT.

                Also these gamepads i'm trying are recognized fine on my linux machine. I need this to work on my mac so that I don't need to keep jumping in-between distributions.

                Note: all privileges have been granted to QT. I've even completely disabled all security features.

                19:45:28: Starting /Users/user/Qt/Examples/Qt-5.12.6/gamepad/build-simple-Desktop_Qt_5_12_6_clang_64bit-Debug/simple.app/Contents/MacOS/simple ...

                error:

                qt.gamepad: Available backends: ("darwin")
                qt.gamepad: Loading backend "darwin"
                Did not find any connected gamepads
                
                1 Reply Last reply
                0
                • Kent-DorfmanK Offline
                  Kent-DorfmanK Offline
                  Kent-Dorfman
                  wrote on last edited by
                  #8

                  @bluezap said in Gamepad not detecting on macOS Catalina 15:

                  I've used multiple controllers from different vendors and it doesn't recognize it.

                  doesn't recognize "it" or doesnt recognize any USB gamepad?

                  I light my way forward with the fires of all the bridges I've burned behind me.

                  B 1 Reply Last reply
                  0
                  • M Offline
                    M Offline
                    MrShawn
                    wrote on last edited by
                    #9

                    If you run the QML example will it work?

                    I recently just tried using QGamePad, at first it seems to not work but it actually does. On the apps startup every time there are no available gamepads. I actually hooked it up to a timer and have it try again, the second time it finds the gamepad and works.

                    The behavior i strange, I am not sure why but I noticed that even though it was saying the gamepad wasnt working, in the QML example when I put in inputs from the gamepad they were being detected so I figured something was up, thats when i tried that timer approach. Here is a snippet of my code.

                    connect(&mtimer,&QTimer::timeout,this,[&](){
                            auto gamepads = QGamepadManager::instance()->connectedGamepads();
                            if (gamepads.isEmpty()) {
                                qDebug() << "Did not find any connected gamepads";
                                return;
                            }
                            m_gamepad = new QGamepad(*gamepads.begin(), this);
                           
                           //connect gamepad signals to your slots now....
                    
                            mtimer.stop();
                        });
                    
                    mtimer.start(1000);
                    
                    

                    I connect the timer's timeout signal to a lambda which checks to see if there are any gamepads, if it doesn't find one (which it never does the first time for me) it will try again until it does. This is within my class constructor, mtimer and m_gamepad are class members. I also start the timer again when the gamepad disconnects, this way it will pick it back up if the gamepad reconnects.

                    Hope that helps, good luck.

                    -Shawn

                    B 1 Reply Last reply
                    0
                    • Kent-DorfmanK Kent-Dorfman

                      @bluezap said in Gamepad not detecting on macOS Catalina 15:

                      I've used multiple controllers from different vendors and it doesn't recognize it.

                      doesn't recognize "it" or doesnt recognize any USB gamepad?

                      B Offline
                      B Offline
                      bluezap
                      wrote on last edited by
                      #10

                      @Kent-Dorfman Yes, the gamepads

                      1 Reply Last reply
                      0
                      • M MrShawn

                        If you run the QML example will it work?

                        I recently just tried using QGamePad, at first it seems to not work but it actually does. On the apps startup every time there are no available gamepads. I actually hooked it up to a timer and have it try again, the second time it finds the gamepad and works.

                        The behavior i strange, I am not sure why but I noticed that even though it was saying the gamepad wasnt working, in the QML example when I put in inputs from the gamepad they were being detected so I figured something was up, thats when i tried that timer approach. Here is a snippet of my code.

                        connect(&mtimer,&QTimer::timeout,this,[&](){
                                auto gamepads = QGamepadManager::instance()->connectedGamepads();
                                if (gamepads.isEmpty()) {
                                    qDebug() << "Did not find any connected gamepads";
                                    return;
                                }
                                m_gamepad = new QGamepad(*gamepads.begin(), this);
                               
                               //connect gamepad signals to your slots now....
                        
                                mtimer.stop();
                            });
                        
                        mtimer.start(1000);
                        
                        

                        I connect the timer's timeout signal to a lambda which checks to see if there are any gamepads, if it doesn't find one (which it never does the first time for me) it will try again until it does. This is within my class constructor, mtimer and m_gamepad are class members. I also start the timer again when the gamepad disconnects, this way it will pick it back up if the gamepad reconnects.

                        Hope that helps, good luck.

                        -Shawn

                        B Offline
                        B Offline
                        bluezap
                        wrote on last edited by
                        #11

                        @MrShawn Hi, thank you for your reply. Yes, I have tried this approach as well with absolutely no luck. Are you running macOS Catalina? if so did you install any additional drivers etc?

                        I simply don't understand why QT says gamepad supports the macOS when it clearly does not. Can we all please complain about this, false advertising at it's best.

                        1 Reply Last reply
                        0
                        • GerMcBrainG Offline
                          GerMcBrainG Offline
                          GerMcBrain
                          wrote on last edited by
                          #12

                          i run exactly in the same situation like "bluezap"

                          • macOS 10.15.7 Catalina
                          • Qt 15.12.2
                          • USB Wired XBox360 Controller
                          • 360Controller Driver (v1.0.0-alpha.6). the controller is shown and i can test all buttons, ... in the test-tab.

                          i also tried the approach from "MrShawn" with the timer. i got no connected gamepads. :(

                          @bluezap did you found a solution to use a XBox360 Controller on macOS Catalina?

                          1 Reply Last reply
                          0

                          • Login

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Users
                          • Groups
                          • Search
                          • Get Qt Extensions
                          • Unsolved