I have successfully connected a Jetson TX2 to both a pixhawk and pixhawk2 using this https://www.digikey.com/product-detail/en/ftdi-future-technology-devices-international-ltd/TTL-232R-3V3-WE/768-1016-ND/1836394 cable. I would like to move the TX2 to a smaller carrier board whose native serial ports appear to operate at either 5V or 5.5V levels. I know the serial ports on the pixhawk and pixhawk2.1 prefer 3.3V, but can they tolerate the higher voltage?
I looked at the pixhawk schematics (https://github.com/PX4/Hardware/blob/master/FMUv3_REV_D/Schematic%20Print/Schematic%20Prints.PDF) and it appears there is a TXS0108 level shifter already on board, but both sides are referenced to 3.3V (so no shifting takes place). Is there an easy way to change the one side reference to 5V (doesn’t really look like there is).
I know I could also use this: https://www.sparkfun.com/products/12009 if needed
They’re 5V tolerant, but a level shifter is probably wise.
Or if you can solder two resistors and a N-Channel mosfet (2N7000) then:
On closer inspection the particular carrier board I was looking at actually used RS232 so an actual converter will be needed. Sparkfun has this: https://www.sparkfun.com/products/11189 which should do the trick.
a little off topic but i am curious to know how you have managed to connect a pixhawk 2.1 to a jetson TX2 as i am trying to do the same.
i have both pixhawk 2.1 and a jetson TX2 dev kit. have followed the instructions similar to
but when connected to the pixhawk the dev kit does not fully load up and is constantly restarting.
any help is appreciated
Hmmm…interesting. I assume it doesn’t do that when the pixhawk isn’t
For the dev board the easiest way to connect to it is via an FTDI cable.
I’m pretty certain this one is what I used:
The end connector is
And you can get pre-crimped wires
Just cut the FTDI cable to whatever length you want and then solder the
pre-crimped wires onto ends of the FTDI cable wires. I think this is best
since you don’t have to get the expensive crimping tool.
The pixkawk 2.1 cable pinout is here
FTDI cable datasheet:
Red wire - do not connect
Yellow wire - telem 2 pin 2 (FTDI RX to pixhawk TX)
Orange wire - telem 2 pin 3 (FTDI TX to pixhawk RX)
Green wire - telem 2 pin 4 (FTDI RTS to pixhawk CTS)
Brown wire - telem 2 pin 5 (FTDI CTS to pixhawk RTS)
Black wire - telem 2 pin 6 (FTDI Gnd to pixhawk Gnd)
You only really need the tx and rx connections, but the others can be made
just cause they’re easy and no reason not to.
It shows up on the tx2 as /dev/ttyUSB0. I configure the pixkawk with a baud
of 921600 which has been pretty reliable.
When the Dev Kit is not connected to the pixhawk everything works well, only when connected to Telem2 (on the pixhawk) and the pixhawk is powered on do I get an unstable boot and constant restarts.
Second, so I understand you have connected the Dev Kit to the pixhawk via the USB exit and not the GPIO Extention Header, is that correct?
I have tried using J21 Extention header to connect to the Pixhawk:
pin 8 - Jetson TX -> Pixhawk RX
pin10 - Jetson RX -> Pixhawk TX
pin 6 - Jetson GND -> Pixhawk GND
using /dev/ttyS0 with serial baud 57600 or 921600 with no luck.
Sometimes will get gibberish, other (more frequent) will just kill the process (mavproxy).
That is bumping into a different issue I was just having:
/dev/ttyS0 is the serial console and is basically unusable for anything
else. Try reading from it at 115200. I only recently started using the
serial port directly on the Jetson. The FTDI cable was easier and faster to
get up and going.