From ccaec304d596e0f4666fbc1fe82949173366b8e5 Mon Sep 17 00:00:00 2001 From: pascallanger Date: Sat, 22 Feb 2025 11:48:03 +0100 Subject: [PATCH] KAMTOM telemetry --- Multiprotocol/Kamtom_nrf24l01.ino | 10 ++++++++-- Multiprotocol/Validate.h | 6 +++++- Multiprotocol/XK2_ccnrf.ino | 2 +- Multiprotocol/_Config.h | 1 + 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/Multiprotocol/Kamtom_nrf24l01.ino b/Multiprotocol/Kamtom_nrf24l01.ino index bd06789..6d1bfa2 100644 --- a/Multiprotocol/Kamtom_nrf24l01.ino +++ b/Multiprotocol/Kamtom_nrf24l01.ino @@ -136,10 +136,13 @@ uint16_t KAMTOM_callback() { BIND_DONE; if(packet_in[0] == 0xA0 && packet_in[14] == rx_tx_addr[2] && packet_in[15] == rx_tx_addr[3]) - { + {//Good packet with our TXID rx_tx_addr[0] = packet_in[9]; rx_tx_addr[1] = packet_in[10]; - //if(packet_in[1] == 0x03) // low voltage + #ifdef KAMTOM_HUB_TELEMETRY + v_lipo1 = packet_in[1] == 0x03 ? 0x00:0xFF; // low voltage + telemetry_link = 1; + #endif } #if 0 for(uint8_t i=0; i < KAMTOM_PAYLOAD_SIZE; i++) @@ -174,6 +177,9 @@ void KAMTOM_init() bind_counter = KAMTOM_BIND_COUNT; phase = KAMTOM_DATA; hopping_frequency_no = 0; + #ifdef KAMTOM_HUB_TELEMETRY + RX_RSSI = 100; // Dummy value + #endif } #endif diff --git a/Multiprotocol/Validate.h b/Multiprotocol/Validate.h index 0f45c01..ad0aed1 100644 --- a/Multiprotocol/Validate.h +++ b/Multiprotocol/Validate.h @@ -490,6 +490,7 @@ #undef PROPEL_HUB_TELEMETRY #undef OMP_HUB_TELEMETRY #undef V761_HUB_TELEMETRY + #undef KAMTOM_HUB_TELEMETRY #undef YUXIANG_HUB_TELEMETRY #undef RLINK_HUB_TELEMETRY #undef DSM_RX_CYRF6936_INO @@ -529,6 +530,9 @@ #if not defined(V761_NRF24L01_INO) #undef V761_HUB_TELEMETRY #endif + #if not defined(KAMTOM_NRF24L01_INO) + #undef KAMTOM_HUB_TELEMETRY + #endif #if not defined(YUXIANG_NRF24L01_INO) #undef YUXIANG_HUB_TELEMETRY #endif @@ -589,7 +593,7 @@ //protocols using FRSKYD user frames #undef HUB_TELEMETRY #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(V761_HUB_TELEMETRY) && not defined(YUXIANG_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) && not defined(MULTI_CONFIG_INO) + #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(V761_HUB_TELEMETRY) && not defined(KAMTOM_HUB_TELEMETRY) && not defined(YUXIANG_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) && not defined(MULTI_CONFIG_INO) #undef TELEMETRY #undef INVERT_TELEMETRY #undef MULTI_TELEMETRY diff --git a/Multiprotocol/XK2_ccnrf.ino b/Multiprotocol/XK2_ccnrf.ino index 97a7e52..7e5bcd1 100644 --- a/Multiprotocol/XK2_ccnrf.ino +++ b/Multiprotocol/XK2_ccnrf.ino @@ -200,7 +200,7 @@ uint16_t XK2_callback() } return 1000; case XK2_DATA_PREP: - crc8=eeprom_read_byte((EE_ADDR)(XK2_EEPROM_OFFSET+RX_num)); + crc8 = eeprom_read_byte((EE_ADDR)(XK2_EEPROM_OFFSET+RX_num)); debugln("R:RX_ID=%02X",crc8); XN297_SetTxRxMode(TXRX_OFF); XN297_SetTxRxMode(TX_EN); diff --git a/Multiprotocol/_Config.h b/Multiprotocol/_Config.h index 2cab843..c58c92a 100644 --- a/Multiprotocol/_Config.h +++ b/Multiprotocol/_Config.h @@ -351,6 +351,7 @@ #define NCC1701_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX #define OMP_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX #define V761_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX +#define KAMTOM_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX #define YUXIANG_HUB_TELEMETRY #define PROPEL_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX #define CABELL_HUB_TELEMETRY // Use FrSkyD Hub format to send telemetry to TX