Tuesday, May 19, 2015

Taranis Plus com telemetria bluetooth hc-06

Um dos recursos do Taranis Plus é a porta serial RS232 no compartimento da bateria.
É possível ativar um mirror da telemetria smart port na página 6 de configurações do rádio.
O baudrate é 57600. E a polaridade é invertida. 
HC-06 com regulador 7805 soldado, já que o regulador onboard suporta apenas 6V.
Bateria carregada fornece mais de 8V, dai a necessidade do 7805. 

Cabo conversor de 2mm (taranis) para 2.54mm (hc-06)
No entanto, esse setup funcionou parcialmente, pois nenhum dos apps para Android conseguiu se comunicar com o controle. Ligando um cabo usb-ttl no PC, e usando o terminal termite com hex dump, não encontrei nenhum 0x7e do protocolo FrSky. Isso indica que a serial do Taranis também deve ser invertida. Para testar esta hipótese sem modificar o hardware, é só usar uma SoftwareSerial invertida no Arduino.


Software Serial invertida nos pinos 3,2 
Arduino nano rodando SoftwareSerial invertida

A coisa começou a melhorar, o terminal encheu de 0x7e.

Termite 3.1 com hex dump
Agora é só partir para decodificar o protocolo ou deixar para um app de android fazer isso.
O mestre do barramento smart port, faz polling dos sensores enviando "0x7e" seguido do id do sensor.

----------- inicio do ciclo
7e 67 
7e 48 
7e e9 
7e 6a 
7e cb 
7e ac 
7e 0d 
7e 98 10 05 f1 01 2d 08 00 c2 
7e 98 10 01 f1 59 93 00 00 10 
7e 98 10 02 f1 58 00 00 00 a3 
7e 98 10 03 f1 06 00 00 00 f4 
7e 8e 
7e 2f 
7e d0 
7e 71 
7e f2 
7e 53 
7e 34 
7e 95 
7e 16 
7e b7 
7e 39 
7e ba 
7e 1b 
7e 00 
7e a1 
7e 22 
7e 83 
7e e4 
7e 45 
7e c6
--------------- fim do ciclo

Inversor para o TX do Taranis (JP1) conectar no RX do HC-06 (JP2)