From 72ebe937fbab1b002910e6ee5bd7cef3e735b58e Mon Sep 17 00:00:00 2001 From: pascallanger Date: Fri, 23 Dec 2016 09:48:13 +0100 Subject: [PATCH] Multi Telemetry: fixed DSM --- Multiprotocol/Multiprotocol.h | 2 +- Multiprotocol/Telemetry.ino | 19 +++++++++++-------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/Multiprotocol/Multiprotocol.h b/Multiprotocol/Multiprotocol.h index cb333ef..caf3745 100644 --- a/Multiprotocol/Multiprotocol.h +++ b/Multiprotocol/Multiprotocol.h @@ -19,7 +19,7 @@ #define VERSION_MAJOR 1 #define VERSION_MINOR 1 #define VERSION_REVISION 6 -#define VERSION_PATCH_LEVEL 3 +#define VERSION_PATCH_LEVEL 4 //****************** // Protocols diff --git a/Multiprotocol/Telemetry.ino b/Multiprotocol/Telemetry.ino index 4ed99c0..747b065 100644 --- a/Multiprotocol/Telemetry.ino +++ b/Multiprotocol/Telemetry.ino @@ -101,22 +101,25 @@ static void multi_send_status() #ifdef MULTI_TELEMETRY void DSM_frame() { - if (pkt[0] == 0x80) { + if (pkt[0] == 0x80) + { multi_send_header(MULTI_TELEMETRY_DSMBIND, 10); - for (uint8_t i = 1; i < 11; i++) // 10 byte of DSM bind response + for (uint8_t i = 1; i < 11; i++) // 10 bytes of DSM bind response Serial_write(pkt[i]); - } else { + } + else + { multi_send_header(MULTI_TELEMETRY_DSM, 17); - for (uint8_t i = 0; i < 29; i++) // RSSI value followed by 4*7 bytes of telemetry data + for (uint8_t i = 0; i < 17; i++) // RSSI value followed by 16 bytes of telemetry data Serial_write(pkt[i]); } } #else void DSM_frame() { - Serial_write(0xAA); // Telemetry packet - for (uint8_t i = 0; i < 17; i++) // RSSI value followed by 16 bytes of telemetry data + Serial_write(0xAA); // Telemetry packet + for (uint8_t i = 0; i < 17; i++) // RSSI value followed by 16 bytes of telemetry data Serial_write(pkt[i]); } #endif @@ -128,9 +131,9 @@ static void multi_send_status() #if defined MULTI_TELEMETRY multi_send_header(MULTI_TELEMETRY_AFHDS2A, 29); #else - Serial_write(0xAA); // Telemetry packet + Serial_write(0xAA); // Telemetry packet #endif - for (uint8_t i = 0; i < 29; i++) // RSSI value followed by 4*7 bytes of telemetry data + for (uint8_t i = 0; i < 29; i++) // RSSI value followed by 4*7 bytes of telemetry data Serial_write(pkt[i]); } #endif