How to change baud rate for Telem1?

Can anyone tell me how to change the baud rate for Telem1? Since Pixfalcon only has one Telem port, changing SYS_COMPANION (which only affects Telem2) does not work.

The default rate for Telem1 is 57600. My goal is to change it to 912600.

Thanks!

1 Like

It’s currently hard coded per autopilot type. https://github.com/PX4/Firmware/blob/master/ROMFS/px4fmu_common/init.d/rcS#L585

You could either change it in the init script if you’re recompiling, add a proper parameter for this, or (easiest) add an rc.extras on the sd card that stops mavlink, and starts it again at the desired baud rate.

I too have been trying to figure this out. Thanks for asking the question @zachblue and thanks for answering @dagar!

hello

I`m trying to change baudrate on Pixfalcon TELE1

On SD cart created:
/etc/extras.txt

Inside extras.txt:
mavlink stop-all
mavlink start -d /dev/ttyS1 -b 921600 -r 20000

then trying to connect with mavros:
roslaunch mavros px4.launch fcu_url:=“serial:///dev/ttyACM0:921600”

but it does`t work.

please help with it

you should remove all building files and rebuild it!

i would like to use SD card. Not to rebuild source.

You can change it with SYS_COMPANION no? See in QGC

Unfortunately no
i using Pixfalcon. it has only tele1

Please give a hint. where is in source files change TELE1 baudrate.

Main bootfile : rcS

See :

UART mapping on FMUv1/2/3/4:
# USART2 /dev/ttyS1 TELEM1 (flow control)

Search /dev/ttyS1

I am not following the correct structure mentioned for an rc.extras script file. For my Pixhawk mini setup in a fixed wing craft, I need to lower the TELEM-1 baud rate to 19.2 for use with a Dragonlink v3 receiver serial modem, which requires the TELEM-1 rate to be set to 19.2 plus a few other things…but the baud rate right now is my biggest issue.
If I cannot configure the PX4 software to work with the long range Dragonlink receiver, then I will be forced to use ArduPlane and leave PX4 to further development.
Although the Pix mini was supposedly designed for PX4, my use-case requires interfacing with the Dragonlink receiver’s serial modem at a lower baud rate, plus modding some of the telemetry stream sampling to work well @ 19.2.

Thanks for your help!

Update: This extras.txt file works to drop the baud rate down to 19.2.

mavlink stop-all
set MAVLINK_F “-r 1000 -d /dev/ttyS1”
mavlink start -d /dev/ttyS1 -b 19200 -r 1000

so the next issue seems to be flow control or buffer overflow on the Dragonlink radio modem. I’m getting a large number of errors (26k per 10 seconds)

for my PixFalcon (PX4 1.7.2)
mavlink stop-all
mavlink start -d /dev/ttyS1 -b 921600 -r 20000
added at the end of extras
works perfect to increase Tele1 baud to fit to the PixRacer ESP8266 firmwares 921600 connection with QCG (3.2.7)

I am having the same issues with a serial radio. Need to change the baud rate. I configured serial 2 as telem2 port / sys_companion and changed the baud rate and this solved the problem.
When I use the extras.txt it seems to screw with the sys_companion

I also need to to this for telem1, but don’t want to hardcode this as I want to be able to swap radio’s if necessary and change baud rate in the settings through the GCS preferably. Any ideas on this?

On Ardupilot this is way more easy to configure per serial port.

What if I don’t want to stop all mavlink but only on a specific telem?
What is the -r parameter doing?

Hi,

What does this command mean?

"set MAVLINK_F “-r 1000 -d /dev/ttyS1”?

Regards,

@PX4_Gandalf actually I don’t know. I copied it from another topic but I checked and it is not needed.

Hi @tuloski,

Are you sure?

For me upating the stream rate works using extras.txt file but when I try to change the baud rate, it doesn’t work. I used only 2 lines in extras.txt file.

mavlink stop-all
mavlink start -d /dev/ttyS1 -b 38400 -r 1000

Also, since I am using RFD 900x as telemetry module, I changed the baud rate of the telemetry module in both air and ground module to 38400. Is there any other setting that I am missing?

Should I be changing any parameter in QGround Control? Also I tried adding a connection in the comm link section in QGroundControl which also did not work out.In mission planner, you set the baud rate while trying to connect to the com port and selecting the lower baud rate did not work.

Also could anyone help me figure out where the baud rate for the vehicle telemetry to the ground station (not the RC for throttle etc) is hard-coded in the init.d file? I can’t seem to find it. Simply doing a search of -b returns no result in the following firmware folder. Or am I looking at the wrong location?

This is the file where I am looking at:

It seems to have a section for frsky_telemetry for the RC control.

I am using Pixhawk 3 Pro with PX4 firmware version 1.8.1.

Should I be going back a few versions to see this parameter?

Regards,

Those two lines are working for me. Are you sure you picked the right tty? And maybe you have another problem in qGroundControl. For example you need to create a new connection where you specify the baud rate and the COM port.

Hi @tuloski,

I had tried what you said. But that did not work out. I am not quite sure what is the issue, The streaming update rate got changed without any problem as well as the maximum bandwidth using the ‘-m onboard 80000’ parameter. It is just the baud rate that is giving me trouble.