Communicate with Flight Controllers other than Pixhawks

Are there any examples of Jetsons communicating with flight controllers other than Pixhawks? These flight controllers are very expensive for my project.

I am hoping to communicate with a less expensive flight controller via something like I2C or SBUS in a way that is similar to the communication to the motor driver in the Jetbot project.

I’m very new to this, so I apologize if my question is unclear.

hello shawnmci ,

please refer to developer guide, you may Configuring Jetson Expansion Header to use the 40‑pin expansion header.

Thank you for this info. Based on this info I am considering using a Matek F405-STD Flight Controller. It is $42 with a PDB included. Apparently it can be flashed to use ArduPilot so that I can communicate via MAVLink.

I’m very new to the hardware side of things, so I am hoping to get feedback on how to connect this FC to the Nano 2Gb. Attached is a diagram of how I think I should do it, based on a similar diagram (at top) connecting a Raspberry Pi to an Ardupilot FC.

Does this look correct? Should I put anything else in the connection?


I’m not positive, but make sure these files are group “dialout” instead of “tty”:
ls -l /dev/ttyS1 /dev/ttyTHS1

The reason I say this is that the diagram says ttyTHS1 is for pins 8 and 10 on the Jetson, and one driver provides the ttyTHS1 file, while the same hardware might also be serviced by a legacy driver as ttyS1. If ttyS1 is missing it won’t matter, but if in either case the “group” is anything other than “dialout”, then it means serial console is enabled, and that you’ll need to disable serial console (don’t know, haven’t looked at a Nano serial console in some time).

The other thing is that I suggest you wire TX and ground as twisted pair, and also RX and ground as twisted pair. Probably won’t matter if using short wires, but doesn’t hurt as a way to avoid noise issues.

The default speed/setting on the port is 115200 8n1, and if the flight controller uses this setting, then all is ready. If the flight controller is not using that speed, then you might need to set up a new speed setting at one end.

Thank you for the tips!