Joystick for android QGC or MP

We’re exploring how to use a physical joystick (not a virtual one) with the Android versions of QGroundControl (QGC) or Mission Planner (MP).

Our goal is to enable drone control via an Android tablet or phone paired with a joystick, using our 4G video transmission and control unit.

On Windows, everything works fine — joystick input is recognized and we can fully control the drone. However, on Android, it seems that neither QGC nor MP currently supports joystick input.

Our idea is to have the joystick function as a standard HID device, so it can be recognized directly by QGC or MP.

Does anyone have experience or suggestions on how to achieve this? If such support doesn’t exist yet, we’re considering developing our own solution.
Any thoughts or interest in collaborating are welcome.

Thanks!

From what I understood, you want to convert the joystick into a HID device. For that, you can use an Arduino pro mini which supports hid and then a bluetooth module to communicate with the joystick.

However, if you already have a joystick which uses USB HID, you need to ensure that you have enabled OTG and then use some USB OTG adapter.

If you want some custom solution, you can make an app which reads the joystick and sends out MAVLink messages

1 Like

QGC definitely does support joystick - very well.
Cockpit also, but sorry i tested on windows and ubuntu.

I’ve struggled with ArduROVER limiting RC channel assignment on QGC and Cockpit but not MP to just 3 which is why i ended up running Windows on a Steamdeck with Mission Planner. Other flavours of Ardupilot allow more RC channel assignments oddly.

Mission Planner on Android i think is missing joystick support. Not sure, but its windows software doing its best in a strange land. Font rendering made it hard for me to use so i didnt persevere. Handy on a spare phone in the field however, so that it runs is excellent.

Sorry - not very android specific in my reply.

Thanks for your reply. I believe there are ways to convert joystick into HID and get into the phone. But I am more concerned that whether the joystick can be recoginized by android version QGC or MP

Hi Thanks for your reply.
For windows, we’ve tested both QGC and MP, joystick is NOT a problem.
But for android version, we have not found much useful information regarding using a real joystick. Maybe there’s not much demand of using android version with joystick ?

i tried once with qgc, fyi android are so picky, when qgc not responding from your gamepad / joystick it because not support, use common gamepad like ps4 or xbox it will recognize and it will working as you want

in my case i use gamepad but on qgc only detected like joystick (only 4 channels)

thanks for your reply. So you have sucessfully used android QGC with ps4/xbox controllers, is that right ?

with only 4 channels and prove
YES! :blush: