Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse
Brand Logo

ModalAI Forum

  1. ModalAI Support Forum
  2. Ask your questions right here!
  3. doodle labs and joystick setup

doodle labs and joystick setup

Scheduled Pinned Locked Moved Ask your questions right here!
30 Posts 2 Posters 5.4k Views 1 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.
  • Jetson NanoJ Jetson Nano

    @Eric-Katzfey yes , I am using the QGC to map joystick buttons. I am using the voxl-fpv-dev version from the modalai px4 repo. I am using the FPV 4-in-1 ESC. I am not able to get more than 2 toggle switches and also not able to assign them two way.

    Eric KatzfeyE Online
    Eric KatzfeyE Online
    Eric Katzfey
    ModalAI Team
    wrote on last edited by
    #5

    @Jetson-Nano voxl-fpv-dev is the name of the branch. The version will be a number, such as 1.14.0-8.104.3. Most of the joystick button mapping is handled by QGC directly. It maps them to commands that are sent over Mavlink. But the turtle mode is something specific built into the ESC driver. For the joystick buttons to work for turtle mode you need to set VOXL_ESC_MODE to 1. For newer versions of the voxl-fpv-dev branch you can also set VOXL_ESC_MODE to 2. The verify that the button mapping is working you can look at the manual_control_setpoint topic in px4 and see if the aux1 / aux2 fields are changing between 0.0 and 1.0. (e.g. px4-listener manual_control_setpoint)

    Jetson NanoJ 1 Reply Last reply
    0
    • Eric KatzfeyE Eric Katzfey

      @Jetson-Nano voxl-fpv-dev is the name of the branch. The version will be a number, such as 1.14.0-8.104.3. Most of the joystick button mapping is handled by QGC directly. It maps them to commands that are sent over Mavlink. But the turtle mode is something specific built into the ESC driver. For the joystick buttons to work for turtle mode you need to set VOXL_ESC_MODE to 1. For newer versions of the voxl-fpv-dev branch you can also set VOXL_ESC_MODE to 2. The verify that the button mapping is working you can look at the manual_control_setpoint topic in px4 and see if the aux1 / aux2 fields are changing between 0.0 and 1.0. (e.g. px4-listener manual_control_setpoint)

      Jetson NanoJ Offline
      Jetson NanoJ Offline
      Jetson Nano
      Veteran
      wrote on last edited by
      #6

      @Eric-Katzfey Thank you for the support. I will test it out and get back to you encase of any further queries.

      Jetson NanoJ 1 Reply Last reply
      0
      • Jetson NanoJ Jetson Nano

        @Eric-Katzfey Thank you for the support. I will test it out and get back to you encase of any further queries.

        Jetson NanoJ Offline
        Jetson NanoJ Offline
        Jetson Nano
        Veteran
        wrote on last edited by
        #7

        @Eric-Katzfey
        I tested what you asked me, since i am using external Fc and doodle labs, I am not able to assign AUX to any button, is there any work around on how to assign AUX

        Jetson NanoJ 1 Reply Last reply
        0
        • Jetson NanoJ Jetson Nano

          @Eric-Katzfey
          I tested what you asked me, since i am using external Fc and doodle labs, I am not able to assign AUX to any button, is there any work around on how to assign AUX

          Jetson NanoJ Offline
          Jetson NanoJ Offline
          Jetson Nano
          Veteran
          wrote on last edited by
          #8

          @Eric-Katzfey @Alex-Kushleyev
          hey guys, just a random thought, can I enable turtle mode through a button instead of taking AUX 1 into consideration. just a thought, any guidance and help would be greatly appreciated.

          Eric KatzfeyE 1 Reply Last reply
          0
          • Jetson NanoJ Jetson Nano

            @Eric-Katzfey @Alex-Kushleyev
            hey guys, just a random thought, can I enable turtle mode through a button instead of taking AUX 1 into consideration. just a thought, any guidance and help would be greatly appreciated.

            Eric KatzfeyE Online
            Eric KatzfeyE Online
            Eric Katzfey
            ModalAI Team
            wrote on last edited by
            #9

            @Jetson-Nano What do you see if you go to the MAVLink console in QGC and look at the manual_control_setpoint topic? (listener manual_control_setpoint)?

            Eric KatzfeyE Jetson NanoJ 2 Replies Last reply
            0
            • Eric KatzfeyE Eric Katzfey

              @Jetson-Nano What do you see if you go to the MAVLink console in QGC and look at the manual_control_setpoint topic? (listener manual_control_setpoint)?

              Eric KatzfeyE Online
              Eric KatzfeyE Online
              Eric Katzfey
              ModalAI Team
              wrote on last edited by
              #10

              @Eric-Katzfey Also, there is a parameter called VOXL_ESC_T_ON. How is that set? It determines which button will be used for turtle mode. The code is here: https://github.com/modalai/px4-firmware/blob/ea098200d3c09b7af548bf7be29fda245fad8f17/src/modules/mavlink/mavlink_receiver.cpp#L2083

              Jetson NanoJ 2 Replies Last reply
              0
              • Eric KatzfeyE Eric Katzfey

                @Jetson-Nano What do you see if you go to the MAVLink console in QGC and look at the manual_control_setpoint topic? (listener manual_control_setpoint)?

                Jetson NanoJ Offline
                Jetson NanoJ Offline
                Jetson Nano
                Veteran
                wrote on last edited by Jetson Nano
                #11

                @Eric-Katzfey
                This is the output i am getting while running listener manual_control_setpoint

                NuttShell (NSH) NuttX-11.0.0
                nsh> listener manual_control_setpoint
                
                TOPIC: manual_control_setpoint
                 manual_control_setpoint
                    timestamp: 438754659 (0.033455 seconds ago)
                    timestamp_sample: 438754653 (6 us before timestamp)
                    roll: 0.00000
                    pitch: 0.00000
                    yaw: 0.00000
                    throttle: 0.00000
                    flaps: 0.00000
                    aux1: 0.00000
                    aux2: 0.00000
                    aux3: 0.00000
                    aux4: 0.00000
                    aux5: 0.00000
                    aux6: 0.00000
                    buttons: 0
                    valid: True
                    data_source: 2
                    sticks_moving: False
                
                nsh> listener manual_control_setpoint
                
                TOPIC: manual_control_setpoint
                 manual_control_setpoint
                    timestamp: 446282690 (0.039850 seconds ago)
                    timestamp_sample: 446282683 (7 us before timestamp)
                    roll: 0.00000
                    pitch: 0.00000
                    yaw: 0.00000
                    throttle: 0.00000
                    flaps: 0.00000
                    aux1: 0.00000
                    aux2: 0.00000
                    aux3: 0.00000
                    aux4: 0.00000
                    aux5: 0.00000
                    aux6: 0.00000
                    buttons: 0
                    valid: True
                    data_source: 2
                    sticks_moving: False
                
                Eric KatzfeyE 1 Reply Last reply
                0
                • Eric KatzfeyE Eric Katzfey

                  @Eric-Katzfey Also, there is a parameter called VOXL_ESC_T_ON. How is that set? It determines which button will be used for turtle mode. The code is here: https://github.com/modalai/px4-firmware/blob/ea098200d3c09b7af548bf7be29fda245fad8f17/src/modules/mavlink/mavlink_receiver.cpp#L2083

                  Jetson NanoJ Offline
                  Jetson NanoJ Offline
                  Jetson Nano
                  Veteran
                  wrote on last edited by Jetson Nano
                  #12

                  @Eric-Katzfey I am not able to see the option you have mentioned VOXL_ESC_T_ON

                  Eric KatzfeyE 1 Reply Last reply
                  0
                  • Jetson NanoJ Jetson Nano

                    @Eric-Katzfey I am not able to see the option you have mentioned VOXL_ESC_T_ON

                    Eric KatzfeyE Online
                    Eric KatzfeyE Online
                    Eric Katzfey
                    ModalAI Team
                    wrote on last edited by
                    #13

                    @Jetson-Nano said in doodle labs and joystick setup:

                    I am not able to see the option you have mentioned VOXL_ESC_T_ON

                    In the Mavlink console what do you see with "param show VOXL_ESC_*"?

                    And what about "ver all"?

                    1 Reply Last reply
                    0
                    • Jetson NanoJ Jetson Nano

                      @Eric-Katzfey
                      This is the output i am getting while running listener manual_control_setpoint

                      NuttShell (NSH) NuttX-11.0.0
                      nsh> listener manual_control_setpoint
                      
                      TOPIC: manual_control_setpoint
                       manual_control_setpoint
                          timestamp: 438754659 (0.033455 seconds ago)
                          timestamp_sample: 438754653 (6 us before timestamp)
                          roll: 0.00000
                          pitch: 0.00000
                          yaw: 0.00000
                          throttle: 0.00000
                          flaps: 0.00000
                          aux1: 0.00000
                          aux2: 0.00000
                          aux3: 0.00000
                          aux4: 0.00000
                          aux5: 0.00000
                          aux6: 0.00000
                          buttons: 0
                          valid: True
                          data_source: 2
                          sticks_moving: False
                      
                      nsh> listener manual_control_setpoint
                      
                      TOPIC: manual_control_setpoint
                       manual_control_setpoint
                          timestamp: 446282690 (0.039850 seconds ago)
                          timestamp_sample: 446282683 (7 us before timestamp)
                          roll: 0.00000
                          pitch: 0.00000
                          yaw: 0.00000
                          throttle: 0.00000
                          flaps: 0.00000
                          aux1: 0.00000
                          aux2: 0.00000
                          aux3: 0.00000
                          aux4: 0.00000
                          aux5: 0.00000
                          aux6: 0.00000
                          buttons: 0
                          valid: True
                          data_source: 2
                          sticks_moving: False
                      
                      Eric KatzfeyE Online
                      Eric KatzfeyE Online
                      Eric Katzfey
                      ModalAI Team
                      wrote on last edited by
                      #14

                      @Jetson-Nano said in doodle labs and joystick setup:

                      This is the output i am getting while running listener manual_control_setpoint

                      What is the parameter COM_RC_IN_MODE set to?

                      Jetson NanoJ 1 Reply Last reply
                      0
                      • Eric KatzfeyE Eric Katzfey

                        @Jetson-Nano said in doodle labs and joystick setup:

                        This is the output i am getting while running listener manual_control_setpoint

                        What is the parameter COM_RC_IN_MODE set to?

                        Jetson NanoJ Offline
                        Jetson NanoJ Offline
                        Jetson Nano
                        Veteran
                        wrote on last edited by
                        #15

                        @Eric-Katzfey COM_RC_IN_MODE is set to joystick only

                        1 Reply Last reply
                        0
                        • Eric KatzfeyE Eric Katzfey

                          @Eric-Katzfey Also, there is a parameter called VOXL_ESC_T_ON. How is that set? It determines which button will be used for turtle mode. The code is here: https://github.com/modalai/px4-firmware/blob/ea098200d3c09b7af548bf7be29fda245fad8f17/src/modules/mavlink/mavlink_receiver.cpp#L2083

                          Jetson NanoJ Offline
                          Jetson NanoJ Offline
                          Jetson Nano
                          Veteran
                          wrote on last edited by Jetson Nano
                          #16

                          @Eric-Katzfey Hey hope you are doing fine, I checked the code and various branches of PX4, I noticed I was able to see the parameter VOXL_ESC_T_ON but the option only showcased button 1 for assignment . what to do if I want to assign another button.

                          Eric KatzfeyE 1 Reply Last reply
                          0
                          • Jetson NanoJ Jetson Nano

                            @Eric-Katzfey Hey hope you are doing fine, I checked the code and various branches of PX4, I noticed I was able to see the parameter VOXL_ESC_T_ON but the option only showcased button 1 for assignment . what to do if I want to assign another button.

                            Eric KatzfeyE Online
                            Eric KatzfeyE Online
                            Eric Katzfey
                            ModalAI Team
                            wrote on last edited by
                            #17

                            @Jetson-Nano You set that parameter to match the button you want to use.

                            Jetson NanoJ 1 Reply Last reply
                            0
                            • Eric KatzfeyE Eric Katzfey

                              @Jetson-Nano You set that parameter to match the button you want to use.

                              Jetson NanoJ Offline
                              Jetson NanoJ Offline
                              Jetson Nano
                              Veteran
                              wrote on last edited by
                              #18

                              @Eric-Katzfey Thank you for reverting back, The options only show one option button 1. I tested with button one but the drone was not taking in the command for enabling the turtle mode.
                              I want to know whether the code was tested out, so that I can be sure about not missing out on any parameter or setup

                              Eric KatzfeyE 1 Reply Last reply
                              0
                              • Jetson NanoJ Jetson Nano

                                @Eric-Katzfey Thank you for reverting back, The options only show one option button 1. I tested with button one but the drone was not taking in the command for enabling the turtle mode.
                                I want to know whether the code was tested out, so that I can be sure about not missing out on any parameter or setup

                                Eric KatzfeyE Online
                                Eric KatzfeyE Online
                                Eric Katzfey
                                ModalAI Team
                                wrote on last edited by
                                #19

                                @Jetson-Nano It's a parameter that you can set to any number you want. In QGC you can look at the joysticks tab and see as you press each button which number it is. Then set the parameter to that number.

                                Jetson NanoJ 1 Reply Last reply
                                0
                                • Eric KatzfeyE Eric Katzfey

                                  @Jetson-Nano It's a parameter that you can set to any number you want. In QGC you can look at the joysticks tab and see as you press each button which number it is. Then set the parameter to that number.

                                  Jetson NanoJ Offline
                                  Jetson NanoJ Offline
                                  Jetson Nano
                                  Veteran
                                  wrote on last edited by
                                  #20

                                  @Eric-Katzfey I am not able to setup multiple buttons, it is only showing one option of button 1.
                                  Also after assigning the button one and trying to enable and use turtle mode, it is not working.
                                  Is there any particular version of px4 that this works with.
                                  My setup is VOXL 2 ---> TELEM 1 --> Flight core v2 --> TELEM 2 --> FPV ESC
                                  In normal setup the motors are working and rotating, but when I try to keep the drone upside down and enable the turtle mode , the QGC is still showing not ready message. Also I am not able to ARM because of this.
                                  Is there anything I am missing out?

                                  Jetson NanoJ 1 Reply Last reply
                                  0
                                  • Jetson NanoJ Jetson Nano

                                    @Eric-Katzfey I am not able to setup multiple buttons, it is only showing one option of button 1.
                                    Also after assigning the button one and trying to enable and use turtle mode, it is not working.
                                    Is there any particular version of px4 that this works with.
                                    My setup is VOXL 2 ---> TELEM 1 --> Flight core v2 --> TELEM 2 --> FPV ESC
                                    In normal setup the motors are working and rotating, but when I try to keep the drone upside down and enable the turtle mode , the QGC is still showing not ready message. Also I am not able to ARM because of this.
                                    Is there anything I am missing out?

                                    Jetson NanoJ Offline
                                    Jetson NanoJ Offline
                                    Jetson Nano
                                    Veteran
                                    wrote on last edited by
                                    #21

                                    @Eric-Katzfey could you please help me out here

                                    Eric KatzfeyE 2 Replies Last reply
                                    0
                                    • Jetson NanoJ Jetson Nano

                                      @Eric-Katzfey could you please help me out here

                                      Eric KatzfeyE Online
                                      Eric KatzfeyE Online
                                      Eric Katzfey
                                      ModalAI Team
                                      wrote on last edited by Eric Katzfey
                                      #22

                                      @Jetson-Nano Let's try to walk through this and see where it is going wrong. Please provide answers to all of the following questions. Go to the joystick tab in QGC and press the button on the joystick that you want to use for turtle mode. Which number lights up when you press the button? Next, go to the MAVLink console and provide the output of these commands: ver all, listener manual_control_setpoint, param show VOXL_ESC_MODE, param show VOXL_ESC_T_ON, and param show COM_RC_IN_MODE. If VOXL_ESC_T_ON is not set to the number of the button you just discovered on the joystick tab then change it to the value you want. For example, by default VOXL_ESC_T_ON is set to 9. If you want to use button 10 instead then do param set VOXL_ESC_T_ON 10. If you had to change that parameter then reboot and verify that it is now set correctly. You should see the aux1 value in manual_control_setpoint change from 0.0 to 1.0 when you press the button that you have chosen. Can you verify that you are seeing that?

                                      1 Reply Last reply
                                      0
                                      • Jetson NanoJ Jetson Nano

                                        @Eric-Katzfey could you please help me out here

                                        Eric KatzfeyE Online
                                        Eric KatzfeyE Online
                                        Eric Katzfey
                                        ModalAI Team
                                        wrote on last edited by
                                        #23

                                        @Jetson-Nano If all that seems to be working then press the turtle button and arm (with drone right side up, not upside down) and verify that with turtle mode enabled the propellers are spinning in the opposite direction and the drone won't lift off. Of course, you must be extremely careful when running this test!!! Make sure that the drone is in a location where it cannot cause damage or injure someone if it goes out of control. It would be best to completely remove the propellers and just verify that the motors are spinning in the opposite direction of normal flight.

                                        Jetson NanoJ 1 Reply Last reply
                                        0
                                        • Eric KatzfeyE Eric Katzfey

                                          @Jetson-Nano If all that seems to be working then press the turtle button and arm (with drone right side up, not upside down) and verify that with turtle mode enabled the propellers are spinning in the opposite direction and the drone won't lift off. Of course, you must be extremely careful when running this test!!! Make sure that the drone is in a location where it cannot cause damage or injure someone if it goes out of control. It would be best to completely remove the propellers and just verify that the motors are spinning in the opposite direction of normal flight.

                                          Jetson NanoJ Offline
                                          Jetson NanoJ Offline
                                          Jetson Nano
                                          Veteran
                                          wrote on last edited by Jetson Nano
                                          #24

                                          @Eric-Katzfey
                                          I followed the steps you suggested, i am attaching the Screenshots. I tried what you suggested the result is still the same, I am not able to arm the system. I tried with various options for VOXL_ESC_MODE, still the same.

                                          Screenshot from 2025-08-14 14-29-56.png

                                          I clicked the assigned button here, AUX 1 values are changing but only when i keep the voxl_ESC_MODE to UART passthorugh

                                          Screenshot from 2025-08-14 14-30-08.png

                                          Screenshot from 2025-08-14 14-19-46.png

                                          Screenshot from 2025-08-14 14-19-43.png

                                          Screenshot from 2025-08-14 14-36-35.png

                                          Eric KatzfeyE 1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          ModalAI
                                          Categories Recent Tags ModalAI.com Docs
                                          © 2026 ModalAI® · Accelerating autonomy for smaller, smarter, safer drones · Powered by NodeBB
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups