bugfix in read DID response handler

master
Mateusz Lubecki 2023-11-26 09:06:57 +01:00
rodzic f62de2051a
commit ef26fd94e7
6 zmienionych plików z 17 dodań i 4 usunięć

Plik binarny nie jest wyświetlany.

Wyświetl plik

@ -37,12 +37,14 @@ extern char did_dummy_data;
ENTRY(0x1501U, gsm_sim800_simcard_status_string) \
ENTRY(0x1502U, gsm_sim800_cellid) \
ENTRY(0x1503U, gsm_sim800_lac) \
ENTRY(0x5555U, main_test_string) \
#define DIDS_FLOAT(ENTRY) \
ENTRY(0x2000U, rte_wx_temperature_average_external_valid, DID_EMPTY, DID_EMPTY) \
ENTRY(0x2001U, rte_wx_temperature_internal_valid, DID_EMPTY, DID_EMPTY) \
ENTRY(0x2002U, rte_wx_pressure_history[0], rte_wx_pressure_history[1], rte_wx_pressure_history[2]) \
ENTRY(0x1505U, gsm_sim800_signal_level_dbm, DID_EMPTY, DID_EMPTY) \
ENTRY(0x2222U, main_test_float, DID_EMPTY, DID_EMPTY) \
#define DIDS_NUMERIC(ENTRY) \
ENTRY(0x1000U, master_time, DID_EMPTY, DID_EMPTY) \

Wyświetl plik

@ -15,7 +15,7 @@
#define SYSTICK_TICKS_PER_SECONDS 100
#define SYSTICK_TICKS_PERIOD 10
#define INTERNAL_WATCHDOG
//#define INTERNAL_WATCHDOG
#define EXTERNAL_WATCHDOG
#define PWR_SWITCH_BOTH
@ -73,6 +73,10 @@ extern uint8_t main_woken_up;
extern int8_t main_cpu_load;
extern const float main_test_float;
extern const char main_test_string[11];
extern char after_tx_lock;
extern unsigned short rx10m, tx10m, digi10m, digidrop10m, kiss10m;

Wyświetl plik

@ -8,8 +8,8 @@
#ifndef SOFTWARE_VERSION_H_
#define SOFTWARE_VERSION_H_
#define SW_VER "EB03"
#define SW_DATE "19112023"
#define SW_VER "EB04"
#define SW_DATE "26112023"
#define SW_KISS_PROTO "B"
extern const char software_version_str[5];

Wyświetl plik

@ -389,7 +389,7 @@ uint8_t kiss_did_response(uint16_t identifier, uint8_t * output_buffer, uint16_t
//move forward a poiner to response buffer
output_buffer += sizeof(float);
out += found.first_data_size;
out += sizeof(float);
if (number_of_data_source > 1) {
//append second data source
@ -418,6 +418,9 @@ uint8_t kiss_did_response(uint16_t identifier, uint8_t * output_buffer, uint16_t
output_buffer[0] = (identifier & 0xFF);
output_buffer[1] = (identifier & 0xFF00) >> 8;
// move after DID value and size_byte
output_buffer += 2;
// if this is a string DID
const void * str = (void *)found.first_data;

Wyświetl plik

@ -292,6 +292,10 @@ telemetry_description_t main_telemetry_description = TELEMETRY_NOTHING;
char after_tx_lock;
const float main_test_float = 123.4f;
const char main_test_string[11] = "1234556aaa\0";
unsigned short rx10m = 0, tx10m = 0, digi10m = 0, digidrop10m = 0, kiss10m = 0;
static void message_callback(struct AX25Msg *msg) {