mirror of
https://github.com/pascallanger/DIY-Multiprotocol-TX-Module.git
synced 2025-12-25 21:03:15 +00:00
Compare commits
3 Commits
pascallang
...
dcbc557bf7
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dcbc557bf7 | ||
|
|
e556f5cc40 | ||
|
|
9ef2415178 |
@@ -232,7 +232,7 @@ static void __attribute__((unused)) RLINK_send_packet()
|
|||||||
packet[1] |= 0x21; //air 0x21 on dump but it looks to support telemetry at least RSSI
|
packet[1] |= 0x21; //air 0x21 on dump but it looks to support telemetry at least RSSI
|
||||||
break;
|
break;
|
||||||
case RLINK_DUMBORC:
|
case RLINK_DUMBORC:
|
||||||
packet[1] = 0x00; //always 0x00 on dump
|
packet[1] |= 0x01; //always 0x00 on dump but does appear to support telemtry on newer transmitters
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -384,8 +384,9 @@ uint16_t RLINK_callback()
|
|||||||
debug("Telem:");
|
debug("Telem:");
|
||||||
#endif
|
#endif
|
||||||
CC2500_ReadData(packet_in, len);
|
CC2500_ReadData(packet_in, len);
|
||||||
if(packet_in[0]==RLINK_RX_PACKET_LEN && (packet_in[len-1] & 0x80) && memcmp(&packet[2],rx_tx_addr,RLINK_TX_ID_LEN)==0 && packet_in[6]==packet[1])
|
if(packet_in[0]==RLINK_RX_PACKET_LEN && (packet_in[len-1] & 0x80) && memcmp(&packet[2],rx_tx_addr,RLINK_TX_ID_LEN)==0 && (packet_in[6]==packet[1] || sub_protocol == RLINK_DUMBORC))
|
||||||
{//Correct telemetry received: length, CRC, ID and type
|
{//Correct telemetry received: length, CRC, ID and type
|
||||||
|
//packet_in[6] is 0x00 on almost all DumboRC RX so assume it is always valid
|
||||||
#ifdef RLINK_DEBUG_TELEM
|
#ifdef RLINK_DEBUG_TELEM
|
||||||
for(uint8_t i=0;i<len;i++)
|
for(uint8_t i=0;i<len;i++)
|
||||||
debug(" %02X",packet_in[i]);
|
debug(" %02X",packet_in[i]);
|
||||||
|
|||||||
@@ -169,6 +169,7 @@ uint16_t SGF22_callback()
|
|||||||
{
|
{
|
||||||
#ifdef SGF22_HUB_TELEMETRY
|
#ifdef SGF22_HUB_TELEMETRY
|
||||||
bool rx = false;
|
bool rx = false;
|
||||||
|
static uint8_t telem_count = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
switch(phase)
|
switch(phase)
|
||||||
@@ -195,6 +196,8 @@ uint16_t SGF22_callback()
|
|||||||
{//packets: 00 0B 00 -> 00 0B 01
|
{//packets: 00 0B 00 -> 00 0B 01
|
||||||
telemetry_link = 1;
|
telemetry_link = 1;
|
||||||
v_lipo1 = packet_in[2] ? 0 : 255; //2.9V for 1S, 7.0V for 2S
|
v_lipo1 = packet_in[2] ? 0 : 255; //2.9V for 1S, 7.0V for 2S
|
||||||
|
telemetry_lost = 0;
|
||||||
|
telem_count = 0;
|
||||||
}
|
}
|
||||||
#if 0
|
#if 0
|
||||||
debug("L %d ",p_len);
|
debug("L %d ",p_len);
|
||||||
@@ -204,6 +207,20 @@ uint16_t SGF22_callback()
|
|||||||
debugln("");
|
debugln("");
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
if(telem_count > 4*63) // Around 3.5sec with no telemetry
|
||||||
|
telemetry_lost = 1;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
telem_count++;
|
||||||
|
if(!telemetry_lost && (telem_count & 0x3F) == 0)
|
||||||
|
{// Should have received a telem packet but... Send telem to the radio to keep it alive
|
||||||
|
telemetry_link = 1;
|
||||||
|
#if 0
|
||||||
|
debugln("Miss");
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
phase++;
|
phase++;
|
||||||
break;
|
break;
|
||||||
@@ -245,6 +262,7 @@ void SGF22_init()
|
|||||||
phase = SGF22_DATA1;
|
phase = SGF22_DATA1;
|
||||||
#ifdef SGF22_HUB_TELEMETRY
|
#ifdef SGF22_HUB_TELEMETRY
|
||||||
RX_RSSI = 100; // Dummy value
|
RX_RSSI = 100; // Dummy value
|
||||||
|
telemetry_lost = 1;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -244,7 +244,7 @@ uint16_t V761_callback()
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
packet_count++;
|
packet_count++;
|
||||||
if(!telemetry_lost && !rx && (packet_count%64) == 0)
|
if(!telemetry_lost && !rx && (packet_count & 0x3F) == 0)
|
||||||
{// Should have received a telem packet but... Send telem to the radio to keep it alive
|
{// Should have received a telem packet but... Send telem to the radio to keep it alive
|
||||||
telemetry_link = 1;
|
telemetry_link = 1;
|
||||||
#ifdef V761_TELEM_DEBUG
|
#ifdef V761_TELEM_DEBUG
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ You've upgraded the module but the radio does not display the name of the protoc
|
|||||||
# Available Protocol Table of Contents (Listed Alphabetically)
|
# Available Protocol Table of Contents (Listed Alphabetically)
|
||||||
|
|
||||||
Protocol Name|Build|Protocol Number|Sub_Proto 0|Sub_Proto 1|Sub_Proto 2|Sub_Proto 3|Sub_Proto 4|Sub_Proto 5|Sub_Proto 6|Sub_Proto 7|RF Module|Emulation
|
Protocol Name|Build|Protocol Number|Sub_Proto 0|Sub_Proto 1|Sub_Proto 2|Sub_Proto 3|Sub_Proto 4|Sub_Proto 5|Sub_Proto 6|Sub_Proto 7|RF Module|Emulation
|
||||||
---|---|---|---|---|---|---|---|---|---|---|---
|
---|---|---|---|---|---|---|---|---|---|---|---|---
|
||||||
[Assan](Protocols_Details.md#ASSAN---24)|AIR/SFC|24|||||||||NRF24L01|
|
[Assan](Protocols_Details.md#ASSAN---24)|AIR/SFC|24|||||||||NRF24L01|
|
||||||
[Bayang](Protocols_Details.md#BAYANG---14)|AIR/SFC|14|Bayang|H8S3D|X16_AH|IRDRONE|DHD_D4|QX100|||NRF24L01|XN297
|
[Bayang](Protocols_Details.md#BAYANG---14)|AIR/SFC|14|Bayang|H8S3D|X16_AH|IRDRONE|DHD_D4|QX100|||NRF24L01|XN297
|
||||||
[Bayang RX](Protocols_Details.md#BAYANG-RX---59)|AIR/SFC|59|Multi|CPPM|||||||NRF24L01|XN297
|
[Bayang RX](Protocols_Details.md#BAYANG-RX---59)|AIR/SFC|59|Multi|CPPM|||||||NRF24L01|XN297
|
||||||
|
|||||||
Reference in New Issue
Block a user