Telemetry Port on UART 2

Hello all,

I am currently using a APM 2.6, I connected a 3DR radio through telemetry port. From what I read online, there are few things I need to do, in order to have the telemetry radio functioning properly.

1. cut the jump, solder the middle pads with the bottom two ( UART 2).

2. I need to change my code somewhere to have UART2 sending out and receiving the date ( not sure how to do this one..)

I did the coding based on HAL library. I appreciate any suggestion and advice,  

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  • Dear Tearabbit,

    I'm trying to do exactly the same thing. However, it is not working out for me...

    I have an APM 2.5 and I'm trying to adapt ArduCopter V3.2.1 to use UART2 for telemetry.

    Like you said I have cut the jumpers, soldered the bridge for UART2 and modified the code in system,pde, where I added the line: hal.uartC->begin(57600); in the init_ardupilot() function.

    I have seen a post where it is stated that the use of Uart2 for telemtry is not possible on ArduCopter for this firmware (http://discuss.ardupilot.org/t/using-raspberry-pi-with-apm-2-6-and-...)
    Did this work for you on the ArduCopter? Or have you been using it for the Rover or Plane?

    Many thanks in advance.

  • Dear all :

    I just found my own solution to the problem.

    the mux pin do needed to be soldered ( connecting the telemetry to UART2. ). I don't think you absolutely need to cut the existing jumper  ( connecting the telemetry to UART0 ), as this can be fixed in the coding by turning on and off a MUX switch, though this part is a bit over my head, so I didn't do too much in depth research into this. if anyone know exactly how to do this, maybe you can post your code, or instructions onto this forum.

    so once you have all the hardware ready to go. in the coding. the only thing you need to add is in the setup(), you add hal.uartC->begin(baudrate);  then in the the main loop , you add, hal.uartC->println("test"); if you need to print out some data onto the serial monitor, check UARTDriver in the library folder, it gives you the specific syntax for printing different values or characters. 

This reply was deleted.

Activity