mirror of
https://github.com/pascallanger/DIY-Multiprotocol-TX-Module.git
synced 2025-02-04 14:38:12 +00:00
MT99xx: Added voltage telemetry for the Dragon sub protocol
This commit is contained in:
parent
9b3549d4a9
commit
94f73bd54f
@ -225,8 +225,8 @@ static void __attribute__((unused)) BAYANG_check_rx(void)
|
|||||||
telemetry_link=1;
|
telemetry_link=1;
|
||||||
#if defined HUB_TELEMETRY
|
#if defined HUB_TELEMETRY
|
||||||
// Multiplexed P, I, D values in packet[8] and packet[9].
|
// Multiplexed P, I, D values in packet[8] and packet[9].
|
||||||
// The two most significant bits specify which term is sent.
|
// The two most significant bits specify which term is sent.
|
||||||
// Remaining 14 bits represent the value: 0 .. 16383
|
// Remaining 14 bits represent the value: 0 .. 16383
|
||||||
frsky_send_user_frame(0x24+(packet[8]>>6), packet[9], packet[8] & 0x3F ); //0x24 = ACCEL_X_ID, so ACCEL_X_ID=P, ACCEL_Y_ID=I, ACCEL_Z_ID=D
|
frsky_send_user_frame(0x24+(packet[8]>>6), packet[9], packet[8] & 0x3F ); //0x24 = ACCEL_X_ID, so ACCEL_X_ID=P, ACCEL_Y_ID=I, ACCEL_Z_ID=D
|
||||||
#endif
|
#endif
|
||||||
telemetry_counter++;
|
telemetry_counter++;
|
||||||
|
@ -24,13 +24,20 @@
|
|||||||
#define MT99XX_PACKET_PERIOD_MT 2625
|
#define MT99XX_PACKET_PERIOD_MT 2625
|
||||||
#define MT99XX_PACKET_PERIOD_YZ 3125
|
#define MT99XX_PACKET_PERIOD_YZ 3125
|
||||||
#define MT99XX_PACKET_PERIOD_A180 3400 // timing changes between the packets 2 x 27220 then 1x 26080, it seems that it is only on the first RF channel which jitters by 1.14ms but hard to pinpoint with XN297dump
|
#define MT99XX_PACKET_PERIOD_A180 3400 // timing changes between the packets 2 x 27220 then 1x 26080, it seems that it is only on the first RF channel which jitters by 1.14ms but hard to pinpoint with XN297dump
|
||||||
#define MT99XX_PACKET_PERIOD_DRAGON 1038 // there is a pause of 2x1038 between the packets 3 and 4 from what XN297dump detects which I think are used for telemetry
|
#define MT99XX_PACKET_PERIOD_DRAGON 1038 // there is a pause of 2x1038 between two packets, no idea why and how since it is not even stable on a same dump...
|
||||||
|
#define MT99XX_PACKET_PERIOD_DRAGON_TELEM 10265 // long pause to receive the telemetry packets, 3 are sent by the RX one after the other
|
||||||
#define MT99XX_INITIAL_WAIT 500
|
#define MT99XX_INITIAL_WAIT 500
|
||||||
#define MT99XX_PACKET_SIZE 9
|
#define MT99XX_PACKET_SIZE 9
|
||||||
|
|
||||||
//#define FORCE_A180_ID
|
//#define FORCE_A180_ID
|
||||||
//#define FORCE_DRAGON_ID
|
//#define FORCE_DRAGON_ID
|
||||||
|
|
||||||
|
enum {
|
||||||
|
MT99XX_DATA,
|
||||||
|
MT99XX_RX,
|
||||||
|
MT99XX_CHECK,
|
||||||
|
};
|
||||||
|
|
||||||
enum{
|
enum{
|
||||||
// flags going to packet[6] (MT99xx, H7)
|
// flags going to packet[6] (MT99xx, H7)
|
||||||
FLAG_MT_RATE1 = 0x01, // (H7 & A180 high rate)
|
FLAG_MT_RATE1 = 0x01, // (H7 & A180 high rate)
|
||||||
@ -68,12 +75,6 @@ enum{
|
|||||||
FLAG_DRAGON_UNK = 0x04,
|
FLAG_DRAGON_UNK = 0x04,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum {
|
|
||||||
MT99XX_INIT = 0,
|
|
||||||
MT99XX_BIND,
|
|
||||||
MT99XX_DATA
|
|
||||||
};
|
|
||||||
|
|
||||||
const uint8_t h7_mys_byte[] = {
|
const uint8_t h7_mys_byte[] = {
|
||||||
0x01, 0x11, 0x02, 0x12, 0x03, 0x13, 0x04, 0x14,
|
0x01, 0x11, 0x02, 0x12, 0x03, 0x13, 0x04, 0x14,
|
||||||
0x05, 0x15, 0x06, 0x16, 0x07, 0x17, 0x00, 0x10
|
0x05, 0x15, 0x06, 0x16, 0x07, 0x17, 0x00, 0x10
|
||||||
@ -88,7 +89,7 @@ const uint8_t ls_mys_byte[] = {
|
|||||||
|
|
||||||
const uint8_t yz_p4_seq[] = {0xa0, 0x20, 0x60};
|
const uint8_t yz_p4_seq[] = {0xa0, 0x20, 0x60};
|
||||||
|
|
||||||
#ifdef DRAGON_HUB_TELEMETRY
|
#ifdef MT99XX_HUB_TELEMETRY
|
||||||
const uint8_t DRAGON_seq[] = {0x20, 0x60, 0x20, 0x80};
|
const uint8_t DRAGON_seq[] = {0x20, 0x60, 0x20, 0x80};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -189,12 +190,8 @@ static void __attribute__((unused)) MT99XX_send_packet()
|
|||||||
packet[6] = FLAG_DRAGON_RATE
|
packet[6] = FLAG_DRAGON_RATE
|
||||||
| GET_FLAG( CH6_SW, FLAG_DRAGON_RTH );
|
| GET_FLAG( CH6_SW, FLAG_DRAGON_RTH );
|
||||||
|
|
||||||
#ifdef DRAGON_HUB_TELEMETRY
|
#ifdef MT99XX_HUB_TELEMETRY
|
||||||
//Telemetry
|
//Telemetry
|
||||||
// C=48 S=Y A= 6C 00 22 CC CC P(9)= 6C 00 22 27 00 00 00 00 60
|
|
||||||
// C=48 S=Y A= 6C 00 22 CC CC P(9)= 6C 00 22 28 00 00 00 00 61
|
|
||||||
// C=18 S=Y A= 6C 00 22 CC CC P(9)= 6C 00 22 24 00 00 00 00 5D
|
|
||||||
// 6C 00 22 = TX address, 27/28/24=vbatt, check = sum(P[0..7]) + AB, where AB comes from? Is it constant?
|
|
||||||
if(hopping_frequency_no == 0)
|
if(hopping_frequency_no == 0)
|
||||||
{
|
{
|
||||||
seq_num++;
|
seq_num++;
|
||||||
@ -204,7 +201,10 @@ static void __attribute__((unused)) MT99XX_send_packet()
|
|||||||
packet_count = 0;
|
packet_count = 0;
|
||||||
}
|
}
|
||||||
if(packet_count > 10) // Telemetry packet request every 10 or 11 packets
|
if(packet_count > 10) // Telemetry packet request every 10 or 11 packets
|
||||||
|
{
|
||||||
packet[6] |= 0x04; // Request telemetry flag
|
packet[6] |= 0x04; // Request telemetry flag
|
||||||
|
phase = MT99XX_RX;
|
||||||
|
}
|
||||||
packet[7] = DRAGON_seq[seq_num]; // seq: 20 80 20 60 20 80 20 60... 80 changes to 80+batt from telem
|
packet[7] = DRAGON_seq[seq_num]; // seq: 20 80 20 60 20 80 20 60... 80 changes to 80+batt from telem
|
||||||
if(seq_num==3)
|
if(seq_num==3)
|
||||||
packet[7] |= v_lipo1;
|
packet[7] |= v_lipo1;
|
||||||
@ -254,14 +254,6 @@ static void __attribute__((unused)) MT99XX_send_packet()
|
|||||||
else // MT99 & H7 & YZ & A180 & DRAGON
|
else // MT99 & H7 & YZ & A180 & DRAGON
|
||||||
XN297_Hopping(hopping_frequency_no);
|
XN297_Hopping(hopping_frequency_no);
|
||||||
|
|
||||||
if(sub_protocol == DRAGON)
|
|
||||||
{
|
|
||||||
if(hopping_frequency_no == 6)
|
|
||||||
packet_period = 3 * MT99XX_PACKET_PERIOD_DRAGON; // hole probably for the telemetry
|
|
||||||
else
|
|
||||||
packet_period = MT99XX_PACKET_PERIOD_DRAGON;
|
|
||||||
}
|
|
||||||
|
|
||||||
hopping_frequency_no++;
|
hopping_frequency_no++;
|
||||||
if(sub_protocol == YZ || sub_protocol == A180 || sub_protocol == DRAGON )
|
if(sub_protocol == YZ || sub_protocol == A180 || sub_protocol == DRAGON )
|
||||||
hopping_frequency_no++; // skip every other channel
|
hopping_frequency_no++; // skip every other channel
|
||||||
@ -283,6 +275,10 @@ static void __attribute__((unused)) MT99XX_RF_init()
|
|||||||
XN297_Configure(XN297_CRCEN, XN297_SCRAMBLED, XN297_1M);
|
XN297_Configure(XN297_CRCEN, XN297_SCRAMBLED, XN297_1M);
|
||||||
XN297_SetTXAddr((uint8_t *)"\xCC\xCC\xCC\xCC\xCC", 5);
|
XN297_SetTXAddr((uint8_t *)"\xCC\xCC\xCC\xCC\xCC", 5);
|
||||||
XN297_HoppingCalib(16);
|
XN297_HoppingCalib(16);
|
||||||
|
#ifdef MT99XX_HUB_TELEMETRY
|
||||||
|
XN297_SetRXAddr(rx_tx_addr, MT99XX_PACKET_SIZE);
|
||||||
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void __attribute__((unused)) MT99XX_initialize_txid()
|
static void __attribute__((unused)) MT99XX_initialize_txid()
|
||||||
@ -343,27 +339,71 @@ static void __attribute__((unused)) MT99XX_initialize_txid()
|
|||||||
|
|
||||||
uint16_t MT99XX_callback()
|
uint16_t MT99XX_callback()
|
||||||
{
|
{
|
||||||
#ifdef MULTI_SYNC
|
switch(phase)
|
||||||
telemetry_set_input_sync(packet_period);
|
|
||||||
#endif
|
|
||||||
if(bind_counter)
|
|
||||||
{
|
{
|
||||||
bind_counter--;
|
case MT99XX_DATA:
|
||||||
if (bind_counter == 0)
|
#ifdef MULTI_SYNC
|
||||||
{
|
telemetry_set_input_sync(packet_period);
|
||||||
// set tx address for data packets
|
#endif
|
||||||
XN297_SetTXAddr(rx_tx_addr, 5);
|
if(bind_counter)
|
||||||
// set rf channels
|
{
|
||||||
uint8_t channel_offset = ((crc8>>4) + (crc8 & 0x0f)) % 8;
|
bind_counter--;
|
||||||
for(uint8_t i=0;i<16;i++)
|
if (bind_counter == 0)
|
||||||
hopping_frequency[i] += channel_offset;
|
{
|
||||||
XN297_HoppingCalib(16);
|
// set tx address for data packets
|
||||||
BIND_DONE;
|
XN297_SetTXAddr(rx_tx_addr, 5);
|
||||||
}
|
// set rf channels
|
||||||
|
uint8_t channel_offset = ((crc8>>4) + (crc8 & 0x0f)) % 8;
|
||||||
|
for(uint8_t i=0;i<16;i++)
|
||||||
|
hopping_frequency[i] += channel_offset;
|
||||||
|
XN297_HoppingCalib(16);
|
||||||
|
BIND_DONE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
MT99XX_send_packet();
|
||||||
|
break;
|
||||||
|
#ifdef MT99XX_HUB_TELEMETRY
|
||||||
|
case MT99XX_RX:
|
||||||
|
//Switch to RX
|
||||||
|
XN297_SetTxRxMode(TXRX_OFF);
|
||||||
|
XN297_SetTxRxMode(RX_EN);
|
||||||
|
phase++;
|
||||||
|
return MT99XX_PACKET_PERIOD_DRAGON_TELEM - MT99XX_PACKET_PERIOD_DRAGON - 500;
|
||||||
|
case MT99XX_CHECK:
|
||||||
|
//Check telem
|
||||||
|
if(XN297_IsRX())
|
||||||
|
{
|
||||||
|
//debug("RX");
|
||||||
|
if(XN297_ReadPayload(packet_in, MT99XX_PACKET_SIZE))
|
||||||
|
{
|
||||||
|
// C=48 S=Y A= 6C 00 22 CC CC P(9)= 6C 00 22 27 00 00 00 00 60
|
||||||
|
// C=48 S=Y A= 6C 00 22 CC CC P(9)= 6C 00 22 28 00 00 00 00 61
|
||||||
|
// C=18 S=Y A= 6C 00 22 CC CC P(9)= 6C 00 22 24 00 00 00 00 5D
|
||||||
|
// 6C 00 22 = TX address, 27/28/24=vbatt, check = sum(P[0..7]) + AB
|
||||||
|
// D2 EE 00 25 00 00 00 00 90 -> check also + AB
|
||||||
|
//for(uint8_t i=0; i<MT99XX_PACKET_SIZE; i++)
|
||||||
|
// debug(" %02X",packet_in[i]);
|
||||||
|
uint8_t check=0xAB;
|
||||||
|
for(uint8_t i=0; i<8; i++)
|
||||||
|
check += packet_in[i];
|
||||||
|
if(packet_in[8] == check && packet_in[0] == rx_tx_addr[0] && packet_in[1] == rx_tx_addr[1] && packet_in[2] == rx_tx_addr[2])
|
||||||
|
{ // checksum and address are ok
|
||||||
|
// debug(" OK");
|
||||||
|
v_lipo1 = packet_in[3];
|
||||||
|
RX_RSSI=100;
|
||||||
|
telemetry_link = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//debugln("");
|
||||||
|
}
|
||||||
|
//Switch to TX
|
||||||
|
XN297_SetTxRxMode(TXRX_OFF);
|
||||||
|
XN297_SetTxRxMode(TX_EN);
|
||||||
|
phase=MT99XX_DATA;
|
||||||
|
return 500;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
return packet_period;
|
||||||
MT99XX_send_packet();
|
|
||||||
return packet_period;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void MT99XX_init(void)
|
void MT99XX_init(void)
|
||||||
@ -378,5 +418,6 @@ void MT99XX_init(void)
|
|||||||
packet_period = MT99XX_PACKET_PERIOD_MT;
|
packet_period = MT99XX_PACKET_PERIOD_MT;
|
||||||
|
|
||||||
packet_count=0;
|
packet_count=0;
|
||||||
|
phase=MT99XX_DATA;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
#define VERSION_MAJOR 1
|
#define VERSION_MAJOR 1
|
||||||
#define VERSION_MINOR 3
|
#define VERSION_MINOR 3
|
||||||
#define VERSION_REVISION 2
|
#define VERSION_REVISION 2
|
||||||
#define VERSION_PATCH_LEVEL 64
|
#define VERSION_PATCH_LEVEL 65
|
||||||
|
|
||||||
#define MODE_SERIAL 0
|
#define MODE_SERIAL 0
|
||||||
|
|
||||||
|
@ -857,7 +857,7 @@ bool Update_All()
|
|||||||
#endif
|
#endif
|
||||||
#if defined(TELEMETRY)
|
#if defined(TELEMETRY)
|
||||||
#ifndef MULTI_TELEMETRY
|
#ifndef MULTI_TELEMETRY
|
||||||
if((protocol == PROTO_BAYANG_RX) || (protocol == PROTO_AFHDS2A_RX) || (protocol == PROTO_FRSKY_RX) || (protocol == PROTO_SCANNER) || (protocol==PROTO_FRSKYD) || (protocol==PROTO_BAYANG) || (protocol==PROTO_NCC1701) || (protocol==PROTO_BUGS) || (protocol==PROTO_BUGSMINI) || (protocol==PROTO_HUBSAN) || (protocol==PROTO_AFHDS2A) || (protocol==PROTO_FRSKYX) || (protocol==PROTO_FRSKYX2) || (protocol==PROTO_DSM) || (protocol==PROTO_CABELL) || (protocol==PROTO_HITEC) || (protocol==PROTO_HOTT) || (protocol==PROTO_PROPEL) || (protocol==PROTO_OMP) || (protocol==PROTO_DEVO) || (protocol==PROTO_DSM_RX) || (protocol==PROTO_FRSKY_R9) || (protocol==PROTO_RLINK) || (protocol==PROTO_WFLY2) || (protocol==PROTO_LOLI) || (protocol==PROTO_MLINK))
|
if((protocol == PROTO_BAYANG_RX) || (protocol == PROTO_AFHDS2A_RX) || (protocol == PROTO_FRSKY_RX) || (protocol == PROTO_SCANNER) || (protocol==PROTO_FRSKYD) || (protocol==PROTO_BAYANG) || (protocol==PROTO_NCC1701) || (protocol==PROTO_BUGS) || (protocol==PROTO_BUGSMINI) || (protocol==PROTO_HUBSAN) || (protocol==PROTO_AFHDS2A) || (protocol==PROTO_FRSKYX) || (protocol==PROTO_FRSKYX2) || (protocol==PROTO_DSM) || (protocol==PROTO_CABELL) || (protocol==PROTO_HITEC) || (protocol==PROTO_HOTT) || (protocol==PROTO_PROPEL) || (protocol==PROTO_OMP) || (protocol==PROTO_DEVO) || (protocol==PROTO_DSM_RX) || (protocol==PROTO_FRSKY_R9) || (protocol==PROTO_RLINK) || (protocol==PROTO_WFLY2) || (protocol==PROTO_LOLI) || (protocol==PROTO_MLINK) || (protocol==PROTO_MT99XX))
|
||||||
#endif
|
#endif
|
||||||
if(IS_DISABLE_TELEM_off)
|
if(IS_DISABLE_TELEM_off)
|
||||||
TelemetryUpdate();
|
TelemetryUpdate();
|
||||||
@ -1792,7 +1792,7 @@ void pollBoot()
|
|||||||
#if defined(TELEMETRY)
|
#if defined(TELEMETRY)
|
||||||
void PPM_Telemetry_serial_init()
|
void PPM_Telemetry_serial_init()
|
||||||
{
|
{
|
||||||
if( (protocol==PROTO_FRSKYD) || (protocol==PROTO_HUBSAN) || (protocol==PROTO_AFHDS2A) || (protocol==PROTO_BAYANG)|| (protocol==PROTO_NCC1701) || (protocol==PROTO_CABELL) || (protocol==PROTO_HITEC) || (protocol==PROTO_BUGS) || (protocol==PROTO_BUGSMINI) || (protocol==PROTO_PROPEL) || (protocol==PROTO_OMP) || (protocol==PROTO_RLINK) || (protocol==PROTO_WFLY2) || (protocol==PROTO_LOLI)
|
if( (protocol==PROTO_FRSKYD) || (protocol==PROTO_HUBSAN) || (protocol==PROTO_AFHDS2A) || (protocol==PROTO_BAYANG)|| (protocol==PROTO_NCC1701) || (protocol==PROTO_CABELL) || (protocol==PROTO_HITEC) || (protocol==PROTO_BUGS) || (protocol==PROTO_BUGSMINI) || (protocol==PROTO_PROPEL) || (protocol==PROTO_OMP) || (protocol==PROTO_RLINK) || (protocol==PROTO_WFLY2) || (protocol==PROTO_LOLI) || (protocol==PROTO_MT99XX)
|
||||||
#ifdef TELEMETRY_FRSKYX_TO_FRSKYD
|
#ifdef TELEMETRY_FRSKYX_TO_FRSKYD
|
||||||
|| (protocol==PROTO_FRSKYX) || (protocol==PROTO_FRSKYX2)
|
|| (protocol==PROTO_FRSKYX) || (protocol==PROTO_FRSKYX2)
|
||||||
#endif
|
#endif
|
||||||
|
@ -539,7 +539,7 @@ void frsky_link_frame()
|
|||||||
telemetry_link |= 2 ; // Send hub if available
|
telemetry_link |= 2 ; // Send hub if available
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{//PROTO_HUBSAN, PROTO_AFHDS2A, PROTO_BAYANG, PROTO_NCC1701, PROTO_CABELL, PROTO_HITEC, PROTO_BUGS, PROTO_BUGSMINI, PROTO_FRSKYX, PROTO_FRSKYX2, PROTO_PROPEL, PROTO_DEVO, PROTO_RLINK, PROTO_OMP, PROTO_WFLY2, PROTO_LOLI, PROTO_MLINK
|
{//PROTO_HUBSAN, PROTO_AFHDS2A, PROTO_BAYANG, PROTO_NCC1701, PROTO_CABELL, PROTO_HITEC, PROTO_BUGS, PROTO_BUGSMINI, PROTO_FRSKYX, PROTO_FRSKYX2, PROTO_PROPEL, PROTO_DEVO, PROTO_RLINK, PROTO_OMP, PROTO_WFLY2, PROTO_LOLI, PROTO_MLINK, PROTO_MT99XX
|
||||||
frame[1] = v_lipo1;
|
frame[1] = v_lipo1;
|
||||||
frame[2] = v_lipo2;
|
frame[2] = v_lipo2;
|
||||||
frame[3] = RX_RSSI;
|
frame[3] = RX_RSSI;
|
||||||
|
@ -377,6 +377,7 @@
|
|||||||
#undef DSM_FWD_PGM
|
#undef DSM_FWD_PGM
|
||||||
#undef WFLY2_HUB_TELEMETRY
|
#undef WFLY2_HUB_TELEMETRY
|
||||||
#undef LOLI_HUB_TELEMETRY
|
#undef LOLI_HUB_TELEMETRY
|
||||||
|
#undef MT99XX_HUB_TELEMETRY
|
||||||
#undef MLINK_HUB_TELEMETRY
|
#undef MLINK_HUB_TELEMETRY
|
||||||
#undef MLINK_FW_TELEMETRY
|
#undef MLINK_FW_TELEMETRY
|
||||||
#else
|
#else
|
||||||
@ -455,11 +456,14 @@
|
|||||||
#if not defined(LOLI_NRF24L01_INO)
|
#if not defined(LOLI_NRF24L01_INO)
|
||||||
#undef LOLI_HUB_TELEMETRY
|
#undef LOLI_HUB_TELEMETRY
|
||||||
#endif
|
#endif
|
||||||
|
#if not defined(MT99XX_CCNRF_INO)
|
||||||
|
#undef MT99XX_HUB_TELEMETRY
|
||||||
|
#endif
|
||||||
#if not defined(FRSKYD_CC2500_INO) && not defined(MLINK_HUB_TELEMETRY) && not defined(BAYANG_HUB_TELEMETRY)
|
#if not defined(FRSKYD_CC2500_INO) && not defined(MLINK_HUB_TELEMETRY) && not defined(BAYANG_HUB_TELEMETRY)
|
||||||
//protocols using FRSKYD user frames
|
//protocols using FRSKYD user frames
|
||||||
#undef HUB_TELEMETRY
|
#undef HUB_TELEMETRY
|
||||||
#endif
|
#endif
|
||||||
#if not defined(HOTT_FW_TELEMETRY) && not defined(DSM_TELEMETRY) && not defined(SPORT_TELEMETRY) && not defined(HUB_TELEMETRY) && not defined(HUBSAN_HUB_TELEMETRY) && not defined(BUGS_HUB_TELEMETRY) && not defined(NCC1701_HUB_TELEMETRY) && not defined(BAYANG_HUB_TELEMETRY) && not defined(CABELL_HUB_TELEMETRY) && not defined(RLINK_HUB_TELEMETRY) && not defined(AFHDS2A_HUB_TELEMETRY) && not defined(AFHDS2A_FW_TELEMETRY) && not defined(MULTI_TELEMETRY) && not defined(MULTI_STATUS) && not defined(HITEC_HUB_TELEMETRY) && not defined(HITEC_FW_TELEMETRY) && not defined(SCANNER_TELEMETRY) && not defined(FRSKY_RX_TELEMETRY) && not defined(AFHDS2A_RX_TELEMETRY) && not defined(BAYANG_RX_TELEMETRY) && not defined(DEVO_HUB_TELEMETRY) && not defined(PROPEL_HUB_TELEMETRY) && not defined(OMP_HUB_TELEMETRY) && not defined(WFLY2_HUB_TELEMETRY) && not defined(LOLI_HUB_TELEMETRY) && not defined(MLINK_HUB_TELEMETRY) && not defined(MLINK_FW_TELEMETRY)
|
#if not defined(HOTT_FW_TELEMETRY) && not defined(DSM_TELEMETRY) && not defined(SPORT_TELEMETRY) && not defined(HUB_TELEMETRY) && not defined(HUBSAN_HUB_TELEMETRY) && not defined(BUGS_HUB_TELEMETRY) && not defined(NCC1701_HUB_TELEMETRY) && not defined(BAYANG_HUB_TELEMETRY) && not defined(CABELL_HUB_TELEMETRY) && not defined(RLINK_HUB_TELEMETRY) && not defined(AFHDS2A_HUB_TELEMETRY) && not defined(AFHDS2A_FW_TELEMETRY) && not defined(MULTI_TELEMETRY) && not defined(MULTI_STATUS) && not defined(HITEC_HUB_TELEMETRY) && not defined(HITEC_FW_TELEMETRY) && not defined(SCANNER_TELEMETRY) && not defined(FRSKY_RX_TELEMETRY) && not defined(AFHDS2A_RX_TELEMETRY) && not defined(BAYANG_RX_TELEMETRY) && not defined(DEVO_HUB_TELEMETRY) && not defined(PROPEL_HUB_TELEMETRY) && not defined(OMP_HUB_TELEMETRY) && not defined(WFLY2_HUB_TELEMETRY) && not defined(LOLI_HUB_TELEMETRY) && not defined(MLINK_HUB_TELEMETRY) && not defined(MLINK_FW_TELEMETRY) && not defined(MT99XX_HUB_TELEMETRY)
|
||||||
#undef TELEMETRY
|
#undef TELEMETRY
|
||||||
#undef INVERT_TELEMETRY
|
#undef INVERT_TELEMETRY
|
||||||
#undef MULTI_TELEMETRY
|
#undef MULTI_TELEMETRY
|
||||||
|
@ -333,6 +333,7 @@
|
|||||||
#define RLINK_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX
|
#define RLINK_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX
|
||||||
#define WFLY2_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX
|
#define WFLY2_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX
|
||||||
#define LOLI_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX
|
#define LOLI_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX
|
||||||
|
#define MT99XX_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX
|
||||||
//#define MLINK_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX
|
//#define MLINK_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX
|
||||||
#define MLINK_FW_TELEMETRY // Forward received telemetry packet directly to TX to be decoded by erskyTX and OpenTX
|
#define MLINK_FW_TELEMETRY // Forward received telemetry packet directly to TX to be decoded by erskyTX and OpenTX
|
||||||
//#define HITEC_HUB_TELEMETRY // Use FrSkyD Hub format to send basic telemetry to the radios which can decode it like er9x, erskyTX and OpenTX
|
//#define HITEC_HUB_TELEMETRY // Use FrSkyD Hub format to send basic telemetry to the radios which can decode it like er9x, erskyTX and OpenTX
|
||||||
|
@ -1063,6 +1063,8 @@ A|E|T|R|3D6G
|
|||||||
### Sub_protocol DRAGON - *6*
|
### Sub_protocol DRAGON - *6*
|
||||||
Model: Eachine Mini Wing Dragon
|
Model: Eachine Mini Wing Dragon
|
||||||
|
|
||||||
|
Telemetry is supported: A1 = battery voltage with a Ratio of 25.5, RSSI = dummy value of 100
|
||||||
|
|
||||||
CH1|CH2|CH3|CH4|CH5|CH6
|
CH1|CH2|CH3|CH4|CH5|CH6
|
||||||
---|---|---|---|---|---
|
---|---|---|---|---|---
|
||||||
A|E|T|R|MODE|RTH
|
A|E|T|R|MODE|RTH
|
||||||
|
Loading…
x
Reference in New Issue
Block a user