From 47564c69f265afd4ffa4012dfcbb5954c9756ad4 Mon Sep 17 00:00:00 2001 From: Mateusz Lubecki Date: Mon, 9 May 2022 22:46:50 +0200 Subject: [PATCH] daily, a lot of reworking. tcp disconnecto doesn't work --- .../ParaMETEO-STM32L476RG.launch | 2 +- doc/eclipse_indexer_config.png | Bin 0 -> 106131 bytes include/api/api_content.h | 2 +- include/aprsis.h | 7 +-- include/etc/http_client_configuration.h | 1 + include/main.h | 2 +- src/api.c | 4 +- src/aprsis.c | 16 ++++-- src/main.c | 4 +- src/packet_tx_handler.c | 20 +++++-- system/src/gsm/sim800c_tcpip.c | 49 ++++++++++++++---- system/src/http_client/http_client.c | 7 +++ 12 files changed, 87 insertions(+), 27 deletions(-) create mode 100644 doc/eclipse_indexer_config.png create mode 100644 include/etc/http_client_configuration.h diff --git a/doc/eclipse_debugger_launch/ParaMETEO-STM32L476RG.launch b/doc/eclipse_debugger_launch/ParaMETEO-STM32L476RG.launch index 57fdb44..3cbb4de 100644 --- a/doc/eclipse_debugger_launch/ParaMETEO-STM32L476RG.launch +++ b/doc/eclipse_debugger_launch/ParaMETEO-STM32L476RG.launch @@ -57,6 +57,6 @@ - + diff --git a/doc/eclipse_indexer_config.png b/doc/eclipse_indexer_config.png new file mode 100644 index 0000000000000000000000000000000000000000..3786b8e6918c7ea561641a34bd5482d450342710 GIT binary patch literal 106131 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 BBl!RT literal 0 HcmV?d00001 diff --git a/include/api/api_content.h b/include/api/api_content.h index 5ed59af..04bf6c7 100644 --- a/include/api/api_content.h +++ b/include/api/api_content.h @@ -18,7 +18,7 @@ #define ENTRIES_STRING(ENTRY) \ ENTRY(main_config_data_basic->callsign, callsign) \ ENTRY(SW_VER, sw_ver) \ - ENTRY(SW_DATE, sw_data) \ + ENTRY(SW_DATE, sw_date) \ #define ENTRIES_32INT_STATUS(ENTRY) \ ENTRY(master_time, master_time) \ diff --git a/include/aprsis.h b/include/aprsis.h index 613240d..d57d961 100644 --- a/include/aprsis.h +++ b/include/aprsis.h @@ -17,14 +17,15 @@ typedef enum aprsis_return { APRSIS_OK = 0, APRSIS_NOT_CONFIGURED = 1, APRSIS_WRONG_STATE = 2, - APRSIS_ALREADY_CONNECTED = 3 + APRSIS_ALREADY_CONNECTED = 3, + APRSIS_UNKNOWN = -1 }aprsis_return_t; extern uint8_t aprsis_connected; void aprsis_init(srl_context_t * context, gsm_sim800_state_t * gsm_modem_state, char * callsign, uint8_t ssid, uint32_t passcode, char * default_server, uint16_t default_port); -aprsis_return_t aprsis_connect_and_login(char * address, uint8_t address_ln, uint16_t port); -aprsis_return_t aprsis_connect_and_login_default(void); +aprsis_return_t aprsis_connect_and_login(char * address, uint8_t address_ln, uint16_t port, uint8_t auto_send_beacon); +aprsis_return_t aprsis_connect_and_login_default(uint8_t auto_send_beacon); void aprsis_disconnect(void); void aprsis_receive_callback(srl_context_t* srl_context); void aprsis_check_alive(void); diff --git a/include/etc/http_client_configuration.h b/include/etc/http_client_configuration.h new file mode 100644 index 0000000..65fb6cb --- /dev/null +++ b/include/etc/http_client_configuration.h @@ -0,0 +1 @@ +#define HTTP_CLIENT_DEFAULT_TIMEOUT_MSEC 9000 diff --git a/include/main.h b/include/main.h index 2ae1218..437ae5f 100644 --- a/include/main.h +++ b/include/main.h @@ -8,7 +8,7 @@ #include "config_data.h" #define SW_VER "EA05" -#define SW_DATE "04052022" +#define SW_DATE "09052022" #define SYSTICK_TICKS_PER_SECONDS 100 #define SYSTICK_TICKS_PERIOD 10 diff --git a/src/api.c b/src/api.c index b16f522..b35d237 100644 --- a/src/api.c +++ b/src/api.c @@ -69,10 +69,10 @@ static void api_construct_url_status(api_endpoint_t endpoint) { switch (endpoint) { case PARAMETEO_STATUS: - snprintf(api_url_buffer, URL_BUFFER_LN - 1, "%s/parameteo/%s/status", api_base_url, api_station_name); + snprintf(api_url_buffer, URL_BUFFER_LN - 1, "%s/parameteo/%s/status/v1", api_base_url, api_station_name); break; case PARAMETEO_WX: - snprintf(api_url_buffer, URL_BUFFER_LN - 1, "%s/parameteo/%s/measurements", api_base_url, api_station_name); + snprintf(api_url_buffer, URL_BUFFER_LN - 1, "%s/parameteo/%s/measurements/v1", api_base_url, api_station_name); break; } } diff --git a/src/aprsis.c b/src/aprsis.c index ce31b7c..bb57a69 100644 --- a/src/aprsis.c +++ b/src/aprsis.c @@ -96,7 +96,7 @@ void aprsis_init(srl_context_t * context, gsm_sim800_state_t * gsm_modem_state, } -aprsis_return_t aprsis_connect_and_login(char * address, uint8_t address_ln, uint16_t port) { +aprsis_return_t aprsis_connect_and_login(char * address, uint8_t address_ln, uint16_t port, uint8_t auto_send_beacon) { // this function has blocking io uint8_t out = APRSIS_WRONG_STATE; @@ -158,7 +158,15 @@ aprsis_return_t aprsis_connect_and_login(char * address, uint8_t address_ln, uin if (retval == 0) { aprsis_logged = 1; - aprsis_send_beacon(0); + // set current timestamp as last + aprsis_last_keepalive_ts = master_time; + + if (auto_send_beacon != 0) { + aprsis_send_beacon(0); + } + + // set timeout for aprs-is server + srl_switch_timeout(aprsis_serial_port, 1, APRSIS_TIMEOUT_MS); // wait for consecutive data gsm_sim800_tcpip_async_receive(aprsis_serial_port, aprsis_gsm_modem_state, 0, 61000, aprsis_receive_callback); @@ -186,9 +194,9 @@ aprsis_return_t aprsis_connect_and_login(char * address, uint8_t address_ln, uin } -aprsis_return_t aprsis_connect_and_login_default(void) { +aprsis_return_t aprsis_connect_and_login_default(uint8_t auto_send_beacon) { - return aprsis_connect_and_login(aprsis_default_server_address, aprsis_default_server_address_ln, aprsis_default_server_port); + return aprsis_connect_and_login(aprsis_default_server_address, aprsis_default_server_address_ln, aprsis_default_server_port, auto_send_beacon); } void aprsis_disconnect(void) { diff --git a/src/main.c b/src/main.c index 5896e3c..6cd6c2a 100644 --- a/src/main.c +++ b/src/main.c @@ -121,7 +121,7 @@ /** * A foreword about '#define' mess. This software is indented to run on at least two - * different hardware platform. First which is ParaTNC basing on STM32F100 and second + * different hardware platforms. First which is ParaTNC basing on STM32F100 and second * ParaMETEO using STM32L476. In future more platforms may appear. Like ParaTNC2 which * will be a ParaMETEO without battery charging and in form factor similar to ParaTNC. * @@ -1289,7 +1289,7 @@ int main(int argc, char* argv[]){ gsm_sim800_poolers_one_minute(main_gsm_srl_ctx_ptr, &main_gsm_state); - aprsis_connect_and_login_default(); + aprsis_connect_and_login_default(1); // if (gsm_sim800_gprs_ready == 1) { // diff --git a/src/packet_tx_handler.c b/src/packet_tx_handler.c index 9588bca..cd31a0c 100644 --- a/src/packet_tx_handler.c +++ b/src/packet_tx_handler.c @@ -106,9 +106,23 @@ void packet_tx_tcp_handler(void) { uint8_t result = 0; + aprsis_return_t aprsis_result = APRSIS_UNKNOWN; + if ((packet_tx_trigger_tcp & APRSIS_TRIGGER_METEO) != 0) { - // send APRS-IS frame, if APRS-IS is not connected this function will return immediately - aprsis_send_wx_frame(rte_wx_average_windspeed, rte_wx_max_windspeed, rte_wx_average_winddirection, rte_wx_temperature_average_external_valid, rte_wx_pressure_valid, rte_wx_humidity_valid); + + if (aprsis_connected == 0) { + aprsis_result = aprsis_connect_and_login_default(0); + + if (aprsis_result == APRSIS_OK) { + // send APRS-IS frame, if APRS-IS is not connected this function will return immediately + aprsis_send_wx_frame(rte_wx_average_windspeed, rte_wx_max_windspeed, rte_wx_average_winddirection, rte_wx_temperature_average_external_valid, rte_wx_pressure_valid, rte_wx_humidity_valid); + } + } + else { + // send APRS-IS frame, if APRS-IS is not connected this function will return immediately + aprsis_send_wx_frame(rte_wx_average_windspeed, rte_wx_max_windspeed, rte_wx_average_winddirection, rte_wx_temperature_average_external_valid, rte_wx_pressure_valid, rte_wx_humidity_valid); + } + // clear the bit packet_tx_trigger_tcp ^= APRSIS_TRIGGER_METEO; @@ -149,7 +163,7 @@ void packet_tx_tcp_handler(void) { packet_tx_trigger_tcp ^= API_TRIGGER_METEO; } else if ((packet_tx_trigger_tcp & RECONNECT_APRSIS) != 0) { - result = aprsis_connect_and_login_default(); + result = aprsis_connect_and_login_default(1); if (result == APRSIS_OK) { packet_tx_trigger_tcp ^= RECONNECT_APRSIS; diff --git a/system/src/gsm/sim800c_tcpip.c b/system/src/gsm/sim800c_tcpip.c index eee3d85..12f979f 100644 --- a/system/src/gsm/sim800c_tcpip.c +++ b/system/src/gsm/sim800c_tcpip.c @@ -3,6 +3,7 @@ #include "gsm/sim800c.h" #include "main.h" +#include "delay.h" #include @@ -228,21 +229,49 @@ void gsm_sim800_tcpip_close(srl_context_t * srl_context, gsm_sim800_state_t * st uint8_t receive_result = 0; + volatile uint8_t escape_counter = 0; + if (*state == SIM800_TCP_CONNECTED || force == 1) { - // send escape sequence to exit connection mode - srl_send_data(srl_context, (const uint8_t*) ESCAPE, SRL_MODE_ZERO, strlen(ESCAPE), SRL_INTERNAL); - // wait for transmission to finish - srl_wait_for_tx_completion(srl_context); + do { + // set default timeout of 1200msec + srl_switch_timeout(srl_context, SRL_TIMEOUT_ENABLE, 2222); - // wait for OK to be received - srl_receive_data_with_callback(srl_context, gsm_sim800_escape_terminating_callback); + // send escape sequence to exit connection mode + srl_send_data(srl_context, (const uint8_t*) ESCAPE, SRL_MODE_ZERO, strlen(ESCAPE), SRL_INTERNAL); - // start timeout calculation - srl_context->srl_rx_timeout_calc_started = 1; + // wait for transmission to finish + srl_wait_for_tx_completion(srl_context); - // wait for it to finish - srl_wait_for_rx_completion_or_timeout(srl_context, & receive_result); + // wait for OK to be received + srl_receive_data(srl_context, 4, SRL_NO_START_CHR, SRL_NO_STOP_CHR, SRL_ECHO_DISABLE, 0x7F, 0); + + // start timeout calculation + srl_switch_timeout_for_waiting(srl_context, SRL_TIMEOUT_ENABLE); + + // wait for it to finish + srl_wait_for_rx_completion_or_timeout(srl_context, & receive_result); + + // check if we escaped from data mode + if (strncmp((const char *) (srl_context->srl_rx_buf_pointer), NEWLINE, 1) == 0) { + break; + } + else if (strncmp((const char *) (srl_context->srl_rx_buf_pointer), OK, 2) == 0) { + break; + } + else if (strncmp((const char *) (srl_context->srl_rx_buf_pointer), ESCAPE, 3) == 0) { + // if module has already returned to command mode it will echo all input + break; + } + else { + if (receive_result == SRL_OK) { + delay_fixed(200); + + } + } + + + } while(escape_counter++ < 3); // send escape sequence to exit connection mode srl_send_data(srl_context, (const uint8_t*) CLOSE_TCP, SRL_MODE_ZERO, strlen(CLOSE_TCP), SRL_INTERNAL); diff --git a/system/src/http_client/http_client.c b/system/src/http_client/http_client.c index b7c2ebc..4079c77 100644 --- a/system/src/http_client/http_client.c +++ b/system/src/http_client/http_client.c @@ -1,6 +1,7 @@ #include "http_client/http_client.h" #include "http_client/http_client_rx_callback.h" #include "http_client/http_client_headers.h" +#include "http_client_configuration.h" #include "gsm/sim800c_tcpip.h" @@ -269,6 +270,9 @@ uint8_t http_client_async_get(char * url, uint8_t url_ln, uint16_t response_ln_l // check if data has been sent succesfully if (connect_result == 0) { + // configure timeout for reception + srl_switch_timeout(http_client_deticated_serial_context, 1, HTTP_CLIENT_DEFAULT_TIMEOUT_MSEC); + // reset callback to initial state http_client_rx_done_callback_init(); @@ -367,6 +371,9 @@ uint8_t http_client_async_post(char * url, uint8_t url_ln, char * data_to_post, // check if data has been sent succesfully if (connect_result == 0) { + // configure timeout for reception + srl_switch_timeout(http_client_deticated_serial_context, 1, HTTP_CLIENT_DEFAULT_TIMEOUT_MSEC); + // reset callback to initial state http_client_rx_done_callback_init();