APM 2.5 Free UART how to add serial data (Stratologger Perfectflite)?


I wanna read telemetry from Strattologger Altimeter (http://www.perfectflite.com/StratoLogger%20manual.pdf) from one free uart on APM 2.5.

1) Wich is the free uart i can use.  Actually im using 3dr radio, GPS. ???

2) Can i plug directly de TX from Stratologger to RX on APM ?

3) How can i display the Stratologger Data on Mission Planer ?


Je voudrais pouvoir lire la télémétrie d'un altimetre Stratologger de Perfectflite a partir d'un port serie de libre sur l'AMP 2.5

1) Quel est le port serie de libre en précisant que j'utilise actuellement le GPS et le port 3DR ?

2) Est-ce qu'il y a des modification a faire ou je peut brancher directement le TX sur le RX ?

3) Comment je peut faire pour afficher les donnée du Strattologger dans Mission Planner ?



Views: 1933


Reply to This

Replies to This Discussion

Hi Jeff,

            Did you find answer to this? Could you please tell me if you have found.



I don't believe the APM has an extra serial port available.  We've upgraded to Pixhawks since they have at least one unused serial port.

Hi Garrick,

           There are threads such as (http://diydrones.com/forum/topics/setting-uart2-on-the-apm2?id=7058...) where people are talking about using UART2. I think when we use AutoMUX then UART0 is used either for usb or telemetry modem port. UART1 is reserved for GPS. In his way UART2 looks free!!

           Anyway, if you used Pixhawks, how did you modify firmware to make it talking to computer? or is there any other trick for this?

I think UART2 or UART0 can be used on the APM, but not both since they're muxed.  Since we needed telemetry and GPS, that used up all the available ports.  As far as the Pixhawk goes, you have to dig into the ArduCopter/ArduPlane code and enable the port you want to use, then add code for whatever you want to do with it.  We are using Serial Port 5 since it seemed unused.

Hi Garrick,

               It would be great help if you could tell me which files to modify in ArduPlane? I need to establish serial communication between my linux based computer and AutoPilot for two way data transfer. I had a look at the firmware source codes, it looks like huge file to dig into. I would be pleased if you provide me with simple examples and point out about files to be modified.


It's pretty simple actually.  Most of the modifications required are in libraries/AP_HAL_PX4/HAL_PX4_Class.cpp.  I've attached all the files I had to modify to get Serial 5 working.  I had to add a new PX4UARTDriver to the HAL_PX4_Class (called uartEDriver in the example file).  On line 50 of HAL_PX4_Class.cpp you can see where I assign the name of the device, in this case I'm using the Serial 5 port so it's /dev/ttyS5 on the Pixhawk.  If you compare the attached files to the unmodified files from the ardupilot repository, you should be able to find all the individual changes required.

This may not be the cleanest way to do this, but it works.  If one of the developers wants to speak up and point out a better/cleaner way of doing it, please do.  Note I was doing this for ArduCopter, but it should apply just as well to ArduPlane.  Once you have the serial port enabled, you can test it out temporarily by just writing to the uart in one of the loops in ArduPlane.pde (i.e. hal.uartE->write(1)).


Hi Chris,

        Thanks very much!! It helped a lot.

Best Regards,


Reply to Discussion


© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service