From 1cc6e3c193d0d94ea9f4bcba57a95d428f0b6e54 Mon Sep 17 00:00:00 2001 From: pennam Date: Tue, 15 Oct 2024 11:43:17 +0200 Subject: [PATCH 01/20] GSM: extend number of connection retries to 10, cut down maximum wait time to 8s --- libraries/GSM/src/GSM.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/GSM/src/GSM.h b/libraries/GSM/src/GSM.h index cf3652c26..fb3773e85 100644 --- a/libraries/GSM/src/GSM.h +++ b/libraries/GSM/src/GSM.h @@ -132,9 +132,9 @@ class GSMClass : public MbedSocketClass { bool _at_debug = false; /* Internal cellular state machine retries. Values are in seconds. - * This array also defines the maximum number of retries to 6 + * This array also defines the maximum number of retries to CELLULAR_RETRY_ARRAY_SIZE */ - const uint16_t _retry_timeout[6] = {1, 2, 4, 8, 16, 32}; + const uint16_t _retry_timeout[CELLULAR_RETRY_ARRAY_SIZE] = {1, 2, 4, 8, 8, 8, 8, 8, 8, 8}; static constexpr int RSSI_UNKNOWN = 99; static const char * const sim_state_str[]; From 56100ccc9cef488e3522294dd1e4bea32d05adc5 Mon Sep 17 00:00:00 2001 From: pennam Date: Tue, 15 Oct 2024 12:41:08 +0200 Subject: [PATCH 02/20] GSM: remove isReady --- libraries/GSM/src/GSM.cpp | 20 -------------------- libraries/GSM/src/GSM.h | 1 - 2 files changed, 21 deletions(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index cf5f5b975..786cd0ee6 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -66,11 +66,6 @@ int arduino::GSMClass::begin(const char* pin, const char* apn, const char* usern _device = _context->get_device(); _device->modem_debug_on(_at_debug); - if (!isReady()) { - DEBUG_ERROR("Cellular device not ready"); - return 0; - } - _device->set_cmux_status_flag(_cmuxGSMenable); _device->set_retry_timeout_array(_retry_timeout, sizeof(_retry_timeout) / sizeof(_retry_timeout[0])); _device->attach(mbed::callback(this, &GSMClass::onStatusChange)); @@ -170,22 +165,7 @@ void arduino::GSMClass::reset() { delay(1); } -bool arduino::GSMClass::isReady(const int timeout) { - if (!_device) { - DEBUG_ERROR("No device found"); - return false; - } - const unsigned int start = millis(); - while (_device->is_ready() != NSAPI_ERROR_OK) { - if (millis() - start > timeout) { - DEBUG_WARNING("Timeout waiting device ready"); - return false; - } - delay(100); - } - return true; -} arduino::GSMClass GSM; diff --git a/libraries/GSM/src/GSM.h b/libraries/GSM/src/GSM.h index fb3773e85..6230c10d8 100644 --- a/libraries/GSM/src/GSM.h +++ b/libraries/GSM/src/GSM.h @@ -150,7 +150,6 @@ class GSMClass : public MbedSocketClass { void onStatusChange(nsapi_event_t ev, intptr_t in); void reset(); - bool isReady(const int timeout = 5000); }; } From 77118fa7c8c1706991d171a99053194492fe6251 Mon Sep 17 00:00:00 2001 From: pennam Date: Tue, 15 Oct 2024 12:43:27 +0200 Subject: [PATCH 03/20] GSM: add end() implementation --- libraries/GSM/src/GSM.cpp | 2 +- libraries/GSM/src/GSM.h | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index 786cd0ee6..d172591f0 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -110,7 +110,7 @@ bool arduino::GSMClass::isCmuxEnable() { } void arduino::GSMClass::end() { - + _device->shutdown(); } int arduino::GSMClass::disconnect() { diff --git a/libraries/GSM/src/GSM.h b/libraries/GSM/src/GSM.h index 6230c10d8..961a1b5c3 100644 --- a/libraries/GSM/src/GSM.h +++ b/libraries/GSM/src/GSM.h @@ -95,6 +95,9 @@ class GSMClass : public MbedSocketClass { */ int disconnect(void); + /* + * Reset internal state machine in order to be ready to reconnect again. + */ void end(void); unsigned long getTime(); From c3c1696ed0d6c1cbbbff4cd915f4b99cdcfed535 Mon Sep 17 00:00:00 2001 From: pennam Date: Tue, 15 Oct 2024 12:44:15 +0200 Subject: [PATCH 04/20] GSM: fix comments alignment --- libraries/GSM/src/GSM.h | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/libraries/GSM/src/GSM.h b/libraries/GSM/src/GSM.h index 961a1b5c3..093a4e823 100644 --- a/libraries/GSM/src/GSM.h +++ b/libraries/GSM/src/GSM.h @@ -75,24 +75,24 @@ class GSMClass : public MbedSocketClass { } } - /* Start GSM connection. - * Configure the credentials into the device. - * - * param pin: Pointer to the pin string. - * param apn: Pointer to the apn string. - * param username: Pointer to the username string. - * param password: Pointer to the password string. - * param rat: Radio Access Technology. - * - * return: 0 in case of success, negative number in case of failure - */ + /* + * Start GSM connection. Configure the credentials into the device. + * + * param pin: Pointer to the pin string. + * param apn: Pointer to the apn string. + * param username: Pointer to the username string. + * param password: Pointer to the password string. + * param rat: Radio Access Technology. + * + * return: 0 in case of success, negative number in case of failure + */ int begin(const char* pin, const char* apn, const char* username, const char* password, RadioAccessTechnologyType rat = CATNB, uint32_t band = BAND_20, bool restart = true); /* - * Disconnect from the network - * - * return: one value of wl_status_t enum - */ + * Disconnect from the network + * + * return: one value of wl_status_t enum + */ int disconnect(void); /* From c539025a4312e9b70d3c16c4d64989046ba2c96b Mon Sep 17 00:00:00 2001 From: pennam Date: Tue, 15 Oct 2024 12:51:17 +0200 Subject: [PATCH 05/20] GSM: add setTimeout function --- libraries/GSM/src/GSM.cpp | 5 +++++ libraries/GSM/src/GSM.h | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index d172591f0..18d280747 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -68,6 +68,7 @@ int arduino::GSMClass::begin(const char* pin, const char* apn, const char* usern _device->set_cmux_status_flag(_cmuxGSMenable); _device->set_retry_timeout_array(_retry_timeout, sizeof(_retry_timeout) / sizeof(_retry_timeout[0])); + _device->set_timeout(_timeout); _device->attach(mbed::callback(this, &GSMClass::onStatusChange)); _device->init(); @@ -101,6 +102,10 @@ int arduino::GSMClass::begin(const char* pin, const char* apn, const char* usern return connect_status == NSAPI_ERROR_OK ? 1 : 0; } +void arduino::GSMClass::setTimeout(unsigned long timeout) { + _timeout = timeout; +} + void arduino::GSMClass::enableCmux() { _cmuxGSMenable = true; } diff --git a/libraries/GSM/src/GSM.h b/libraries/GSM/src/GSM.h index 093a4e823..fac09e4ea 100644 --- a/libraries/GSM/src/GSM.h +++ b/libraries/GSM/src/GSM.h @@ -100,8 +100,12 @@ class GSMClass : public MbedSocketClass { */ void end(void); - unsigned long getTime(); + /* + * Change cellular state timeouts. Needs to be called before GSM.begin() + */ + void setTimeout(unsigned long timeout); + unsigned long getTime(); unsigned long getLocalTime(); bool setTime(unsigned long const epoch, int const timezone = 0); @@ -133,6 +137,7 @@ class GSMClass : public MbedSocketClass { mbed::CellularContext* _context = nullptr; mbed::CellularDevice* _device = nullptr; bool _at_debug = false; + unsigned long _timeout = 1000; /* Internal cellular state machine retries. Values are in seconds. * This array also defines the maximum number of retries to CELLULAR_RETRY_ARRAY_SIZE From 4422d75827829a604937c374b55532b3861a8378 Mon Sep 17 00:00:00 2001 From: pennam Date: Wed, 16 Oct 2024 10:56:52 +0200 Subject: [PATCH 06/20] GSM: cleanup power on sequence and add comments --- libraries/GSM/src/GSM.cpp | 28 ++++++++++++++++++++++++---- libraries/GSM/src/GSM.h | 1 + 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index 18d280747..a576801a5 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -46,10 +46,26 @@ mbed::CellularDevice *mbed::CellularDevice::get_default_instance() int arduino::GSMClass::begin(const char* pin, const char* apn, const char* username, const char* password, RadioAccessTechnologyType rat, uint32_t band, bool restart) { + /* Assume module is powered ON. Uncomment this line is you are using + * Edge Control without Arduino_ConnectionHandler + * #if defined (ARDUINO_EDGE_CONTROL) + * pinMode(ON_MKR2, OUTPUT); + * digitalWrite(ON_MKR2, HIGH); + * #endif + */ + + /* Ensure module is not under reset */ + pinMode(MBED_CONF_GEMALTO_CINTERION_RST, OUTPUT); + digitalWrite(MBED_CONF_GEMALTO_CINTERION_RST, LOW); + + /* Reset module if needed */ if (restart || isCmuxEnable()) { reset(); } + /* Create rising edge on pin ON */ + on(); + if (!_context) { _context = mbed::CellularContext::get_default_instance(); } @@ -59,9 +75,10 @@ int arduino::GSMClass::begin(const char* pin, const char* apn, const char* usern return 0; } - pinMode(MBED_CONF_GEMALTO_CINTERION_ON, INPUT_PULLDOWN); - +#if defined(ARDUINO_PORTENTA_H7_M7) || defined(ARDUINO_PORTENTA_H7_M4) + /* This is needed to wakeup module if hw flow control is enabled */ static mbed::DigitalOut rts(MBED_CONF_GEMALTO_CINTERION_RTS, 0); +#endif _device = _context->get_device(); _device->modem_debug_on(_at_debug); @@ -159,10 +176,15 @@ NetworkInterface* arduino::GSMClass::getNetwork() { } void arduino::GSMClass::reset() { + /* Reset logic is inverted */ pinMode(MBED_CONF_GEMALTO_CINTERION_RST, OUTPUT); digitalWrite(MBED_CONF_GEMALTO_CINTERION_RST, HIGH); delay(800); digitalWrite(MBED_CONF_GEMALTO_CINTERION_RST, LOW); +} + +void arduino::GSMClass::on() { + /* Module needs a rising edge to power on */ pinMode(MBED_CONF_GEMALTO_CINTERION_ON, OUTPUT); digitalWrite(MBED_CONF_GEMALTO_CINTERION_ON, LOW); delay(1); @@ -171,6 +193,4 @@ void arduino::GSMClass::reset() { } - - arduino::GSMClass GSM; diff --git a/libraries/GSM/src/GSM.h b/libraries/GSM/src/GSM.h index fac09e4ea..0d815e120 100644 --- a/libraries/GSM/src/GSM.h +++ b/libraries/GSM/src/GSM.h @@ -158,6 +158,7 @@ class GSMClass : public MbedSocketClass { void onStatusChange(nsapi_event_t ev, intptr_t in); void reset(); + void on(); }; } From fa7e2f55805026722f8a4bbbd3ddb82cc3c1bb97 Mon Sep 17 00:00:00 2001 From: pennam Date: Thu, 31 Oct 2024 08:52:44 +0100 Subject: [PATCH 07/20] GSM: remove SYSSTART urc before shutdown --- libraries/GSM/src/GSM.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index a576801a5..3ebbf5108 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -132,7 +132,10 @@ bool arduino::GSMClass::isCmuxEnable() { } void arduino::GSMClass::end() { - _device->shutdown(); + if(_device) { + _device->shutdown(); + _device->get_at_handler()->set_urc_handler("^SYSSTART", nullptr); + } } int arduino::GSMClass::disconnect() { From 2e852a6000a2f643847ad744028cc479b0c486b9 Mon Sep 17 00:00:00 2001 From: pennam Date: Thu, 31 Oct 2024 08:53:25 +0100 Subject: [PATCH 08/20] GSM: don't disconnect if not connected --- libraries/GSM/src/GSM.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index 3ebbf5108..fc3841161 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -139,9 +139,14 @@ void arduino::GSMClass::end() { } int arduino::GSMClass::disconnect() { - if (_context) { + if (!_context) { + return 0; + } + + if (_context->is_connected()) { return _context->disconnect(); } + return 0; } From ca4e1a492b2781b22ac007b47f1b673b544e0524 Mon Sep 17 00:00:00 2001 From: pennam Date: Thu, 31 Oct 2024 08:54:19 +0100 Subject: [PATCH 09/20] GSMClient: retry write --- libraries/GSM/src/GSMClient.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/libraries/GSM/src/GSMClient.h b/libraries/GSM/src/GSMClient.h index f29292fb9..4e1b52a35 100644 --- a/libraries/GSM/src/GSMClient.h +++ b/libraries/GSM/src/GSMClient.h @@ -29,6 +29,24 @@ class GSMClient : public AClient { NetworkInterface *getNetwork() { return GSM.getNetwork(); } + + size_t write(uint8_t b) { + int ret = 0; + do { + ret = client->write(b); + delay(0); + } while (ret == 0 && status()); + return ret; + } + + size_t write(const uint8_t *buf, size_t size) { + int ret = 0; + do { + ret = client->write(buf, size); + delay(0); + } while (ret == 0 && status()); + return ret; + } }; } From f9561efec1c4a99410a90f75a43ac8f9fd5719ad Mon Sep 17 00:00:00 2001 From: pennam Date: Thu, 31 Oct 2024 14:46:05 +0100 Subject: [PATCH 10/20] patches: GEMALTO CINTERION fixes for connection retries --- ...RION-cleanup-stack-before-connection.patch | 29 ++++++++++++++++ ...TO-CINTERION-close-socket-on-timeout.patch | 25 ++++++++++++++ ...ALTO-CINTERION-add-debug-for-urc_sis.patch | 33 +++++++++++++++++++ ...N-add-configuration-for-urcs-during-.patch | 33 +++++++++++++++++++ 4 files changed, 120 insertions(+) create mode 100644 patches/0244-GEMALTO-CINTERION-cleanup-stack-before-connection.patch create mode 100644 patches/0245-GEMALTO-CINTERION-close-socket-on-timeout.patch create mode 100644 patches/0246-GEMALTO-CINTERION-add-debug-for-urc_sis.patch create mode 100644 patches/0247-GEMALTO-CINTERION-add-configuration-for-urcs-during-.patch diff --git a/patches/0244-GEMALTO-CINTERION-cleanup-stack-before-connection.patch b/patches/0244-GEMALTO-CINTERION-cleanup-stack-before-connection.patch new file mode 100644 index 000000000..9f9634ac3 --- /dev/null +++ b/patches/0244-GEMALTO-CINTERION-cleanup-stack-before-connection.patch @@ -0,0 +1,29 @@ +From f40d4a9d65ee9163921271697d316c1061aca946 Mon Sep 17 00:00:00 2001 +From: pennam +Date: Thu, 31 Oct 2024 11:05:18 +0100 +Subject: [PATCH 244/247] GEMALTO CINTERION: cleanup stack before connection + + Allows to re-connect after a disconnection +--- + .../GEMALTO/CINTERION/GEMALTO_CINTERION_CellularContext.cpp | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularContext.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularContext.cpp +index 78955c599e..76c788cdaf 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularContext.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularContext.cpp +@@ -35,6 +35,11 @@ nsapi_error_t GEMALTO_CINTERION_CellularContext::connect(const char *sim_pin, co + { + nsapi_error_t error = NSAPI_ERROR_OK; + ++ if (_stack) { ++ delete _stack; ++ _stack = NULL; ++ } ++ + set_sim_pin(sim_pin); + set_credentials(apn, uname, pwd); + +-- +2.45.2 + diff --git a/patches/0245-GEMALTO-CINTERION-close-socket-on-timeout.patch b/patches/0245-GEMALTO-CINTERION-close-socket-on-timeout.patch new file mode 100644 index 000000000..dbb627e22 --- /dev/null +++ b/patches/0245-GEMALTO-CINTERION-close-socket-on-timeout.patch @@ -0,0 +1,25 @@ +From 4b6c6ad0554c88c369fc4e2e5ed543d52117aa3f Mon Sep 17 00:00:00 2001 +From: pennam +Date: Thu, 31 Oct 2024 12:00:51 +0100 +Subject: [PATCH 245/247] GEMALTO CINTERION: close socket on timeout + +--- + .../GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +index ac2a54282a..41a01859e7 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +@@ -59,7 +59,7 @@ void GEMALTO_CINTERION_CellularStack::urc_sis() + } + if (urc_code == 0) { + int urc_info_id = _at.read_int(); +- if (urc_info_id == 48) { ++ if (urc_info_id == 48 || urc_info_id == 20) { + tr_info("Socket closed %d", sock_id); + sock->closed = true; + if (sock->_cb) { +-- +2.45.2 + diff --git a/patches/0246-GEMALTO-CINTERION-add-debug-for-urc_sis.patch b/patches/0246-GEMALTO-CINTERION-add-debug-for-urc_sis.patch new file mode 100644 index 000000000..cac7826db --- /dev/null +++ b/patches/0246-GEMALTO-CINTERION-add-debug-for-urc_sis.patch @@ -0,0 +1,33 @@ +From 84e682a7f4c0c05dded7f12817f78c1cc9a66cfe Mon Sep 17 00:00:00 2001 +From: pennam +Date: Thu, 31 Oct 2024 12:01:47 +0100 +Subject: [PATCH 246/247] GEMALTO CINTERION: add debug for urc_sis + +--- + .../GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +index 41a01859e7..9a3f22dc3c 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +@@ -47,6 +47,8 @@ void GEMALTO_CINTERION_CellularStack::urc_sis() + int sock_id = _at.read_int(); + int urc_code = _at.read_int(); + CellularSocket *sock = find_socket(sock_id); ++ ++ tr_info("urc_sis socket id %d urc code %d\n\r", sock_id, urc_code); + if (sock) { + // Currently only UDP is supported so there is need to handle only some error codes here, + // and others are detected on sendto/recvfrom responses. +@@ -59,6 +61,7 @@ void GEMALTO_CINTERION_CellularStack::urc_sis() + } + if (urc_code == 0) { + int urc_info_id = _at.read_int(); ++ tr_info("urcInfoId %d\n\r", urc_info_id); + if (urc_info_id == 48 || urc_info_id == 20) { + tr_info("Socket closed %d", sock_id); + sock->closed = true; +-- +2.45.2 + diff --git a/patches/0247-GEMALTO-CINTERION-add-configuration-for-urcs-during-.patch b/patches/0247-GEMALTO-CINTERION-add-configuration-for-urcs-during-.patch new file mode 100644 index 000000000..04298ac6e --- /dev/null +++ b/patches/0247-GEMALTO-CINTERION-add-configuration-for-urcs-during-.patch @@ -0,0 +1,33 @@ +From 5cc2a1998d37bad69a0b4e75b7d6f7b92e95935c Mon Sep 17 00:00:00 2001 +From: pennam +Date: Thu, 31 Oct 2024 12:03:00 +0100 +Subject: [PATCH 247/247] GEMALTO CINTERION: add configuration for urcs during + read + +--- + .../CINTERION/GEMALTO_CINTERION_CellularStack.cpp | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +index 9a3f22dc3c..a96cb2b360 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +@@ -527,8 +527,13 @@ sisw_retry: + return (_at.get_last_error() == NSAPI_ERROR_OK) ? accept_len : NSAPI_ERROR_DEVICE_ERROR; + } + +-#define DISABLE_URCs _at.at_cmd_discard("^SCFG", "=", "%s%s","Tcp/WithURCs","off") +-#define RESTORE_URCs_AND_RETURN(ret) do { _at.at_cmd_discard("^SCFG", "=", "%s%s","Tcp/WithURCs","on"); return ret; } while(0) ++#if defined GEMALTO_CINTERION_DISABLE_URC_READING ++ #define DISABLE_URCs _at.at_cmd_discard("^SCFG", "=", "%s%s","Tcp/WithURCs","off") ++ #define RESTORE_URCs_AND_RETURN(ret) do { _at.at_cmd_discard("^SCFG", "=", "%s%s","Tcp/WithURCs","on"); return ret; } while(0) ++#else ++ #define DISABLE_URCs ++ #define RESTORE_URCs_AND_RETURN(ret) do { return ret; } while(0) ++#endif + + nsapi_size_or_error_t GEMALTO_CINTERION_CellularStack::socket_recvfrom_impl(CellularSocket *socket, SocketAddress *address, + void *buffer, nsapi_size_t size) +-- +2.45.2 + From d323ce9c3b6f142aab0d465c0abffcb058afcad4 Mon Sep 17 00:00:00 2001 From: pennam Date: Thu, 31 Oct 2024 14:46:40 +0100 Subject: [PATCH 11/20] TEMP: libmbed rebuild for EDGE CONTROL and PORTENTA --- variants/EDGE_CONTROL/defines.txt | 2 +- variants/EDGE_CONTROL/libs/libmbed.a | Bin 7146074 -> 7145790 bytes variants/PORTENTA_H7_M7/defines.txt | 2 +- variants/PORTENTA_H7_M7/libs/libmbed.a | Bin 7753342 -> 7753126 bytes 4 files changed, 2 insertions(+), 2 deletions(-) diff --git a/variants/EDGE_CONTROL/defines.txt b/variants/EDGE_CONTROL/defines.txt index 9b1e41ac1..bceb412fc 100644 --- a/variants/EDGE_CONTROL/defines.txt +++ b/variants/EDGE_CONTROL/defines.txt @@ -38,7 +38,7 @@ -DFEATURE_STORAGE=1 -D__FPU_PRESENT=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730202880.502858 +-DMBED_BUILD_TIMESTAMP=1730381417.6527145 -D__MBED_CMSIS_RTOS_CM -DMBED_MPU_CUSTOM -DMBED_TICKLESS diff --git a/variants/EDGE_CONTROL/libs/libmbed.a b/variants/EDGE_CONTROL/libs/libmbed.a index 99db5183e23a85d71b5492b508717133fd586fdb..4579ba6012c635010be2f7afa15473a7adfc4bf2 100644 GIT binary patch delta 61002 zcmeHwdwfjS`uCcNL`)*rNoFP@i6BUbWOA8IL=ux5K|~Tk?g%1@%fV?CwH2jRKO9x7 zhaU8Xs-mc+s;#PO4~~0PX-URKl@qFde*a^b=!OG z<@mx)HlHonWHaB}E-WfE+!*qq|4*6H6cl>023#DALLUO7jVEd_q{dLv03A|;OHfnh z3zL!YL3r;pGFC#ezTm&V%0b4O@cm3=tPB493>hB^>3)GQKTlL6I$2QI!(dr~!s-I4 zF2avNR=UsHrLidN$w9h5vy(X}?1@3DUuNN*Q_({a>x04{hJia!IE5ttcuG`aRy>Z( zcOOFG55tcWQTUG&CHm*lxU(9CKLQc@nW)Z)lcG^XTn*@T2t_<@NR64n`x8+_P1xa& zA|3$gK}^Ow3ke>9NY!;zCj_iOkyRm8XFUGv!UZT&fnxm+3!dGr6 zvaUGmg(4pS=|N1HXL7lVYDC*oWNJ91#!!Mxf48eU7C9l)B8mQ~B|b|=rkZeQ12WYG z*Ulmng(UxY0yN4r8&!u?ol)hw|5_CFcp=q4gZIXws0Kr7fRc(^D5{PyHw{KrAXR5r zU$%#RsToiiw%h|CXyv8Emg7R z$r}LkzbBumRi09{`gqdDRH^?M;~{h(G73=4fJ+a?#Ai@U!yw(SV98PxL$Q3p69Ck| zlF{bXD5kFXVi$_}>O6|sZO3uoEfgc;m3etlF{zyhKR_NOGD5`=9PN-`mL24{T z_0%IZT1o0>0L=gElQ1^;E_x)oTt~5wg7heX#<)N1EfiY=q$)R_^Fpyt7SfZ>uv&gn zBb9h}0E&GSe%gUzt3#^Jc*u2}Z7`}eTIHa)2O&HI#aTg8E>coa+=Gz68^zUxv7RWd zw)j6V{(eXgVm_L;5lYc0kQz%-E%p3z62)0Vvc7lf=cp z^Z)C=A@$$Q#ey0Jsg?>lJE3l2*{GW-r*R=YN@2ki)J;b5VAPGGY;B`Ks!`eeX{cLc z;)`h1?cWotL#oa|-A-!iha2Znw>m@Oi7XwQ&_faX7P83bz8P6+i@dAI@-RrF*CNZq zFmW}q$k? zQId={CsC3$B6gvqT0%;CegkR{7HUvZ{UKE*Ub6!wQG7J}2|}uWX32KvQG+2hhLQ&8 zkQ!Wq24oI-OAU8ngA9QA-;?w}N@yUe0!e1X4n`@DLfTQ3(#Vif#-2nB%br0g55n5x zD5Wm=ayLqO7*4N6DV30{FRK2&W`|O0f$k3esQ!=|lK2s6M+T$ruQ@#!DpKkfs5_*}M6*Vr9x~=FMLik=?_5GXs^bXo zWc&g1{~mvEq&AI2sg5#9FQKSv}htqt&VXTlu9w-5XY1aD7CKm*JmhIK$3qj zx@sRveH3ZB`=%no`ue<>vaqd>8d*kmMgg`)p_&tlous*A`N31s{`~RBKDmC!^lh z_}_WdyWx-;q$I8VR@5*^4OP&<^iq9GFvbU^jgPDuFI+`wwSbiNni@StNR5~Iv7;zW zM#U(URx3!g6?{x`Qmw44U*>&+kD^CGdX&He@27o+`ZNxt#!^&IJ@EZkBbB6ndZe9! zsLxY`)YzG)+h|Z7Al)ylOGD{T3{o94>!U{L*2tNO(i;M)A&DCyt<)gvYck;TLnyr_ z{AUzOuLRV8V>V zNE*th4Wvg2T|A328X1|6i;)aT{!u5|<|xXf2=rT*BtPZD9z0lTIPB54%~Ldp#zi?AoILGbpZf-O4l7i*>%O|b5ZugAXUG)HyUL>42RF6?Ao9L zg1Q!vY9pk`+*yRO8-V_97E}#Vb;c9EhW-E5EPArn()})Zq6SF!mHzEi)c?r=>i@}Q z_JF)#{I9D41Dd#@MuXIt%Icv@YP6EnBXh`Gs_M$=K4`!bh4iE|td^hjL`z#ObI4m7 zh-Raw22%j5W4XdnmFf91tf_$?`xJcZ05 zZ|SL)9^U^vUH89Lwf=J!3`UO~Tdt!V1(Nl}Q}`_@mOLc$o3SY8F+pl<#krl*P#qxE zMfiT%o>Ne6gCNzQpzIlxTN_M{M7a%t)R4pvO8e0*lxvNB`%vyfAU*76o$lRmL%DSa z)PLO*HDVg6W~=jt#3BVFB2nJsfYcDBpYK3<6ki2YVox;6s{^D*3jcT(PEGlSh z^Z`R23V8otkni>MAkoZc1k?}zT#O1Hgf~-B!Go~+EGno5sXC*^>(5rBg1TbgGpOKU z_#V!GEcib1!8qfI3LZP){a<}DDRl5ejRL8$6xCCY)F`E>XXcQ%gbH7by&tbEMupbE zfvE6Ncy9+PT$_OkH!Q6K;QQ~oC1_-Msk*ht7ob9GoSudXtK%YgtdSrUIs2d@ce~o7 z-6B*Z!?*zzJqVV$s3@ft=x3BrQ9t8Tg!D8shrFeyT6!ar8tnf6Xi!m2xM)E|)p6rE zDw1(`Fx3Cu!Dvv^U1*Tkl=>qS($@P^GY;HLuk{`+xfJjAd7)d=ZfH|uh*YYrMx4@k92RPYQM@^~PjAsw1SjCa9EeeH9fq7*Y*Nx@<+o zjfqhjRQw=F4`SApHw)ZePe}JAJiQAQ%eb@w6+d1;{XgCe9-$w0H$N@|h7MSY9to*7 zLXVQ!up14nC#3o&taZA}rD$l)kREokLHC9|cO5+%@c!@7LXSaavkw|ZA;~}LLU%=@ zVT}Z-Mnx5~(Xhu4sot3kx4(`Uw9#mIy&=_*I58Lve-e-yE0fK)(C~UdQW70BqT#j0 z=}~BS<3OsFq7siC=X<61_2N_fvyZ=ghxcjY=91 zQe!Hshc2mFX%0i(Q5>6AiJ#I?$%Am&AC=UEKOw!q2s9DZ2uZ%_xC@P_4FWc!5se6` zin7cAG=gHlj{8wO8;z(dp7Tc|WWY*m#Ql&S#B3bi&ZTGs#lQDG1k%H9KIGnox6p{I zyC03a$I*ytC~azoO5L+LB>6{8)K`s4{SP%BjOS6Q6(s8m_B&<=DwUD*3@WV&#Ya&o z#fV`IfpmZ3m6uTI!|>rKR9aVjJq49gd>6~{V>Bv-Qx{7w!vFtQdhr4H-!xSE=e`_KR$L1osEtS_FzZ>fqk4>MraNmSPOkSdjKx{k^k1OM?tWwi$U|36Il z)Nxc+8(h1D%4&gfI}5rGZl0*TI;851>eub2pz@l~V;U;23x-}o<<%fnXFTwFCRkou zECHh)gcWm9`TdYMbCVA$m$5Akl~>21VW|9J_%RlhQ=C5iVEhKv@j$ey>4w6e?)U91 zzi(9lHNXbY1YirW12iRm-`bCDZWk6AVv2~uV@{SD$cLxxJ2jCx%l9|ek=tkO=XuJU z`L=F4vhpwcrcJFl2J)XK%|ij;>ngn%>tTnK{JLz>dBoG&CVvv99E=z z{+gdXWMv0_)$7Q;D9v<@;E<^sER$5kCP{NxRfUE79Ll#PdEGVp1m8?TQZ<7`LCqL6 z>B;(mn%VYpZdZ2Y>&bw@n#GDmEPv;6%{*bc88gl&Q#I?{lsT-daaT2k4ptmJ+4h&_8O7$Q z=?;35Zs(vD;bg{8NF5pN?m(>d=yBBhePi*hzcd}mT0e(hM9^?){M|N75INc2AzVqq zlyr`87+00^c{hhooP;q1vJS4ym6mW%zC(gi9%?-X>w`%4D2H&R2rO(?KIhQRPc9V8 z>%u=Bu&kLEVc9B&XRC0qF2*s46cC3Q3cKivw|?_32crlEGp^WK0`55AFj1*yzprC- zyDe_WEs}B-#_N)YbSG9#h*LrxJ>aHE7v>c z9TzC&Vwy8=ITq^VR7}r)*XFvWqPfS#wKk9@hUO=gL`?C$_RWbBKM=ioawN2Qs$w9M z>5|;MwURk2`lPgFqD z#}Y7mv1rUtTi-*2AMoGi$3;KK8l{f(xzl{3k~xbPUwfw$JYFDkrc~F#=|bzua(dyB zWLO81+S}=fQds7pF8NNgc+nswYnZ40=G0j)`;0aDj^AG>e`F2;CbKoBy2J%~&%X1xM4w#@P zGxA-I@<^oRqH#B2jLV{KvJ7x6*yk;G7cy*vO9>A?5QM_%$b~H~xju>@9RMynx(AWD z-?^OOexVv^H#hIH%RPm|O1P$}>svg$K<3Ja8G2Ig;(C_1P@0Oi&@nAsOL;wkH$hJ% zZ#{6E6*nx=by;O`={R$FxT{IwR5bU{lU4g%b5!`!PA4tdFvssD#%*-f@!^fyDKaVLqcU*ls6|2!yG~SMWqoS4o_zCz ztC!L+m{0DVcYVc6*h8SUX7k>bDy7+&n!8O`$_pW2z`uPpq61O4bNfZfYrT(;p4fME zyCo-Gloy~Ue&KGrWd^y@#cifsyYw!GyB2aZ&Fv*wgqGYup3inml6}pzR19@nq=>L! zdUd4R*Gl~}&a>m)oMjFq@**oHy1k(!VjeA==GI^FC?tY5GS@9xkzr~~i`*{AYPkR6 z|K(Py_>Z?S~vY0H}<~F*e>{jSHqLsL-_$ypbqJDQ< zTv>b6(GarEyrs*oZ_(CWr?{RC%6($p|B$^%{iP>Geci7s^?BtuwEgi#?$f;G_+qKt zpLZY42RhK~_h&Z)dGr6=ZTXA|IJEZgop_Y+D=h!Q;xIiigvV?T7SP@=?Tt0%Oj&F;sQoLP*PY;zZrDzJqnC2PKN z_g7?C?OoXI{t54+cnTy~o_QD1vM%xbvj@#HyUUGwy>G4r?Yq{OZ107!}IL zhIN{F*pL?cotB{dww4D_h7C?KOY2iT!oxDa0nM_x0iXy|j;CK&tx+4N)rblK8QMF{_`LSKTqItKYtyw8?JA3I zAaiDGpQ+-DKNos-B?a@fH!D@qSnIXe6CC%Nc9p_r6V2kq+5!72GJ@mZyv zp$IbLwy)8?)xl2GOX0CztEmie9pY*w_EF} z$Us&G+_ITRSF&Kgc50+&Zn{r0nQ=$ zg0)g|z|CV(WwF2<3dhR1uNZ-#b3Q++(t;{$6M9hqM0ks@YT&{F6;=-1~xx+*ddR|b+a z&EpHX-~?pGs>qa=Ju1}J@i}>pN1C-vMx}}{tp)GpCdOP~z z;EnDs*lCj1o)moKu|-UQpuar?Ziv|8kz}n`PhQ{V;iPb&2^z>(+dT{lhXwAPogU{E z4zmwZrQMg^>^&YYDcP|pTjzZqw`E@tFko<1E$feZ1S%YwH|{h**Ogp4>fx=zcYn6` z!SVf@x#6@k_V#4<4<2(A8?Zx8~;w}JfE%X$=K|#t*4EcwT1Fgb77okpzL-wbNV6CbBEHI!{o(4KJDfCZ!vG- zi7<5Ufn;B{=O(4NtO(0m3Pm2DxD@>fD`ZEJcE_7iRC!_hUW!kuxCB_ zXgl3yrA`=UlC#cT$%jpi*64MgDVkZm&GOaVP)ua0mV{JI1<%0Dx_?@YabD!bcwMOC z0O)>TVw$9zt5gT$Oik5|wdSyatOJSeqpO@(REBAAmaak$Zp>N^L~l#$^m+`#aV%Mp zrwdWo%oBeU>6QuK8~OBq-AJ9gh*u*Y+fU8Zm5HgYk)$us1&hTWgfm@Wys=7mNrb9U z0T1KiT8Q4OGhOM~9MYLYd>i=$tp9&?LCHMcj2I?zFhdQ}|Ia8A&4cMWhWQsf^(oLd z5k3dyFpu6mRKG|}qlK!CQ}y2^$g0>(eC1Ake=!p`vWDS(TEA8_3?qSh+9j%*6%eMD z12wVa>Q#L&dy&7C?qDE!xAhjKT#!h}-Lg0IQj)XoZ-}d*wPGXqM^E0-8H~b7!pJ{5 z8Ad0`MzTne#u@f2dRTmwPd2Pp^iU3-6XX|2AhPAvuaSHF%*%#b&E?SnnmJ|-Bj9y| z+%Sydsbjmh4dSU|BqXJ4HvPK>f4P*GX%8{r1H)z!=A!n3h+&;*t%7sopus^2307p^ z3x>Evxj5_r#N^Ii&xi*QB9(JDuRoMjuu!p()LgF;u~0GcCzbo3_39#)Ne~9G7{~BD zI1u{;6llq?d0t~gvlW5($3MLe%YjIXVHj;dK$E$y9QFH=D zpRJUdJskNuw8b*5l>s<+QTI5qBe_MfTw~Nu+%qILh>Xf=v0iC>&{Y{o*Fi0sD`lqo zFgzd%A`8k|ju|Q~&jSyjLssK+VG=njG%{(UijYB!1f<@1y)-Aq}#zUEyWHo8DiD zr!%7F=56_J?%eZUAu1>gGe>N9Z8^$YR8ZlkPI}TaxTQ@?xyER3Ro1g*g6OTn z*my+t6ttYAaM+kqJho+^$U6)(=e<9)%uFBuSszm>triB`xb~!7Hpy8XkN1KGaY#q2wN_X^?g>UI5xEaJwascOkYRY z#8ZK;26AkXZ>eYtLRZmx-%G*Pl~Q)f7mGF+#(M(aYrgWFl6w%ti;h4t_@?hM(W=7; zcr8u2DB5p^S3%D1e*0C{ns00U##I)CE(M|AU!XXM&BkJkerckchLC_+4Zad*2_%QQ z`0Z8LY)bM;lHYA5;OU$hZ#z;FOWX$dZIKtePzMI`OP=2prEXc{nNjRlDjE+o722E} zOa0_UM;L99(E3OFO{@|{^x=?fDS>6&K6&*HnRt;-GyF!%vqgw(1D+oo7D!IN;^(b| zHyio9-}IAbR^hxg-B{`OrHI{dp7pVB{6=L6x9z73sp1x`EP=eX!!fv4Pj)7?Iw|^{ za9)D##jU19$TF-4$z9y)=P@#eE$j0f{5{Pw2bzh2{3FpnLbO?7&d zqx~=J=cytHv}^xm;)1tn>11p2oXlb4M&^JvH*91MtE%C7Z91=#IqXUQrY3FYit3Eu z&+P^|we1ipmzvhV%DA?=VLTCYjE8R5Km_x@-rUcE&|uvz~{ z^8?&MvTuybI zSth4qOP-CXojwtxv5C9vmBF1}eM!g&!f|J1(S+x3>}w!jvP&xFYH zTNCwZhG<|>yc1bBDWs3+L`aka;vjkUN#FV zITKSTvI;;A0`t^@) zO_HaU{CLxEsz$1^C8~d%81Z@vYOVU`+eNKQ{E`pfoD=eTO6!si@N32xV{$^W zU-A~XrgxUZ9oyvi5B+++Zm~V!hfl2zZI}My$F0izlJDKPdvCzUt;@8j?mg6g^y=N~ zJ0sdBtJi<}%as>+@?$Ky{fCaJ2hVX13Z)9|KWvuz%{f0V+l^$sA6nW}wHN>G`4SIY zG`NE&Ilm#aySnKagpeC@$9;XgTVbCiEnM(tclx>Dxrbw2$n1|oztQ*20trnVLIsq@ zBQ%!MZU{}L)PmrsM}GeRP_-7JBZ3|i^anvJ1l>j6-WR&WL3ISj9S`lJI)mpO56#4< zTeQ&PDXp5hsIK9rCqmn)wQ3x4A~Zl1kNd-=suz|hnSp&fgzNBUCqiAYF{YCqpM_s) zZ2-PWWqV=YA0X))O>ohP5Kmn2L#PYzMpItAEiT&C(-W_yygB%D;HkFZbM%(I9d`LK zG(hdx4lg%pJaO8OAkq;R{s*$Km zDtEknq=UaI9QQdH8YH5Sz4M0f4kSBHhOQAYE_R5#axruk^bICsq>=aNYEvlwX>gYg z>K~pVc{aucs?@)a9a1=M#5likqlc6Y9q%`y*spD|A29ufj4mDuzctNKLQ=0@2v|Kv z4IABq-UnVL7avkSdfZUTLN`9b8e5}RA495F4}_Z}hb7yyP)gir+u7mZ+hwgcs{Ci% z?B+M)rp2$K%!Ym9VKlLA?1+=S(XHsS5DCqlxbJAif zxKv=t&7x_RqS1x}G#|TU&K>K08wWKrx=Q=b1(u)%&-a*;${W)2Y2Fo7Q2#L(JaR6< zyX8U3v2E{pkn_|buHqL82r3zyI#QT0syHNBYx*?#(~Ig?z+3ZzO3G8;J2$apzQrba z)#vWXw~NZ2Qw8Y{Z228I$6r}9^;Sty!f5>^7cZ**cFA;$UGl6ScozIGYEKTL;3EeY zoTC!z_NNb=PoBHJ`S144zP@QcpBpv$Adb}-{d1fBfEERnq^2eaV}4BjHhK0ryTp)S zw_}S9Za3B5%{$l}aJ#AMs0pk%*d(~=v7nN;)F>hSZF0=H#Rk->Nv!&&jd%Ctf!;>e z%b-Q3)Xvz~!Ki~6HaQr3sLJsR4n_}2m+B&t{_|XPtL{wLE*Z5ydtiF<{&Tj!+pFRk zulKoVsC?Q-j0e~NMgt}SUI5VGNV#_J-eRCJKsN(D47dbvRzctZ;%T*h&i@uG){3eW@y`vYda2&9ySc6jT}0tbHA}e(CAV4O-JKL%|bwy<%tWM8+FY( z!eu*v8B5KLnXdFwmawI_$j{A<(`{6($#7R=H+7Tvt6#a1HSWfxDphOT)5Dko8NTXa zOwtx)CM2hztRZ7MKRaT4NxzJQaR`w!9>!rRkU02@#vK>vjBT2mL1#SG3y3E3bjBqr z)kG3xFgmE1DKzhPIL^!Xwp;vFXE$1({vQYS2`gP$Q-HpzTtMR4AKLl?s(m3VOy;3i316 zj_^aRLUVwjj>KcKjXFsO`O(V=gq92Xj-ab3g~(VhuD1xfP0;Ov?iBPJL4hEjlf0%O zGI&kGwHI}a92ii|EHG#&(GXI{;`#l-9*_qsk=nu|j#90-wg>71>79UTKp#sF*D>@O zYC4%xsA*Q?Q2rcxZLi{y4sz4zHPGdPuAsC6p*563zMFtbYS2P!Tn&!dMkzREJEgG* z?W7d$(+Hq+ub>A6JtF8aLBaP-u0l{+Flx9TrC><7pwX08AQTVzGfR2_gJzH}Xcnbl z&;W6rCuotN#e!DPAOQGOG4+tTH_L$ONfh$k1vLVtHRTBTSFy0J3iO~z(_DpEI;fHm zdJR=V4WMl=l~M?GRy9yXrSux;Gn7JAO@;i~kGX=rF6atDX&q^tRIF-ff_?P*7DCXW zFqhh?ICY^E+L$+`Fo?CM6w-x@YiNw@x)-G&oJFZCw9o?j!wnjbpra^tSE0$2(jcM~ z8u5Hep@J7tS^=>_DP;7GpvNc$xeA~(h|f?8_4tdR7X_t_n)0u4DxsT#aYs<3<^oM9 zg&3f%pC)h=)J0IOpn5^Q1@#lO4W-bUJBsTNLBlBpy)1UFfd75Kl|GK(GD@KYa!~nG z7yl&c6z)ff>tsryR|%vPJP=7Kc!mZst%5vCbt*K0(h7tYQwr(VPzvcbQwlM%jZz7M zgVibY;72F}t|5+?LQn9B<_z>Bl!9WpF5~Gn)NKx>Ak3-`6tb#=pkq}B2C=F;3u_`O z2ZpW^@~rA0-A=fcXoiRA4WP#brFEr&p@-Iy1{Bb$pe58$3Ubud^xB_NxKCZH(W_82 zr3Mv>r}P$dP~v_sO2M-O1f?CdIv=5OHMBokN8<%!f}oQHol0pWLNmnmOM)&G^mR(1 zF5eK>%LRQ$&^3ax9vw2=M6aQP+ambe)KLG_5)E}ZxL7M_M@qp(w4-1{7^UFy0>Lk# zl)9W!a5<}M@XSl}8rt{kg1$qky$Y=tbStIc88((e>$=pIGT;Zq2cv<4S_I8z6mQRm zp<)nt3@+6`$53hk$59H6V}jt*s;Bp-3Oa*Qxc`#4o+Bu2%~Woops!O3a&J%y0lr-D z-x1d|bR?R`T~H`OLQs?^fz%0gQu2WL(^~1h6)H3W*JcGS{gbmCV`F@ z*N`Wxk~u)tGoa_D6zX&#rQmWJoAmk(L6-~qj-aaqrTrC^Ur#CMkv54RTLhg6l#Zfu z37DnOj|Bjq4*S8BMv4v++Y5)N|oCyMVUX6>nYOITtDi-F_gYi9(NL6_sh?#sErz&td?Aa;)G_7W`?H0)LUqZywSeCi>ICb&u&w9ZvPPl5wCts$P$KiDFHwTkZa`bX$DC|wT0O=%ZCPodWX=wgEYU@nK$j3$E={8Oi> zShG@}<{gy!TR}~{nW=jSSEuqiRrge}4onTXdDHa0RmhK0u(}PUp}Zear>S_A_o4j> z)V~_c3a0{n`E)=HOPd&aoe6^;rAK*`tFu&WJ*Mub;yodB3DHhWE*AV`FeY?r{gSWzulCq)3)}DBxYnCHkJjv*-I*R8_GPb~J zz8&oGF4rs*)XGyPNG*4p0o9nf$Zcb;r)r#7qb{7FVH?2|Z<^VeVr_^R_q@r@z~D2xqUupHo?l zJGT*@34a{U?|g`zr@)=F&x4kqR%4imxp|#A zKN{bo{5Zki*Qx{O$KyT{=njxTS)vMeoMH^XpAGD5Z$~XnR^gDz;HLebc5KQ_Pr;W# zT4lkf;@Y$z#;M>*Z0VAvb;A&*G*W55LjT=S;i4ZMJ@L}ZZZ5Vl5EujSvKNf4)$`TZ zWlwWYeEbEYi+W)?zW9PMfIdlC{!1?%4w`0kRv%a63UdcfTzVzXMg5CqgeK|&A`7%8(h)4HGKRS?P!l@9T@1V zB6#J2f$ebVbVzh39Z#MP<(&C@k{)lRoNOCBb&Qv%YhshC#VEqQ9vU6i%rLsBn&1{Q zz=LB!bQ+W_hw`+zjPh0k??25v@oLIzgFm6Xy*Btj5!il<@?x;Vi@-ZC82QNxMO96M-zh>aoX7DSXU!uIebg_buy=e4TYwdB!Y%d-D z+A-5veK7;KnF%iPvS(iTceQlaGVpkM+s_`Sp9u4G>)o_!Y1`W~Zy%pYeUyPOQrU8Q z>{9CMi34XDU2x>Ffi8Gd9|wE9Z(EUzIwlhr&jOkG_BcMKt*6^S2z%=w*lUj~TC{+g zg0$+qO#A~CUf&E9f?vE|0;V<#cYFz$dJWH|lrr0B@cgOZ&Ck{kcTtbe!tYRtF`Vf( z5FBCci%nVh8oj?wgVV3(dg4XHJGX#vl zHQ9I@WgcjbLsqy#B~j+iZ0tB29_Y2lVY7|x0_|bezWo8UaTSzXTW~QO&wym=Z(On8 z522oJ2OX<=LGOm=e;MwH&(DTDHVwdcsPImAJpauoPaORUFb}v>m*`xZS5rI?kADSZ zqqO)64e~GL`@*QK9K4g>PuAj)>u~?qYWMSUuyzjI&k*;WorHdozBmUL)B6QnKVCd# zfQ!032XCUxa*-&%TB7kexXJ&){RvvUyoa~Wwc72;IXH{neo2e{Tr{3;Tjl#AbZ6w? zcj*0ZgnA=5nK@I~^iB@GM(-cd@(_Iw?pue{4`Azv!LVW0&fi(RCI^?#1>qtOJQW;( zSI-4!cFe`wD04hK%DoB9Ta+1-iyh|ybB4#FcOmvt=K(J<7w1vlQV$&889JQBl=+PZ z_A@zpx_trj6YEOO%Ed=O7$4o52XE|d+S|Kn;Wd=C<#%#%oB76oz=bf=87WFj3ALW$ zGmy6~NfRCR+u-bpXU~Uho8;j)AhG(64lnQK58WeWM(OcqpFThi&&@C$Th8Mn4 z?&zt`@Wd7427BV89bk-1T?ltpd11eO(4W|S+tEcmrvT4b2pPw>U~d@RbTD~_!D9?} z4MJO6u$PU^FSbC)532HAxbZFSlj!MfYecBC4}0&ZUQ>vBy=D}fao8(H19|N=~5UQVS5c%oeDdYE_2wf3LFwn z_~sPQ!#>z6j|-p4&4qWPeD`5)_#b@l5Xit59@s;ansH4A( z_?d4U01h*D%(;loA}b-2U=#T&-#7v?Y@^e)c9Hw|t{C7jH&hfw4oj2sVqZHKuZujX zdOliC_O<`ntfN4=5u2gJ91Qo4qaPV5A zBi?qw-igeA&a{^A&o+he{p$JHWN6RcTbuAadSC%)bhgEYkxks;rFf(RUbn~C3_IjC zX@;lnGP&b126G0!qBCju<@%KH&iJp9O}xqSuS^zEjUw}VhfO-Zb;|^sx#)-CVb@Kw zELH}>_wG?qcA|{o+%tCuM6KW(V;~jt-uBf|r6!&#obUfjIUS`Fl^M<>e3HHSHs3l8 zo~hg_LvFM&pW<6uOcC6MKLX5zZ=ePa-#A=m?koa1jOVC*!F-7CpaQR^Pe_98G9@pW zcMCn8iG?Cm{NQ@I*L{r`t}C#6&ysU6dfh8q&S)(eLxkKBjO{ zzM!;dv9HpEPtlL%^y$%_o#Yy0T|=+uqjO}_d5wKJGg|D^0?jNsmMo2KCkg;gfv-^r zd@4VSZz45Ca?bQE(Q&J}X0h4o)Zi|y56XG5n)eHj8Rc8)83S3988cS#3~O3la$?F_ z$%z=}%SkZ~twbWW8Smm7G2-(+IZjT!8FO2B2i!?_pWP%e;!AOmVJ%eqWsDu)!e@#g z;4e@4g74VQ+7mOS(h|Cz_{zbUR1rn6HIH`I{lAa-l5b!G6;L1uzBjJM99NyR#Jwwvj`^A#Ppw z$QcsOTIXTK0`(RV1QFtXf_K&XpkawP6J{GP^PcN^XtUhx*r*MkQJfGR1MJMBgHvMH*tueG zisY%T43Ev>A9a{u&ma8=retF5B{BM&c$YJ7Ppl-O-NZW>=bvNyh#?mC4$?CxCfUU~ z^Dih&Y(FJ@ZV(Z-RYeB3iSu*iR#ozkiyWi4e%w87h!|F*HW$Vvi@}ob9mFtfz}Xe! z;tqI;rq6ZWxTsbqOo9G8b8Q%`?c24fR+1X30qPp1$Rcu451*ZjMy5LJ6c-RxCqHZ(9XaxHi zX{WJ%Xt!X#o704u#kb45kv6g=Y%k@3e{@^Sw*`aG*lu+AIxv>(+R<&HFeQoEAt<)zIelm#U13b+#);3%zcJ|)r6G1ZKa)OxMhXHG7GcpS1T-*$5hp#O%_{{ z|AFNzk+qp`W5$JVTWsN;9a+2HBKILI!!%K?Fu|wut_vSo_KRW1%%>Z0uv4LEz7WtY zqb+30zb%f!&1SwGchwwN*6f!4atmuruB-)95zBwUNOnt!zbav7CNJ3K)5n^*@=Glb(BKSnTkyU>s z?Bm~znDD*a00UWgFX5;du+3yl)5KBA1*?1PqDyQ_%3KoVfmf+3mqbVMxqG5Ku2$je zbXI&G7$shb!WU8O><5@|dMBz=c`3y?6Jv%YPV2~et|$^WA!M=&@4<=9$<&3A)S69z zE%v*EGFJG{|C#8_r&hpWYpe@v68G@^=TwG%9(C9@X}Xv{ic`_XYm-*+-PhF7^mq-} zj~#@4;^CXVu`QF{Q0}o$wK@hQi9O#Y=1!Or><>*6gJ4t$-%5_1ZF<|04iQOW!@69j z?xv&*T}7RW8P3#al4O^JP?i|CKoeX%uOf!$lSJbLCG<&-Hg0)HFlMN{Ll@4hJ^8Mzdfhls%d=jzoUXqwKL1vs~W0NeiLdA3|(=J)mI;f&S zH_K$7OicDEt$8R$g_0s;ijg-J5MdRuE-t0Ni(IR8hK=C_t00n=p0b^ff*{DgvFbQJ zWnxEJ5bDQ(;Q*fwO%%{yC)!A7EwOng2`KD2I)h_|4LE7cm`WN|?S`W-lcDLipMM%ZwAq#))p2nLj_>#}uhWw>u4^F2i zG4;CFeHib_^VLPug8 zOh3roc&*0}5tc>~@z^d^j(B*kK|gT&ApuSXT5F%WrHM#Mqq66beE80Ti790S;TDIW9{TN9a%)TGAG)Qyut76eYf`OWc*ZFGJYDm%Sl|o_2hA z1R2&$Gu!qwt>7~786XX_ReO4-=E|vHRc|1!?Rx#UIrqd;_~wqdNA&vcE4h3yIzazd zcBhvd9+8MzXnOH@LJKvURiXH_%Ap?7D|1jYB>Hom=2h~_OjyU^Tw zze+L1i}dQ!dy$BpF#18z=Dxi*^p;Iy9U6utcEr5Ax7>xwpR!MXyLY9@ycFN9uwwCM z7_?e386MmGS!5s{YkCjj&;Gcdb>!6xy=OUaqnzjgcTqQbZxHPuoIuxGAbMT?qyfXp zAwgI}v@T@D-_o}88BLUUTr&OdY0E@>iDw0I)6@RoQ@|(;&qE9(eNo!rcwWSC@zqk; zu{60T;vr6(<7pH501lej5@p*@X{l)<8Gk(5CZx}9{$w#Kf`^A=dY`nva~W8))2?d5 zSABNG%Bfhu^ly@WSTrD5jt-!uI%jLY=f5A008mU}~=zR1KKvhP>Df%HjFAI?8_ zf}Ge8dL%bJc&MBc>o|SCNSBn7!w{^;@X=u)IlC`?s^~7{Mpi)nc~Yc`z}!wGtSC|eZLm10G>e6?^5Ty**C{l82k_Tgt5uWzMi7(Ljj;h z-|w3ttcW1+72Q!$YZ0^&!MTH^?*h@r;VVlR>qyw{zNc)sLLa{tUL<5+-yAXGKpL2Y z;1fUP2jSEYvt4jOT-T=L*HeA_2`j}Tm%QKlx(OTB`uKQ}IluRnD=?C^RLnjHhdGM) z96Tx#JYXQ^9vK7qcaKr9UZsz7)-TLB&KC{fem35$T9#oE21gQ*xg~B#^3w|KKh4My zW3TwyQQDhvPpJkr_AdE0W0Gi`kcxh|9eycek%%YY(DC_P^Gshwh7A#I0x|=GX4-0O2noD?@!JgCni7;74-Csd`iZI#U%3vs(odeBfDnB~GvI2!;C5U{d_DQLA^Uw1Gf~Wkq&z%3R(2u* zmtC*otuF^;U*=C5paksA(1GW(W2=Y+y^{T%?9fv?OAN&C!|bJ^nZR=zy0SR2J$s($ zS-`Tz1#nLCf3p8icuy=*!@kYV6f$B7_x4ZOt;NXA7HoQQ=CACzB5XyfdG7r$%;zP9 zl_x!C<)82Lf3Ha9u-pr62V9=QIA(DOXxWSbeV&&&Y&Gn^4+Y@uwy=R*oyh+Xg87{w2 zvt?;kDwi+vk`)WPI!cOJw;S(ESD~1!1f=KcodA|sQ z#Y(7`WB%G8IYZW6>Z9^6@yA+_l)15W*ZfI*xo-{;&A~S>Uo;00Vq>&>LH^Ie2AE3G zgDkXv%Rdy%Rl~7ea>+^X^8EF}d~uW*9O7x=9X%+6>V`8g*5<1f8(5r8+K_*nN3f8= zAQMY`U`nIHQ*IUc;ge=KSlsK2{K@>tIWu1h@dL`ezseW$LUSmANIuDXKu~4%ehZE= z7w@-dnP}63>GwDu7BUA$P^@s+yTTkKAQ~}kGK(;EdB0GcQU)CM-vqq5u2B3p0l;B>{l$%iM|odw=4WwLoG3h0 z#TjtG?o#0lex?kZ6dV&sHvd+bD7qT42H*iX)v2hm_E-;B=2EnWFNw{Vou8AbEgHv1 zc9G|q_C>3Oi^9Y#7-CB9q}aJU`pw}*pDF%k%^B8}r$ti|K0DF9XqKpX@n&*rcG1>n zd5B>+Nk&il?<*QD`U#O0H@nv_irH`~3_Z7k^Os*JIway(R5P4UHAy%eID!Wrh>B-W5Gm|^skYgmlS;i=Wj4WcP-SMk{n`#1q9S_?gMQ|Z>VyaP zv=|hmlZ*8|92cVv8?;NbRXA*go<9ReDa4Y<)In!N3*)XgWeqwd;+U<7;MnKA;c$jo z$)F<9#lez?o|t`N;-F_m+hPkXc+Rq9ke7&*Z~`({MeXw$I9YajP}r+HI>l<|%HIdC z5aXCwr)>IYu+va3Bi<9A@*46!f5KuG8Lx~Ta!+K;Uv={TJK|E|5b=LUm_Zp`q5Do6 za)WQF01ns#Q)WEGUrEXat-q5Y&BUMuX40AMzfKMLsDo?*-fAW=hC6!zI>u@hL?o&9Klb29v%_KQ;GLfF1nJoIFDh z4}rs$u8Tf{l>$z%r%$Cd$4kbGaatS)v*dIM5nYK`#f-U9ViDcD$ZP+tk`town|QjOAioov!>o+&j`X_u|V#y z9Ea@&7e{R6YjQJ~cx8kfmZFsUYa_0TCp1d~Ox_;_mO3iVgZ|Ax`q`I;DsEt73%99=v8Ct=g3SDS{MYh5lzMQQ@Uq#n2;M?i^dHlU+`?J-nhKB&k$! zp6I!AdzHEn_a3F<*)1GM7pp0RHjoVOJctQq~K>4jms{TM{1^Ix{4egSSpW9 zusWk%ZOEDOSfb7=Z6d-07ESbIWjG`>mJA+N8ZH7(RLRED(lY)K2r7v^BaC^kbg(EU ze?yJoO(i_6*-$!Objs`nDm)lGvCArN)*{_mrh*}6wG2F{jMfVuRAH3{sU!EarlO5Zo{65FV-p7i!Sh4tn z%6UoUN<$EKqz^5(CBJqrm!n4PEZv`4eoqXRNZBpRPs;h$JpE-!E(6@67Q@}qL`s>ICRQ|ic)Ps=|Sj)WZ9 zmZlS5m&=`rFoLw-Q)#Ji*@S)fvA#K2$>KI`I$XY0v57C^PnORVT`!cGJ{g0aLmpFv UtL9xQe^t0jw&`vAkwo?X09m`H=Kufz delta 60872 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 scV=kG=F+y+~C54+=ELhyVZp diff --git a/variants/PORTENTA_H7_M7/defines.txt b/variants/PORTENTA_H7_M7/defines.txt index 7f3f52d69..824657668 100644 --- a/variants/PORTENTA_H7_M7/defines.txt +++ b/variants/PORTENTA_H7_M7/defines.txt @@ -46,7 +46,7 @@ -D__FPU_PRESENT=1 -DLSE_STARTUP_TIMEOUT=200 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730202770.5918262 +-DMBED_BUILD_TIMESTAMP=1730381437.8008306 -D__MBED_CMSIS_RTOS_CM -DMBED_TICKLESS -DMBEDTLS_FS_IO diff --git a/variants/PORTENTA_H7_M7/libs/libmbed.a b/variants/PORTENTA_H7_M7/libs/libmbed.a index 0b0f82eb97da38c06340764654d0b886528097ce..ead5d17e11fd183094b8437db79f54c951e1ef4e 100644 GIT binary patch delta 70254 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�$gijp(qS$6HFl~;>c$Hx8>NkURm0-Sg>HPq| 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 O(&A#)^`3g!^#1@5EKbJ& delta 69788 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 From 15f028847069c08d38790936673a7f76c371d343 Mon Sep 17 00:00:00 2001 From: pennam Date: Thu, 14 Nov 2024 16:11:00 +0100 Subject: [PATCH 12/20] GSM: change restart flag default value to false --- libraries/GSM/src/GSM.cpp | 4 +++- libraries/GSM/src/GSM.h | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index fc3841161..9127021be 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -59,7 +59,9 @@ int arduino::GSMClass::begin(const char* pin, const char* apn, const char* usern digitalWrite(MBED_CONF_GEMALTO_CINTERION_RST, LOW); /* Reset module if needed */ - if (restart || isCmuxEnable()) { + const bool emergencyReset = restart || isCmuxEnable(); + DEBUG_INFO("Emergency reset %s", emergencyReset ? "enabled" : "disabled"); + if (emergencyReset) { reset(); } diff --git a/libraries/GSM/src/GSM.h b/libraries/GSM/src/GSM.h index 0d815e120..6e75e85e3 100644 --- a/libraries/GSM/src/GSM.h +++ b/libraries/GSM/src/GSM.h @@ -86,7 +86,7 @@ class GSMClass : public MbedSocketClass { * * return: 0 in case of success, negative number in case of failure */ - int begin(const char* pin, const char* apn, const char* username, const char* password, RadioAccessTechnologyType rat = CATNB, uint32_t band = BAND_20, bool restart = true); + int begin(const char* pin, const char* apn, const char* username, const char* password, RadioAccessTechnologyType rat = CATNB, uint32_t band = BAND_20, bool restart = false); /* * Disconnect from the network From 39ba65e694d2ea592845212520a7440c4079252f Mon Sep 17 00:00:00 2001 From: pennam Date: Thu, 14 Nov 2024 16:11:33 +0100 Subject: [PATCH 13/20] GSM: add debug print about cmux status --- libraries/GSM/src/GSM.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index 9127021be..b06d7e480 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -85,6 +85,7 @@ int arduino::GSMClass::begin(const char* pin, const char* apn, const char* usern _device = _context->get_device(); _device->modem_debug_on(_at_debug); + DEBUG_INFO("CMUX %s", _cmuxGSMenable ? "enabled" : "disabled"); _device->set_cmux_status_flag(_cmuxGSMenable); _device->set_retry_timeout_array(_retry_timeout, sizeof(_retry_timeout) / sizeof(_retry_timeout[0])); _device->set_timeout(_timeout); From 8bdb160e3304d5c1d29fb855c343a7ea71883df7 Mon Sep 17 00:00:00 2001 From: pennam Date: Thu, 14 Nov 2024 16:16:29 +0100 Subject: [PATCH 14/20] GSM: squashme do not disable SYSTART urc --- libraries/GSM/src/GSM.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index b06d7e480..683c6d762 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -137,7 +137,6 @@ bool arduino::GSMClass::isCmuxEnable() { void arduino::GSMClass::end() { if(_device) { _device->shutdown(); - _device->get_at_handler()->set_urc_handler("^SYSSTART", nullptr); } } From d34cac425bad349df01e8099b248999018ee442e Mon Sep 17 00:00:00 2001 From: pennam Date: Thu, 14 Nov 2024 16:17:00 +0100 Subject: [PATCH 15/20] GSM: add ping --- libraries/GSM/src/GSM.cpp | 30 ++++++++++++++++++++++++++++++ libraries/GSM/src/GSM.h | 6 +++--- 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index 683c6d762..480c06bbb 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -140,6 +140,36 @@ void arduino::GSMClass::end() { } } +int arduino::GSMClass::ping(const char* hostname, int ttl) { + + mbed::GEMALTO_CINTERION_CellularStack* stack = (mbed::GEMALTO_CINTERION_CellularStack*)_context->get_stack(); + if (!stack) { + return 0; + } + return stack->ping(hostname, ttl); +} + +int arduino::GSMClass::ping(const String &hostname, int ttl) +{ + return ping(hostname.c_str(), ttl); +} + +int arduino::GSMClass::ping(IPAddress ip, int ttl) +{ + String host; + host.reserve(15); + + host += ip[0]; + host += '.'; + host += ip[1]; + host += '.'; + host += ip[2]; + host += '.'; + host += ip[3]; + + return ping(host, ttl); +} + int arduino::GSMClass::disconnect() { if (!_context) { return 0; diff --git a/libraries/GSM/src/GSM.h b/libraries/GSM/src/GSM.h index 6e75e85e3..aaea837ff 100644 --- a/libraries/GSM/src/GSM.h +++ b/libraries/GSM/src/GSM.h @@ -115,9 +115,9 @@ class GSMClass : public MbedSocketClass { void trace(Stream& stream); void setTraceLevel(int trace_level, bool timestamp = false, bool at_trace = false); #endif - int ping(const char* hostname, uint8_t ttl = 128); - int ping(const String& hostname, uint8_t ttl = 128); - int ping(IPAddress host, uint8_t ttl = 128); + int ping(const char* hostname, int ttl = 5000); + int ping(const String& hostname, int ttl = 5000); + int ping(IPAddress host, int ttl = 5000); bool isConnected(); friend class GSMClient; From 3835f8726a6031968af4dad6cac1ba1a6a726344 Mon Sep 17 00:00:00 2001 From: pennam Date: Fri, 15 Nov 2024 11:59:16 +0100 Subject: [PATCH 16/20] GSMClient GSMSSLClient: squashme retry write Additional retries on SSLCLient are needed for mqtt over tls --- libraries/GSM/src/GSMClient.h | 2 ++ libraries/GSM/src/GSMSSLClient.h | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/libraries/GSM/src/GSMClient.h b/libraries/GSM/src/GSMClient.h index 4e1b52a35..cf7d49af5 100644 --- a/libraries/GSM/src/GSMClient.h +++ b/libraries/GSM/src/GSMClient.h @@ -26,10 +26,12 @@ namespace arduino { class GSMClient : public AClient { +private: NetworkInterface *getNetwork() { return GSM.getNetwork(); } +public: size_t write(uint8_t b) { int ret = 0; do { diff --git a/libraries/GSM/src/GSMSSLClient.h b/libraries/GSM/src/GSMSSLClient.h index cc7d3c194..add77b900 100644 --- a/libraries/GSM/src/GSMSSLClient.h +++ b/libraries/GSM/src/GSMSSLClient.h @@ -32,6 +32,25 @@ class GSMSSLClient : public arduino::ASslClient { NetworkInterface *getNetwork() { return GSM.getNetwork(); } + +public: + size_t write(uint8_t b) { + int ret = 0; + do { + ret = client->write(b); + delay(0); + } while (ret == 0 && status()); + return ret; + } + + size_t write(const uint8_t *buf, size_t size) { + int ret = 0; + do { + ret = client->write(buf, size); + delay(0); + } while (ret == 0 && status()); + return ret; + } }; } From 77def19d55fe52a5fac661fb554767d6658d6a4a Mon Sep 17 00:00:00 2001 From: pennam Date: Fri, 15 Nov 2024 12:01:17 +0100 Subject: [PATCH 17/20] GSM: squashme fix ping return value --- libraries/GSM/src/GSM.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index 480c06bbb..22aa1a4f3 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -144,7 +144,7 @@ int arduino::GSMClass::ping(const char* hostname, int ttl) { mbed::GEMALTO_CINTERION_CellularStack* stack = (mbed::GEMALTO_CINTERION_CellularStack*)_context->get_stack(); if (!stack) { - return 0; + return -1; } return stack->ping(hostname, ttl); } From 548c08ffa332fb50da7273f2a3e11d6b5f907dcb Mon Sep 17 00:00:00 2001 From: pennam Date: Fri, 15 Nov 2024 12:04:39 +0100 Subject: [PATCH 18/20] patches: GEMALTO CINTERION fixes --- ...TO-CINTERION-fix-enable-cmux-command.patch | 57 ++++++++++ ...CINTERION-override-shutdown-function.patch | 42 ++++++++ ...N-use-default-timeout-to-close-socke.patch | 32 ++++++ ...ON-add-soft_power_off-and-soft_reset.patch | 102 ++++++++++++++++++ ...RION-disable-runtime-model-detection.patch | 71 ++++++++++++ patches/0253-GEMALTO-CONTERION-add-ping.patch | 53 +++++++++ ...-GEMALTO-CINTERION-fix-gethostbyname.patch | 25 +++++ ...hine-wait-and-retry-if-signal-qualit.patch | 26 +++++ ...N-fix-RECV-urc-while-reading-cornerc.patch | 26 +++++ 9 files changed, 434 insertions(+) create mode 100644 patches/0248-GEMALTO-CINTERION-fix-enable-cmux-command.patch create mode 100644 patches/0249-GEMALTO-CINTERION-override-shutdown-function.patch create mode 100644 patches/0250-GEMALTO-CINTERION-use-default-timeout-to-close-socke.patch create mode 100644 patches/0251-GEMALTO-CINTERION-add-soft_power_off-and-soft_reset.patch create mode 100644 patches/0252-GEMALTO-CINTERION-disable-runtime-model-detection.patch create mode 100644 patches/0253-GEMALTO-CONTERION-add-ping.patch create mode 100644 patches/0254-GEMALTO-CINTERION-fix-gethostbyname.patch create mode 100644 patches/0255-CellularStateMachine-wait-and-retry-if-signal-qualit.patch create mode 100644 patches/0256-GEMALTO-CINTERION-fix-RECV-urc-while-reading-cornerc.patch diff --git a/patches/0248-GEMALTO-CINTERION-fix-enable-cmux-command.patch b/patches/0248-GEMALTO-CINTERION-fix-enable-cmux-command.patch new file mode 100644 index 000000000..edabb4e6d --- /dev/null +++ b/patches/0248-GEMALTO-CINTERION-fix-enable-cmux-command.patch @@ -0,0 +1,57 @@ +From a76136121ab8066a1ee4afab9254552752b96a5d Mon Sep 17 00:00:00 2001 +From: pennam +Date: Wed, 13 Nov 2024 08:28:13 +0100 +Subject: [PATCH 248/256] GEMALTO CINTERION: fix enable cmux command + +--- + .../cellular/source/framework/AT/AT_CellularDevice.cpp | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/connectivity/cellular/source/framework/AT/AT_CellularDevice.cpp b/connectivity/cellular/source/framework/AT/AT_CellularDevice.cpp +index 08229ba49b..3eccc4a5c0 100644 +--- a/connectivity/cellular/source/framework/AT/AT_CellularDevice.cpp ++++ b/connectivity/cellular/source/framework/AT/AT_CellularDevice.cpp +@@ -50,6 +50,7 @@ AT_CellularDevice::AT_CellularDevice(FileHandle *fh, char *delim): + _context_list(0), + _default_timeout(DEFAULT_AT_TIMEOUT), + _modem_debug_on(false), ++ _cmux_status(false), + _property_array(NULL) + { + MBED_ASSERT(fh); +@@ -243,10 +244,10 @@ nsapi_error_t AT_CellularDevice::get_sim_state(SimState &state) + + nsapi_error_t AT_CellularDevice::enable_cmux() + { +-setup_at_handler(); +- ++ setup_at_handler(); + _at.lock(); + for (int retry = 1; retry <= 3; retry++) { ++ is_ready(); + _at.clear_error(); + _at.flush(); + _at.at_cmd_discard("E0", ""); +@@ -259,10 +260,9 @@ setup_at_handler(); + tr_debug("Wait 100ms to init modem"); + rtos::ThisThread::sleep_for(100ms); // let modem have time to get ready + } +- return _at.unlock_return_error(); ++ return _at.unlock_return_error(); + } + +- + bool AT_CellularDevice::is_cmux_enabled() + { + return _cmux_status; +@@ -272,6 +272,7 @@ void AT_CellularDevice::set_cmux_status_flag(bool cmux_status) + { + _cmux_status = cmux_status; + } ++ + nsapi_error_t AT_CellularDevice::set_pin(const char *sim_pin) + { + // if SIM is already in ready state then settings the PIN +-- +2.45.2 + diff --git a/patches/0249-GEMALTO-CINTERION-override-shutdown-function.patch b/patches/0249-GEMALTO-CINTERION-override-shutdown-function.patch new file mode 100644 index 000000000..4b2723225 --- /dev/null +++ b/patches/0249-GEMALTO-CINTERION-override-shutdown-function.patch @@ -0,0 +1,42 @@ +From 13bc587f70e1c4f9f61650cfd7c8ebc538bdcf09 Mon Sep 17 00:00:00 2001 +From: pennam +Date: Wed, 13 Nov 2024 08:29:14 +0100 +Subject: [PATCH 249/256] GEMALTO CINTERION: override shutdown function + +--- + .../cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp | 6 ++++++ + .../drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h | 1 + + 2 files changed, 7 insertions(+) + +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp +index 1f82199106..c00c1880e4 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp +@@ -92,6 +92,12 @@ nsapi_error_t GEMALTO_CINTERION::init() + return NSAPI_ERROR_OK; + } + ++nsapi_error_t GEMALTO_CINTERION::shutdown() ++{ ++ CellularDevice::shutdown(); ++ return NSAPI_ERROR_OK; ++} ++ + GEMALTO_CINTERION::Module GEMALTO_CINTERION::get_module() + { + return _module; +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h +index 21d5888383..e77078cb49 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h +@@ -55,6 +55,7 @@ protected: // AT_CellularDevice + + protected: + virtual nsapi_error_t init(); ++ virtual nsapi_error_t shutdown(); + + private: + static Module _module; +-- +2.45.2 + diff --git a/patches/0250-GEMALTO-CINTERION-use-default-timeout-to-close-socke.patch b/patches/0250-GEMALTO-CINTERION-use-default-timeout-to-close-socke.patch new file mode 100644 index 000000000..0109a929b --- /dev/null +++ b/patches/0250-GEMALTO-CINTERION-use-default-timeout-to-close-socke.patch @@ -0,0 +1,32 @@ +From 62867abe6811f785373cae9e9b5cfe41774b846b Mon Sep 17 00:00:00 2001 +From: pennam +Date: Wed, 13 Nov 2024 08:30:47 +0100 +Subject: [PATCH 250/256] GEMALTO CINTERION: use default timeout to close + sockets + +--- + .../GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +index a96cb2b360..f96ae481f0 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +@@ -252,14 +252,10 @@ nsapi_error_t GEMALTO_CINTERION_CellularStack::socket_close_impl(int sock_id) + { + tr_debug("Cinterion close %d", sock_id); + +- _at.set_at_timeout(FAILURE_TIMEOUT); +- + _at.at_cmd_discard("^SISC", "=", "%d", sock_id); + + _at.clear_error(); // clear SISS even though SISC fails + +- _at.restore_at_timeout(); +- + return _at.get_last_error(); + } + +-- +2.45.2 + diff --git a/patches/0251-GEMALTO-CINTERION-add-soft_power_off-and-soft_reset.patch b/patches/0251-GEMALTO-CINTERION-add-soft_power_off-and-soft_reset.patch new file mode 100644 index 000000000..b6267af93 --- /dev/null +++ b/patches/0251-GEMALTO-CINTERION-add-soft_power_off-and-soft_reset.patch @@ -0,0 +1,102 @@ +From 7c789f289225ef631952f0ddb8ac46d2d1de9191 Mon Sep 17 00:00:00 2001 +From: pennam +Date: Thu, 14 Nov 2024 15:57:07 +0100 +Subject: [PATCH 251/256] GEMALTO CINTERION: add soft_power_off() and + soft_reset() + +--- + .../include/cellular/framework/API/CellularDevice.h | 11 +++++++++++ + .../include/cellular/framework/AT/AT_CellularDevice.h | 2 ++ + .../source/framework/AT/AT_CellularDevice.cpp | 5 +++++ + .../cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp | 10 ++++++++++ + .../cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h | 2 ++ + 5 files changed, 30 insertions(+) + +diff --git a/connectivity/cellular/include/cellular/framework/API/CellularDevice.h b/connectivity/cellular/include/cellular/framework/API/CellularDevice.h +index 0c8d1a2db2..69455e1567 100644 +--- a/connectivity/cellular/include/cellular/framework/API/CellularDevice.h ++++ b/connectivity/cellular/include/cellular/framework/API/CellularDevice.h +@@ -201,6 +201,17 @@ public: //Pure virtual functions + */ + virtual nsapi_error_t soft_power_off() = 0; + ++ /** Resets the modem via AT command ++ * ++ * @remark CellularStateMachine disconnect or destruct does not reset the modem, ++ * but you need to do that yourself. ++ * ++ * @pre You must call shutdown to prepare the modem for reset. ++ * ++ * @return NSAPI_ERROR_OK on success ++ */ ++ virtual nsapi_error_t soft_reset() = 0; ++ + /** Open the SIM card by setting the pin code for SIM. + * + * @param sim_pin PIN for the SIM card +diff --git a/connectivity/cellular/include/cellular/framework/AT/AT_CellularDevice.h b/connectivity/cellular/include/cellular/framework/AT/AT_CellularDevice.h +index fa011a0968..0006b6c391 100755 +--- a/connectivity/cellular/include/cellular/framework/AT/AT_CellularDevice.h ++++ b/connectivity/cellular/include/cellular/framework/AT/AT_CellularDevice.h +@@ -80,6 +80,8 @@ public: + + virtual nsapi_error_t soft_power_off(); + ++ virtual nsapi_error_t soft_reset(); ++ + virtual nsapi_error_t set_pin(const char *sim_pin); + + virtual nsapi_error_t get_sim_state(SimState &state); +diff --git a/connectivity/cellular/source/framework/AT/AT_CellularDevice.cpp b/connectivity/cellular/source/framework/AT/AT_CellularDevice.cpp +index 3eccc4a5c0..d7dae05aa2 100644 +--- a/connectivity/cellular/source/framework/AT/AT_CellularDevice.cpp ++++ b/connectivity/cellular/source/framework/AT/AT_CellularDevice.cpp +@@ -187,6 +187,11 @@ nsapi_error_t AT_CellularDevice::soft_power_off() + return NSAPI_ERROR_OK; + } + ++nsapi_error_t AT_CellularDevice::soft_reset() ++{ ++ return NSAPI_ERROR_OK; ++} ++ + ATHandler *AT_CellularDevice::get_at_handler() + { + return &_at; +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp +index c00c1880e4..40e74ab98f 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp +@@ -98,6 +98,16 @@ nsapi_error_t GEMALTO_CINTERION::shutdown() + return NSAPI_ERROR_OK; + } + ++nsapi_error_t GEMALTO_CINTERION::soft_power_off() ++{ ++ return _at.at_cmd_discard("^SMSO=", "fast"); ++} ++ ++nsapi_error_t GEMALTO_CINTERION::soft_reset() ++{ ++ return _at.at_cmd_discard("+CFUN", "=1,1"); ++} ++ + GEMALTO_CINTERION::Module GEMALTO_CINTERION::get_module() + { + return _module; +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h +index e77078cb49..edc980209e 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h +@@ -56,6 +56,8 @@ protected: // AT_CellularDevice + protected: + virtual nsapi_error_t init(); + virtual nsapi_error_t shutdown(); ++ virtual nsapi_error_t soft_power_off(); ++ virtual nsapi_error_t soft_reset(); + + private: + static Module _module; +-- +2.45.2 + diff --git a/patches/0252-GEMALTO-CINTERION-disable-runtime-model-detection.patch b/patches/0252-GEMALTO-CINTERION-disable-runtime-model-detection.patch new file mode 100644 index 000000000..70601c144 --- /dev/null +++ b/patches/0252-GEMALTO-CINTERION-disable-runtime-model-detection.patch @@ -0,0 +1,71 @@ +From 1082631c2a418ce76d003cccf247141f90433736 Mon Sep 17 00:00:00 2001 +From: pennam +Date: Thu, 14 Nov 2024 15:57:44 +0100 +Subject: [PATCH 252/256] GEMALTO CINTERION: disable runtime model detection + + cellular_properties must be configured in ctor to properly configure all network urcs +--- + .../GEMALTO/CINTERION/GEMALTO_CINTERION.cpp | 39 ++++++------------- + 1 file changed, 11 insertions(+), 28 deletions(-) + +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp +index 40e74ab98f..3754ad50ec 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.cpp +@@ -29,6 +29,17 @@ GEMALTO_CINTERION::Module GEMALTO_CINTERION::_module; + + GEMALTO_CINTERION::GEMALTO_CINTERION(FileHandle *fh) : AT_CellularDevice(fh) + { ++#if defined(MBED_CONF_GEMALTO_CINTERION_ELS61) ++ init_module_els61(); ++#elif defined(MBED_CONF_GEMALTO_CINTERION_BGS2) ++ init_module_bgs2(); ++#elif defined(MBED_CONF_GEMALTO_CINTERION_EMS31) ++ init_module_ems31(); ++#elif defined(MBED_CONF_GEMALTO_CINTERION_EHS5E) ++ init_module_ehs5e(); ++#else ++ init_module_tx62(); ++#endif + } + + AT_CellularContext *GEMALTO_CINTERION::create_context_impl(ATHandler &at, const char *apn, bool cp_req, bool nonip_req) +@@ -60,35 +71,7 @@ nsapi_error_t GEMALTO_CINTERION::init() + if (err != NSAPI_ERROR_OK) { + return err; + } +- +- CellularInformation *information = open_information(); +- if (!information) { +- return NSAPI_ERROR_NO_MEMORY; +- } +- char model[sizeof("EHS5-E") + 1]; // sizeof need to be long enough to hold just the model text +- nsapi_error_t ret = information->get_model(model, sizeof(model)); +- close_information(); +- if (ret != NSAPI_ERROR_OK) { +- tr_error("Cellular model not found!"); +- return NSAPI_ERROR_DEVICE_ERROR; +- } +- if (memcmp(model, "ELS61", sizeof("ELS61") - 1) == 0) { +- init_module_els61(); +- } else if (memcmp(model, "BGS2", sizeof("BGS2") - 1) == 0) { +- init_module_bgs2(); +- } else if (memcmp(model, "EMS31", sizeof("EMS31") - 1) == 0) { +- init_module_ems31(); +- } else if (memcmp(model, "EHS5-E", sizeof("EHS5-E") - 1) == 0) { +- init_module_ehs5e(); +- } else if (memcmp(model, "TX62", sizeof("TX62") - 1) == 0) { +- init_module_tx62(); +- } else { +- tr_error("Cinterion model unsupported %s", model); +- return NSAPI_ERROR_UNSUPPORTED; +- } +- tr_info("Cinterion model %s (%d)", model, _module); + set_at_urcs(); +- + return NSAPI_ERROR_OK; + } + +-- +2.45.2 + diff --git a/patches/0253-GEMALTO-CONTERION-add-ping.patch b/patches/0253-GEMALTO-CONTERION-add-ping.patch new file mode 100644 index 000000000..1ad1c820e --- /dev/null +++ b/patches/0253-GEMALTO-CONTERION-add-ping.patch @@ -0,0 +1,53 @@ +From 09a4787109efd233aded2b960fcdfa10587eec9d Mon Sep 17 00:00:00 2001 +From: pennam +Date: Thu, 14 Nov 2024 15:59:37 +0100 +Subject: [PATCH 253/256] GEMALTO CONTERION: add ping + +--- + .../GEMALTO_CINTERION_CellularStack.cpp | 17 +++++++++++++++++ + .../CINTERION/GEMALTO_CINTERION_CellularStack.h | 1 + + 2 files changed, 18 insertions(+) + +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +index f96ae481f0..938cdbfef2 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +@@ -224,6 +224,23 @@ void GEMALTO_CINTERION_CellularStack::PSMDisable() { + } + } + ++int GEMALTO_CINTERION_CellularStack::ping(const char *host, int ttl) ++{ ++ MBED_ASSERT(host); ++ ++ _at.lock(); ++ _at.set_at_timeout(ttl + 1000); ++ _at.cmd_start_stop("^SISX", "=", "%s%d%s%d%d", "Ping", _cid, host, 1, ttl); ++ _at.resp_start("^SISX: \"Ping\","); ++ _at.skip_param(3); //pingInfoType, conProfileId, ip-address ++ int rTT = _at.read_int(); //roundTripTime ++ _at.resp_stop(); ++ _at.clear_error(); ++ _at.restore_at_timeout(); ++ _at.unlock(); ++ return rTT; ++} ++ + nsapi_error_t GEMALTO_CINTERION_CellularStack::socket_stack_init() + { + _at.lock(); +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.h b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.h +index f89da8c314..159ea68aa9 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.h ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.h +@@ -43,6 +43,7 @@ public: + void stopGNSS(); + void PSMEnable(); + void PSMDisable(); ++ int ping(const char *host, int ttl); + + protected: + +-- +2.45.2 + diff --git a/patches/0254-GEMALTO-CINTERION-fix-gethostbyname.patch b/patches/0254-GEMALTO-CINTERION-fix-gethostbyname.patch new file mode 100644 index 000000000..7be231807 --- /dev/null +++ b/patches/0254-GEMALTO-CINTERION-fix-gethostbyname.patch @@ -0,0 +1,25 @@ +From 46b1511db274990eb52e89c31e3e26af01d48d38 Mon Sep 17 00:00:00 2001 +From: pennam +Date: Thu, 14 Nov 2024 16:00:17 +0100 +Subject: [PATCH 254/256] GEMALTO CINTERION: fix gethostbyname() + + Add missing _at.unlock() +--- + .../GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +index 938cdbfef2..8f7b44818a 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +@@ -309,6 +309,7 @@ nsapi_error_t GEMALTO_CINTERION_CellularStack::gethostbyname(const char *host, S + } else { + //Null string received + tr_info("Read %d bytes. Null string", size); ++ _at.unlock(); + return NSAPI_ERROR_NO_ADDRESS; + } + } +-- +2.45.2 + diff --git a/patches/0255-CellularStateMachine-wait-and-retry-if-signal-qualit.patch b/patches/0255-CellularStateMachine-wait-and-retry-if-signal-qualit.patch new file mode 100644 index 000000000..1b4b6530a --- /dev/null +++ b/patches/0255-CellularStateMachine-wait-and-retry-if-signal-qualit.patch @@ -0,0 +1,26 @@ +From fd40e55bb7b121a0485bec2159672673b6c9bbf4 Mon Sep 17 00:00:00 2001 +From: pennam +Date: Thu, 14 Nov 2024 16:03:10 +0100 +Subject: [PATCH 255/256] CellularStateMachine: wait and retry if signal + quality is unknown + +--- + .../cellular/source/framework/device/CellularStateMachine.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/connectivity/cellular/source/framework/device/CellularStateMachine.cpp b/connectivity/cellular/source/framework/device/CellularStateMachine.cpp +index 37416ca72e..a87c9e0d02 100644 +--- a/connectivity/cellular/source/framework/device/CellularStateMachine.cpp ++++ b/connectivity/cellular/source/framework/device/CellularStateMachine.cpp +@@ -458,7 +458,7 @@ void CellularStateMachine::state_signal_quality() + { + _cb_data.error = _network.get_signal_quality(_signal_quality.rssi, &_signal_quality.ber); + +- if (_cb_data.error != NSAPI_ERROR_OK) { ++ if ((_cb_data.error != NSAPI_ERROR_OK) || (_signal_quality.rssi == CellularNetwork::SignalQuality::SignalQualityUnknown)) { + retry_state_or_fail(); + } else { + _cb_data.data = &_signal_quality; +-- +2.45.2 + diff --git a/patches/0256-GEMALTO-CINTERION-fix-RECV-urc-while-reading-cornerc.patch b/patches/0256-GEMALTO-CINTERION-fix-RECV-urc-while-reading-cornerc.patch new file mode 100644 index 000000000..d0ebcb51f --- /dev/null +++ b/patches/0256-GEMALTO-CINTERION-fix-RECV-urc-while-reading-cornerc.patch @@ -0,0 +1,26 @@ +From b1dabe5a8983493bab170e2d8b8f2a1ba40e4199 Mon Sep 17 00:00:00 2001 +From: pennam +Date: Fri, 15 Nov 2024 11:37:52 +0100 +Subject: [PATCH 256/256] GEMALTO CINTERION fix RECV urc while reading + cornercase + +--- + .../GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +index 8f7b44818a..d164f85eb2 100644 +--- a/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp ++++ b/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.cpp +@@ -598,6 +598,8 @@ sisr_retry: + if (len == 0) { + tr_debug("Socket %d no data", socket->id); + _at.resp_stop(); ++ _at.process_oob(); ++ socket->pending_bytes = 0; + RESTORE_URCs_AND_RETURN(NSAPI_ERROR_WOULD_BLOCK); + } + if (len == -1) { +-- +2.45.2 + From 6249850b0f8e81d8ab323f984895813dededee9f Mon Sep 17 00:00:00 2001 From: pennam Date: Fri, 15 Nov 2024 12:40:54 +0100 Subject: [PATCH 19/20] GSM: add software reset and power off --- libraries/GSM/src/GSM.cpp | 16 ++++++++++++++-- libraries/GSM/src/GSM.h | 12 +++++++++++- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/libraries/GSM/src/GSM.cpp b/libraries/GSM/src/GSM.cpp index 22aa1a4f3..513b7d0dc 100644 --- a/libraries/GSM/src/GSM.cpp +++ b/libraries/GSM/src/GSM.cpp @@ -62,7 +62,7 @@ int arduino::GSMClass::begin(const char* pin, const char* apn, const char* usern const bool emergencyReset = restart || isCmuxEnable(); DEBUG_INFO("Emergency reset %s", emergencyReset ? "enabled" : "disabled"); if (emergencyReset) { - reset(); + hardwareReset(); } /* Create rising edge on pin ON */ @@ -140,6 +140,18 @@ void arduino::GSMClass::end() { } } +void arduino::GSMClass::reset() { + if(_device) { + _device->soft_reset(); + } +} + +void arduino::GSMClass::off() { + if(_device) { + _device->soft_power_off(); + } +} + int arduino::GSMClass::ping(const char* hostname, int ttl) { mbed::GEMALTO_CINTERION_CellularStack* stack = (mbed::GEMALTO_CINTERION_CellularStack*)_context->get_stack(); @@ -215,7 +227,7 @@ NetworkInterface* arduino::GSMClass::getNetwork() { return _context; } -void arduino::GSMClass::reset() { +void arduino::GSMClass::hardwareReset() { /* Reset logic is inverted */ pinMode(MBED_CONF_GEMALTO_CINTERION_RST, OUTPUT); digitalWrite(MBED_CONF_GEMALTO_CINTERION_RST, HIGH); diff --git a/libraries/GSM/src/GSM.h b/libraries/GSM/src/GSM.h index aaea837ff..9f19cd3e0 100644 --- a/libraries/GSM/src/GSM.h +++ b/libraries/GSM/src/GSM.h @@ -100,6 +100,16 @@ class GSMClass : public MbedSocketClass { */ void end(void); + /* + * Send AT+CFUN=1,1 command to trigger a software reset. To be called only after end(); + */ + void reset(); + + /* + * Send AT^SMSO="fast command to power off the modem. To be called only after end(); + */ + void off(); + /* * Change cellular state timeouts. Needs to be called before GSM.begin() */ @@ -157,7 +167,7 @@ class GSMClass : public MbedSocketClass { static const char * getRegistrationStateString(const mbed::CellularNetwork::RegistrationStatus state); void onStatusChange(nsapi_event_t ev, intptr_t in); - void reset(); + void hardwareReset(); void on(); }; From f1ed5124d30774c17b73a0ce3bd5f843e3cdc76f Mon Sep 17 00:00:00 2001 From: pennam Date: Fri, 15 Nov 2024 12:50:06 +0100 Subject: [PATCH 20/20] TEMP: libmbed rebuild for EDGE CONTROL and PORTENTA --- .../cellular/framework/API/CellularDevice.h | 11 +++++++++++ .../cellular/framework/AT/AT_CellularDevice.h | 2 ++ .../GEMALTO/CINTERION/GEMALTO_CINTERION.h | 3 +++ .../GEMALTO_CINTERION_CellularStack.h | 1 + variants/EDGE_CONTROL/defines.txt | 2 +- variants/EDGE_CONTROL/libs/libmbed.a | Bin 7145790 -> 7148336 bytes variants/PORTENTA_H7_M7/defines.txt | 2 +- variants/PORTENTA_H7_M7/libs/libmbed.a | Bin 7753126 -> 7755680 bytes 8 files changed, 19 insertions(+), 2 deletions(-) diff --git a/cores/arduino/mbed/connectivity/cellular/include/cellular/framework/API/CellularDevice.h b/cores/arduino/mbed/connectivity/cellular/include/cellular/framework/API/CellularDevice.h index 0c8d1a2db..69455e156 100644 --- a/cores/arduino/mbed/connectivity/cellular/include/cellular/framework/API/CellularDevice.h +++ b/cores/arduino/mbed/connectivity/cellular/include/cellular/framework/API/CellularDevice.h @@ -201,6 +201,17 @@ class CellularDevice { */ virtual nsapi_error_t soft_power_off() = 0; + /** Resets the modem via AT command + * + * @remark CellularStateMachine disconnect or destruct does not reset the modem, + * but you need to do that yourself. + * + * @pre You must call shutdown to prepare the modem for reset. + * + * @return NSAPI_ERROR_OK on success + */ + virtual nsapi_error_t soft_reset() = 0; + /** Open the SIM card by setting the pin code for SIM. * * @param sim_pin PIN for the SIM card diff --git a/cores/arduino/mbed/connectivity/cellular/include/cellular/framework/AT/AT_CellularDevice.h b/cores/arduino/mbed/connectivity/cellular/include/cellular/framework/AT/AT_CellularDevice.h index fa011a096..0006b6c39 100755 --- a/cores/arduino/mbed/connectivity/cellular/include/cellular/framework/AT/AT_CellularDevice.h +++ b/cores/arduino/mbed/connectivity/cellular/include/cellular/framework/AT/AT_CellularDevice.h @@ -80,6 +80,8 @@ class AT_CellularDevice : public CellularDevice { virtual nsapi_error_t soft_power_off(); + virtual nsapi_error_t soft_reset(); + virtual nsapi_error_t set_pin(const char *sim_pin); virtual nsapi_error_t get_sim_state(SimState &state); diff --git a/cores/arduino/mbed/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h b/cores/arduino/mbed/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h index 21d588838..edc980209 100644 --- a/cores/arduino/mbed/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h +++ b/cores/arduino/mbed/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION.h @@ -55,6 +55,9 @@ class GEMALTO_CINTERION : public AT_CellularDevice { protected: virtual nsapi_error_t init(); + virtual nsapi_error_t shutdown(); + virtual nsapi_error_t soft_power_off(); + virtual nsapi_error_t soft_reset(); private: static Module _module; diff --git a/cores/arduino/mbed/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.h b/cores/arduino/mbed/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.h index f89da8c31..159ea68aa 100644 --- a/cores/arduino/mbed/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.h +++ b/cores/arduino/mbed/connectivity/drivers/cellular/GEMALTO/CINTERION/GEMALTO_CINTERION_CellularStack.h @@ -43,6 +43,7 @@ class GEMALTO_CINTERION_CellularStack : public AT_CellularStack { void stopGNSS(); void PSMEnable(); void PSMDisable(); + int ping(const char *host, int ttl); protected: diff --git a/variants/EDGE_CONTROL/defines.txt b/variants/EDGE_CONTROL/defines.txt index bceb412fc..36c6fbb17 100644 --- a/variants/EDGE_CONTROL/defines.txt +++ b/variants/EDGE_CONTROL/defines.txt @@ -38,7 +38,7 @@ -DFEATURE_STORAGE=1 -D__FPU_PRESENT=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730381417.6527145 +-DMBED_BUILD_TIMESTAMP=1731671206.1357086 -D__MBED_CMSIS_RTOS_CM -DMBED_MPU_CUSTOM -DMBED_TICKLESS diff --git a/variants/EDGE_CONTROL/libs/libmbed.a b/variants/EDGE_CONTROL/libs/libmbed.a index 4579ba6012c635010be2f7afa15473a7adfc4bf2..db62397767d85e38bc78058ba4865c7c94c6e9ee 100644 GIT binary patch delta 104164 zcmd>n30#y__y3t;5r%CTW@8^v5LstNKvYyDM8pjd6%`e8Lm{QKGPACwrll#Bc}-2N ztjx@;%tup`_sz=6j7rPOl+x17*Ql(_On>J-%WN_*to}cr|MT(7dCs}#o^$TG%kw<< znHk@He5c!v7k0W;g%VSGH)pW#DB4Z;$1`!%q+1&d_lOcsB>h^T8WI*q>%$L% zqM`;AO~nKALE#z*D4xu-;-$Huu*ExJps>X;7WE3wGn)x z-0jh24)~;zI`GL}V8yUv@R2ZnIr!LO<^}Mn5A({vr@0^vRb0Cbd|bgxrQp*TxJ%$u z4~Wlu)nJEDF83{R~AUnd~W3ff6doJQ7Y0AE#rFT<%VR{V@9cf>zx@O28(P@(fO zKUEc25PT5)oS{oK_}Rj|3jAzAY#GP%+^gW{427BC=ZMlB;MYWu1}i*`(bk8TcYWY0f}04^sPlkmJv4~4eGt%W;Qe3oE4QHTBh?VVK%|qK zL>va*hCf$9fOC+B3frNKG#Fiz15l=J1D7#A2b6^Uam4Kzplm0Q z_HyLJ53z6Q>lZ-Dum{uFS~%Vbl#Zw?03{D1ofJTzR|NzHCR!0@gg|FV*bRYAMb0G% zbOdn}G=(qQ0f8+9acW?>I|NoOx5v7x5Lh2x(nFwxov9G$I*6eBNf`uwUUwtDT?&D& z;^%4zbP+1gG7vzd6OsB|231?5^BPbk9uh#L6N#qQf+`aWZ85Y6RHHJjn7Rp6Gf{SD z2B_|x4620&0V`L5YBe@s1AywqrJ#B(2UPnLt@wI3s3iP~dI-Y)I75)%4hV`lA)t>E zf(i`+CZL7WkS_Qx?0=>&q_tAL=7 zw%Ow=tb7XbLl^{|Uk^dQR6@`nHK2CS0<~hf0F@fl`njMEuK;zIR8S{Zfx7ECPrQu@cdEGY}JEi`y4BFE(gu-OQ6|b44VHe0?oVo1blc9G)J(7pL>Dk%SzCEgBd!7 zdS?ucfHbDiK>5FeKqEryQ3;JgzX`OCAd(<96|}8|tRm1d^jmMm;Q64n#i+@kMG$RC zDYPpVm4H^lqsIwopWF@Fb-n^NUIlGKcGc85QP2F<*pJiFbi}H zLu&*S?EoD^@dW|n;y}kRai??4tOT8_Sh9(LZpo$_@dP?)ZM=k8xdEg;AsDV0uYxfKY$L~2BfVFyJ(j*vt{p=fxb0B8Zz?z z3DDc({1(tV;&*I-Bd&&l-US4E6A$vYv~9t48tWI^zKiB>GU z1i=y>*$lz9ShEj;B|Lu|f^D%~55bP$E$)HBS?M1`eh3aLujjmw1rW$d9chikcJe$IRv53aCt6- zHi9s9Ei?wwn1Wq-atVaB6a|$KCShy_fv~X|0&blTVeJmmhEAWwmNo|BOyNHT5atXY zoq;fhqnQFupxOE6(M zgxi5Q3hLo!cY<(7+*bkNtpU=Ik&R~{ygs}X2jLB2PacFfghQziE`mrWO`<2=A>38e zZGvzKe;tBw3HTAM@N4t2|Amt_p%IZw!6`b|LPTf0|BK*HZW1Mq&dUcugfq-N2oVhA z(v4Vl4kDTX(xgf+uY!oiux~R&xDL{=^4A3r!BD%YRS+rb1oj|~f)?k7q=eZ!Ad+E8j%%Q6AkqfJmTA`cYX*pvP@4#m5-!z3)e|8|1RGB7lR-1%T|1;wktAYt4VFgRjL4j34SbTZ>G7;I6Q z0fxCX0tjY>VbKLJET7vro;d*qM{L;*hI&Bi6E;cq!5T0$AEYIfTcIv#IQpotPSB_Hp_?aY%KBC-S!?HdMd4&uy7zXFJsFnBXWw-E?$ zxKatxHwWZqITrnro7Qq60CIEE4jr@fJcx91lPIx7a&rQ}%WA7SK9vO>n*!1lPeX{66+jz;xNh9E z0AeL{TMx1Ip6$fwY$+Cw@q~wY2^KNc*L_-T+8j^mCWdmEa*R%?) ztWO$g^7lLte){U571ICu(=}a*4Aks-a^u_sL zbOmo#g0ZLC4HdGo?{+xHFPp*C0L-3w&=^Q#3T<3Y8jY|`16WHc!MwH} z>?imjWLAT6ofth#UHK$;cAmVvYnjZMQv)Ncgoib3EU zq@Kd$tB~GaAkG|3I|u3Q0Ma5SyDA{v89v?t>5YTfD_z9YHxb=}Yr!d!2SK+6f&JgG zLMxWvcMiHaf;b8s`HiX2ttoiF0=hZFH^-ry1Bj!*j=xp_-P#u91_v2gm!L_QsE3SZ z13&-S{K_uWefrv`iz6ja}`2M$j969kr+O4Ja2S9FW>&q9BCZ|6$ z^B~-Sk^;!QwYGjNDuYa?z|Vg>FKnRf`6|d{*t)1?AWbz;y&f`~ijQ_f<|ij0^YhCB zzFq~HB1qHv=+l(5wF;u)~7@y&4B`MX3#Sh)YqnT>zx<6gAsltf?Ez)W&al!dfJ@j?}aTN6ac_*|4eenA~E+b(O zfj$X?Zba`K=u;ntWkR3&Fl`_7afbO`(8no=Lm|cJTMPTK5siT~rqIUaq}~XBtARf4 z1ML6yapc4gX}6Zv9{{!Vn_AW#pl`1{=-YRY%OFir zcB)%e34JBte@xJq;m%F2fViUMTxabZ=-VRT@Bi8v_$U$jeqPZy&R&JS%|N#71lWN% z3L4_O0%SLYyj74bp>PXiy8yx~O+5qI4dI?mklhd#t%qz0Z&yLKE#93E+0H?P!cQ+l zc76C}5M)@8Q0ck74 zR=cZ?!YvXGOom(RKpX{5_!DTPFgdAIRx&%3G0MZslo!XqG zh8%kkM?u^0&rXJ%dV&34e?dL+H>)70wLx0jU=!^TXD#aIKNnm^xE}h|2mHT-`bkKx zfqu5=vm5&L*-hA=#<65G^lJ&8z6$;71%Cgt{sJfRT|1#4!-4s&1JYWCoY=|5S9uMA zG*s9QWu(FA+CBi%aC+K20MbbRv~>XW_J9ALVNfsfilBdEC_V)JT?cVZ89(pcpW&sl z`my^k^lu72-Ut185b4B$Uf2ZvUBSPXp}z~r)2N|d5N8GLBqw=y8z65Z)Q=q)wS?a? zAg=)o=uih11kQm0u7L=O9kFtIU~DlAumf=vG{Qet3IilORRsfD3c?I*ue}i`Q6}ME z3`#_PU>xLYouIQ9FUkXDA`*RaPZl-heO<-uop|(Ns4j9@fh$~8Ms6!f!unnD~Z_;>*Fn}XrZ3XQA zwlnV3c7g9z5Pys9@pk)DI|JxWCwqzgN0Q_I=hq;QU2f?t0u+<2| zZ1F1D0>j=oaU=Gjq3XCB@!4@0_QlZ~aSrwW1Q>P&9W(``Davi2OPUm|7(ij(8fXy1 zPC%h+Ag(I5ksjXvyBMie@982abOl=mL1AMcwhC`;gTlt}F6uM|$2viwGn~u@O+nh)K_m7_o3_sCyr}C@s1Kw*p`EPXDky3#;QxYEWDnvf zXqdlq5ERW*+hgHeD0+Bv)3Na!6m7)ce=XuqZW1NVoPXv8MNL61Kv6S5np3I1IwL#` z;1q#%FhYXvGK{c-2#i4uBN$?oZHM05V8ji;-+#SP*bLdkOc>D|kmgis#X6+XsGnI1 zBiatw|7~a71>2+vt-Ep+Mzl7Fiv~wV=RsS5@J4$nVPsokcm<5CALPb@iDfXd-GJZ! zYt-38b6}*ac%lYIHU*?9%C6|{IS3=00KzMOumDCj1z#k>$cFIkaTw_e&gWtOpU08i ziWud&6kG?+{~MIUQejkkfwY$+Cw@q~wY2^KNb^$tN+yhI72xkbwvM4@+99pdiW{95 z`@4fHAg(C2p$>5=%C-xDxRxfn03KCBachCJmZ4_aA+6Su<^_QL??T1ViuuqsAZ=yX zMZ3h+mQCCSquT(aMMj@g!swQPwA4Tg>*MeLIc>q2RWQ1(LE73uBlby~x3J*=u>TuY zXybDH{okerFlK!bv>J#rWB)w|W7+|vwVaHV8=)B>&8gJ#I^D8hED!wsC*h4-`g z>kPzMfh+Pm%V4Z4cqk6WIstK3(5CVO7htRa?0cE&BdYhFuqA3SmAhC!#EuW!UZs~Wgu1qo7FI} zz3~zL{{O^}+7LhIz{G|?8Y*muGSXmltsKCu_pbs65Jy2f^SJ-#5Rr5K?P9pKwLx0j zU=!^TsYR1IE`l~k|3NUx9>h`5e7>vTuYX!Y{RDm7R^Y?(GVPdWpW8v<#lu(7g!+hB4FLF^3NeHA9R6&}Ov z-Uw2kuyNUi-7s0g<;^g;*&r>c+zNF`vm=jfYExwQ(~1^f2Flp8_n6SkuafB%P% z>hBVmauYC>EIbEOZz4#8&a0I$wYjKCgsF{#xT54-=lpz_+9KfRKU!v>;ri25=YU5< zB223fq&}gmvLObT)I*Q<9>h`5F#k;_nC2=jl)|(|L0nOCO{Xk!Co~zP zIhC4PXWCLIbHrVxP=+Av5086yLs>(3Y#)@hK1f>_g|d&=y9nI>cU`#+bcxH6+Bp9f zyNu!cIad6f1!eW&Z#9%T!F0DdK-eE1iVB$C7__@#x+^elf$6S+xTffq47cvQ z5i{q*^d#S_3uo0rMRQPvfxC+5F(@AR|33&PBHgh7DxBeMB~(awFAFLhaiSP18p2s4 zR4`mPYDKOs^H(ZVG!F|6$Cen5$vDF?`HDFTFPlj>`m`NOaDmA=U&ZsyZ2$H5>783b5r?PE6<_d9dnDIE0&o8SWzH7 zvdq+(&W-U*p_`7n1<~o5W*xn7%uP*uA9G8geU_UdY4vhbAU%E5&BV<-<~Bn{e>~Y?9MrpXWc!Me!J3?&xL>KHpNeoS~-2@w0;ExCrzi{^*6`Unn7l7>etsih%WoV zts|{`uxn3h9MH{cNv|K=5bg*MgeTYQhYlYfcY~A^8u+$X7ixIh%Y*Cjw%4dm9Zc!n zOlD&@TJxAj&+Yi$E6Lp=+VqK^j{E0FuN7L0s5+**p4;-Tmq!PSsLDeX%zf4_KPVWo;gOuZ(l+ zr}#`JX>kkG;}^)dl03!7R+%whG11ywi~_r1wBlhesS@Q=H|kc!T5C*(pi(`jtWZ2E zg`YtUm-_3ueG3$?1X(KbVJ=yvP^mqIUZ$sfrw4PpwFS>n0wyCw?gV6 zQ7c8~`=K;{GXz`cb-UzH6rIlZeO5|P2Cem-uBSKv;<+QEe8){;` z*I6p^>qlf`1#J$7( zMp~1z>7F7zS2w}$-Aqdme5jwV_mkUbu{G-Vt$r_963wBA7-h1E_-w*nk91yGNN4VNvBTAiwwqC2%XgRGzkGh)?axUzFFZBEGfTIs`sr9ddlO%awsY zN)uU}X|qBDXGlHQokLq`()_}PvT@WkCvbzc?fm-k%e26BNrau|hu7dOM*_#l=*5Hn zYVP&rf&a+GsQJX>+O;yU&_`O%Q}PvhuIIYIYtjT4l;}6RG84E5w*-DJMc7>!HM8Fc z)Jm626p7xZOILi+Mat)a^Std`yniAvM4A(#sq5zh9|@5{<1qIROEVW0aFO9M{8SHE z+m9n8nENVLrIfDX-RX{q2wY?mRexJ5t}cniS(2*yz#`%5da4#%dYzS1EYIe?7@}Iz z!6w8I?!J+#982Pg)F7er&J0P4%ucI{3kt%{@Cub=ndW)(hcYn5SB2Yg^Av zcu+Ocnqh1!PNNm7eh$VnR;zxp8s`T|pQlwbq$w#T_x%@C8yrLncc?y;mWu9_jajaI zpK4~fCA+xBbeBe?sL<_K)modLWJ>~$XMbr)5IZR}CP*7>NfVnzLwg7Prm{%#6~SET zu%JJzeOvc6t`T!egB}R8D6wim_XW+Au9)2^cBY=&^k|TWC2@Rb(%Q}A;<<~D2kE4_ zBF@u}>w;dlW`@mqs+?Y7j9%VFxR)`7&DK{s9rOW-!dse`P6^UeDtN!`OD z;?Q)Ig%j4+p&9BItiJiVs_vuqw)PF*{>=VroA&b}H#h4(tFgmSq-vYrADt2 z@tpR4^#O;b{k~8=&)PIT9m^h3-{qhcS*1?5iumLYTC0ucHaw|*(Ov3aQs5KJOs}?^(4SUr;*l4kb zsgD0qpR{%dpH;($YK>Kkk0jh%(~Eoj6E(3h$fhsOs&K0+A4&OF>J`?!;DQ;<1=p%C zSw+kshfS-tw?)~Y*{;$ zPan9E*vo>7#kx z8V-s^a-Zcm7}QhL>dkE(pqXZ;ik&$`BMmE)k>c%AF!yVrW{Y^?L=o>}_Y}=5Vnsnq z$1R+p$rbPHP{iMQ{dAuu(`p_EUohA2K~1$K3mj_QA>;0USaZsHYr>D8dzWj5h-xMy zQyXUWhFzUakNlxl()%CO_|vPeXuP>zn>4#*T>mv1xtnmQ6GG5)W$QFk8m+q9s=-eh z_4Aq-J5ew<`Xx(K&@{iK?tDe_w>3uNXV?^aaj>s}CchD+r2hA+y}0pjYB;fFEKQ%` zm`~fS$+6n5{ZD2v_tZX(uT{iHaIjhvY!wxB$PecJJ*YWn6-gBb-{A9+k2FiHKJjJ| z`}BzBZ%bY{3}d3z5btis7n&~iB3d_G*PFZeg(gf!ubuXapjo55RdmQ1FE8$q6PjgK z2R4CVKW1=m)uMZ0O*7F`@qu{Db6Vps-o0TG_~n23RgH%@YFS>`gY>KJT9tM9@Q+WY zblSW8>`cv$(aOa;MXa}A*nkjjbsueKOE2&@YbSEF{}C?{sKj5*_72j1C|=A_#4o^j z)xZbWk=i$G+Wq{nVD6c*+7q3vV~DMe>lSLqTWa$+j_4wu%YIZ##hW`5U5R&c6xaDa zT>6vRzpOU-bqN>yPsMd!%t_CU+9Q^Ra5yu*wX{Ka`u3^T&Jgbt#SBs0YDnPTKCIP= zcTZyD=sz?#fs6Q7ODr++E{W9rX&)-L&gfY0 zqwc!3;w_G7XLJ|>@xBQc zu7byPN#aARl;Cw+bQkRhHSRw47Vp2M)VY18OSeu2{&}PL2VIw3$vYcu+{Og`pJs8S znuIRLd%<|_Cdym#$}fu7>tVsGxZ-}D2ma(<7le@seo~Uz!AHEL2JrbPpC7!{(r$h}E=w@r#@WK)X;u$>Po91_ z_=;V8xHV0Kw_4_pxZm3OxnOC(6`R2?T>9sOqpXePdwkR@!MiMTfnV?vxZv#}QfR#7 zuTO&&)`7xzfZ^xhUOAQ~@%t(BQ$p?(_ft$J;VC36R=k5>|np+e7lD z)khRP_g2UlX<;x4t7_;6A@i)Z_??xVM?*f4ZWVA$vf$R84N+*MY;0tgqj#=`j1)I2 zOePMS{;;*x{3g{QQ|Qy;9vmiubs6pRWL_Wczqz54q<$0SDJi`ZxS2(vuUf;!r7f82 zH8IpzYPyLss}#4s;=XLpJE7T9LQNc|{UvM0`N!Jbe}xXP zig14hHyhMp@qIbuqcEGkvj6h>J%AtZeI>n$zI7!uq6yLvtBd27${d8rNzzs;H#e*a-$a=2VtSFqFA zm7#oKc($~>iK36jhtIQ$_^Z?8JHoqIgWwbT^8D~I(RK-?_?(`=4cQp}k97#+-e(9m zV@vpTaT7-zL)?-<8-w%IX+<;|TY=0u>+wl9WLzo{SwZDXW+oX`aMe6WZ z_-biY!E~_w{k{K&UljLbaad#She;usg;mVZIbyJNpz$l^@);4Mts|Ou<~}zf(CRG9 z!=UF<9QmbXRp2m@gRPw5<#K$X77%1OBECE`nfcXAHbQXLnUwdK&()iufe#?Ps_WC}k=D_b=(D&&zsq zs$v5t-DH?)-SHv8+)pKj`PSa&y)K+=m|>lHyvS#U!SZ;-FUGiv%re{~jW^+LfWwWk zE>gH=4j)24mdu#hoW|$xMF#0jtI&Sj4q0aCCrt=mOUH#iW3b%Xnb}a+bC+K<{6`uw zU4>ozDm;3Z_(W^ETTJ2H3g#ZmiB6Ro%!j4pP7jJ6A}tSHg{#ldS<&Y|k!*3eGDK~Z zIN?%9PIlaNk41!!OTpZT;!c;Od%{#<#hO;qDS3-Ui|_e2++$Wq-HcJPjgV6Rm@eXL z3sb7FMsMj8qnRqTZsn2j!Q6@GV-`!xnwYxKvd-sauj?0>B#96p^WS1|bS(wVY8!vXnT`DpxHHC@xSeNWOEFv7fA>0PH`0@dw zD4o3)(JzS`9M8oKPI#V(;#A>I<>$i*Z}-2&;uzJsneMr3 z`n#2low=re$1;yxv={PS;yIaYEa!GQaiE864IO$e@mRp-%a!8~UY;{Pc8|vZ&%6w- z>raV6?y^<1|NjyPbh~_uN3O>ohvr=W>)LfgF8iw+dg}7zD#QY}*o3mU+_AT<=`WNB ze*^M+<_@5PFDB}ee*DysyZ_wfTd>*z&jCGivvX|~A@2OA7teYDfExlhw~L8$<+M6a z;Z9#YsQQXlPZ({c*9xM0)7|TH4775ANkva;{0;QlcY#Veeps}UUR$hC(%xf=40Oe? z=m@HRI>)fO9CZ&5i&oK@U9*++{994@tf`1ZU8Ye`o^vZbISkqHh0$tm>+gxx9+=9Z zOXEVR|JHaVxBBnIIyu=Q1Hgaaj!=OHzHs2(~7?ydV_HL_VJ9!(f#i9}WjaK7ucgfM4zSNQlOkFnj0+8)Se|kr(u% zV3ElCV|g?LMZ*W8pc7xA6Z}K_{OzyvzQD7cVKz$$`j7xwj|H z`XDWW9yt)H?3;l}VXiX}D(C_eSdzqp)p@{ye_7P8#4;5m!sir!k35p7ItXTbd2upi ziF_i@8{r}3rGuGW?!X@t^~11C1!hpQfhQhJe=PDWOrbm#HrSVE!%w1ukdbsydrQ>; zn1Lw{{M*PggNG3+=nfa?FS|1$qk1dstBrHuAEXC1c8jDT-*&^j#6_iE-Rt=Jnee59 z;wj{r{pI*a1$`jM$KG%V?L0OylH7q}rj~_JK{jl3P}}dodt-u`KI@fe$bm!$eyGT^ zXriGX+%58Dy#4<067tf4X>o)1d}-;-VljvocTIq(4ig2QUw;TT9kUOHHZ z&v4)$aNsxC)hA=%ZBd}b$|@*h9lb~`j)n=aT;$b!`9%1IMS%y) zNEG0&<^~G-2IQk*5^S*L@k_OEMil6Ig(=WmW!u7OFkR$(V7UtJh9^Z{ScUF^|BAe@ zYD|aUke3b?i!Mm8w+PQwPyyK@UxhqT!7P{}3UDf6gtx=DcKmD@gH2;C&g2c;39DFB z#e+H6lqA zC`bK7rgsb=ozX7<7XhI@?+*Dw#-n~IQv8Kan9OJlKpCTGkM(W@>akW4#aFDWvBK9v z0pt1hop9h!3KbN!SeY64PUuoa4S<%_$G~_yr^Nuz0IuRF|3O&W6h8tCVf|s63EjyOx|Q)i(Ziuh-GYAx*vVM*`(H*eVTTw!Lc_w6Qdl>! zFqya$qnM8#jQ$TGkI{=lei%PfmF0G?%h4P6zMbT@wF9O4=KtJtdFgx;3t z3zLDRRl&;t67?>Nt^FHtA;Gk-6}w}&*d5qMN~VwQ*aFJB#~@M`u6&fRY)IK9ihl$} z*4#K$P+*$*^kSOXm7AqGmr+b}5u;}XM~vPf@(V<|T%;HiueX^|%rc){%<>M#{{(=h zK|U4$i>P-*QV*5{PgeH3aOb7?L!>xG`Nm%ZU`v<6T_y|#Pni&_T*i-KCg=MAf@S!8S(Ag(S;0bYEmrBngu7*9aCz2o^`^#C&RnxLKdaGc%tF zYXMt&G8vD9C!0|mtND!nCiXeX`MjZg4$9f!oXh9~z^9MV1&q%HKHr6GaZ#W^VdK!i zcyt)cC^|GViiY{YhK92kj}FI(ay}tgj&m9VqT38f-3XeMGuBTg&=8rhw1mq9a}hG$ zd<0Sz)B90e10!WZe;8y!yQ4(?FfmWjGGWccayEGs$VW4ZdPbxXs27Knu(gT}IOf0| zsUk+Gz!G9Wo+W^FynL~+hDBif?2v~F`to;$HBkP#NO55KvT}tupgIYG$UDpUfiLeU z+CRwKCm`P^I@l@9TKR5aag^f^ZL&z^yTn!gO>sFnDlR97gapg=!U&YVC9GQVy~0IB zz8|1~)qh){A!-y`&pypGO~PKwO`uQ(D;0W4zn zt^zD&^n1K-W%NAo16h7tSQX{p0IXs1Zvoab`Udb5PyQazUw0%u$W7>&G*l&fm%f^o zG*tEny`Gk|k-nFn6h<#j7~`7PkOd2Aqrl*lb>DbJq zq4JDOx-Bzl2)#J8#EZ&%CFRKq=)hj+s+6u{q>}#J3$+)}NxjiVTrYZ}chX%b9o`37 zV{dx6Pttp`V){fDDlMfxeUWUT3mGY<|1eTXXJ@0Gx%3@I7SNzuc+F+EFy~qH#4Ttp zj}Fhl!UFmnBgOQ0MoQ@|{g9N=Cy>aYFFn&QsgOSVyh5#d*B`(e+nj}9hrTZ@$xVut zU-qZ9NgcIxZEliM?i)aBzffrd69ep(m(tI3lRDG<{z-b(XsJvt7*b}_PW{o)<^Wp# zmzP%cjYGLUo6ce7+XATaBR?&THS|`>4cYV{6Q09LJ%Y5V7nJr6GqR~V56h#KbklKv zZQu!q@=`h}4|{H;k{ZxwU=ZHl+BR+}eS;ORQc~lK3T@!+4#jJz+W;)yr=&Z|eYJtl zO2uM}s_Af6d`L-4zcFexI$T0*jUUg(IYnO_kknCL5lAfi&yk zfX?nHUO*%BlRA2?!PTHxOKbZ1Maz{rv?4!A+A`z!qVQWEi+kYL0P>SoN^g47giW$# zwBC*WGs#Cr zBR(6xfvdVJMG+vY;?^xri46ASR|*-e+mW=8e)4Qez-rFy$Bo*U^0G#@oO63KrH>4E zt8UqqGE}ynKEcRldYX}Kv@3^XA6>}ELHao(hiS*%NRHCkjGUnFFcL{5lNd>* zZ!nTW-QGenhz@@%AnF@lcvVcB6iaDU3( zbo-WcFZ$vBlstNkorS!OXG31Xvl)1X=H7T4br;cu16b3Y-pfcP{fLnq8d{BH5G`k< zi0);ig!=pkNd+Ct$Q=4IBlGD$j4Yx9|BGZfUB}2~`tyHN66p6|sMIw6ofM_#J`)a1 z8O?epC7No>Q}lEmN@?%%ltd2$&Z{MK*24jjp4)-}zEx9YN=Qc!Gr*q#bio9pnuZ-r zkzT9eIKU6q(oawLcafdp?mn1uyO(S%{poN@UwLRbm-ul?l}z?D-G3ydr$WEy=;fWp zNeS+s(kn+&p2eNVr$0&g-971>@-_YQUNe-rm94|G(kc2qhB9{}zsHEOP~1^0odR*? zpE8Ya=>DTAx1)!YV=2>RtGTC+rF_c|;5T40)(2x3~wcRu{56K}~&PWa2%g8zEGXTkD zIu;4NG63uB8i2L)^YP3xAJ5jZvypfv)6;eN7>9ud4a6#WbP^*4^o@ZiETsv9knEt( z4dSi-j+`8Z(Tc&wc>3F(05#n@*r=2l>E6M{&hoDnwB}DQExp2I*w`T`yP}|m7+l%& zhZvP|qYpJa@2w4taJUTQ(S=NRhYzj3SfW)ug~c*VsHeD;)%Z~5C*E3m9&O2JJZlqphZskjN`=$@mhZU5XnfwgaG)zQKysTDst4Z>=gtYoEk) zEiIThRYyZdViM<##I&T3#IzKkm?d$>NX*uUO#BcNPsU3pOX6Eh95M>UUoi0^t&l{; zC=}0N;@D9rUazG_racD5IB3g9VH{huw6;oz-N0lE=w6gjbFooRudupfim|S?n0eCC z>eP-pI^U06kLdVuN_&jv z(=~832C!a7D?bjzTr*h~UB_fK=nQXP=+`KtJ;q@5KUwwTqOkn!VB>U6-LVoaa$W4 zy7}6<@!;8LT)OWOKRh+`)A%>%R2kDRp7!`L zOv#O0Z#*l#T;;EUI{NBKQv&zU3&xkF+o^Q^1tvFar}1)%-F*)??Tpb=`n*Is{|1m= z|9eJX?(i?hC#CnS_@0t|wP?X*!r;2X6G z0XT&|$WaE4Vh{V`!74ANOFozqNiWVz#an(KZcePJ%G1YW{ZcvqjdZT}p7iHrT%S$m zd*sw$GCd*#?j@6{x14V5(9J6R6lWBQ()7^Mi zbsCAhla7}3Fcs2Uzrov}ixHtpk0Kqr^Z&AksUuZ<*IO^&Bd4_$x*mAR9@^8?(X$3y zU+5#;KWq328Fzb1gN6 zZaAG7HVmdtoIMA|4<9^yXfG@Rw}I~Y?gQYDLzV2sEgWDn>8jn!lxTv4TXIJXsb7!j zdeEWY;BN{T?lF1MoO?{MQGO^?zUh(g&c8r*AK0-}dJnAJ&nkFv)9x{a%DQE|iMM;@ z?5(x&wT@+mTy}G42`TU%EF)Q z85T~fFBL|!7t5?{*4gq%y7jH7BKrFK{$Vs^ZT-KH_7~=51qBLM3*nHfk5%Pz$)Tx z1nz+a;ahq<5f3)CzjP@7OXTr7kNO(Wxznr{i?m(bd0r2Bc*5-YB2*9zcZfV2rz!}A zXKBj)r8;i|&qja`y*@WpMMyFg(u>{s%47&W;_qX_b}|`G&`87KuE*wgjbWzk#xvLd`Udxv>8X# zcwBoQ!L#U>*xi?SFjHSR@YlSlzH@PeY&PvyGbU2@1?@JyOCFFF(is};w@pV6{{LN&bbC#NV z%hGAzhfNU_e;p);8v8Rk(gZB7_m@asv;WnR2>Q#X z>A3ZB&fJ;R!HvJ=rYD&3A86^hqEx!+h-U}-KUT2p3pX>(`Yplo zpyS22TFB$J4=7579Llj5*c4)v4PHiB=SSdWjAhAEj%nh{kxJ#P?-f%-y<5arB2&e; zWo3dtBJV2}REUasqC=FkF{+p;$QAf%fOiljz8I1WO7;3#>#;eDzy2l!i0eJy07pN= zczI8_A%KC_3hdEDFeQu%Um3;j`X3w?#Sg}zeULa!3H(C-!B*gYn`v3s1~ zLGK9iC&VrERpJ)a*UYrrVw}-AR*wGY8NePvg-3`=hQ&)OWoph#pzlEsPc%?%IJb=pf#d(Yj?Z zVXNblI#9p$CY1+&r$%potxQWdy_MuiOV(n|errun(#oHUl!AvDnPz{wc%3PePThdd z(Yza+cxqbryg8KB;OC)+{_=dOFRkrr^c1S$v{Z9{uQP3t(FqrDH5`4?T5qq)s8}UI1F#y^B_L zHyU6z*o0=sW#Aw0Xv72F%J@{NE*7u^NRD5YDzRyThZ+z1X-fI2ET#I#EcNMv4+101pE}f=Y*UZjiAweUvDT|tR2V@cUdr+I5`AUUjemRT6qAuf zEo={6kkD64-!Av{q7OxMReH}sqbzHfh}R}X%8O*QbSU1Q-+${=WtaI_#+EP^XedH* zcto@&Wvzmq(x&O?wW2a5jsF$zxQ;xD<{ue6Ug@_AO&CNI5w!gKKB4j|(Z%`MW0dhb zZCo%t$;DzfDPR=hfuoj>>wKZN((kZMrD(d+FDjH?`D}uczFk=4O%t9;3-CK*qtS`p zyJU2z{J3DDJG*bQ>->{(yKL z9Xct>OD)#Tv56;%o?2QMN>v~D>U(^Rb#0qH2=xqTm-$FRNInug91<_5Mi$@J??x!& zE3lF@AWSxuiXAF_ft7IgCcX&ewoVt>1lQH3{$dYW_kC%s>J8D3*cPaj^KXRc{ox8_ z{Bo?Efjz<^PPeK2wL_&vZv1|ostZnD)`60-qoRDSgS?Zwpnu3gK1Y=6#al?p&OuRL zCd!TIgB@xQevc>cc9i27s}!UFD`-lzcW3Wv43phyWYOyf!XiDZaf8<6FKqQ3G~mnH z4#HMX=1V4NtEZdr5&80$OtEQ}=U4u{67Gh4A#H@lRNoae#n%%dyE z#zoQK6 z7G3XS4&meH1&ZlM})bGMiU10Kj1 z6c!ALs%46vxfy#TgN&a!`4c+L+uTt$lP>c%hvH_96n%pF%;kr@d>9r4AG2Hp}~gPl(X;(pjE=%)4Dkk*wp#KgowbS0Q^sjp>6Yg7Vb^)dSpDvlc^i z=`7U%cIFm^ja1-?&{hxnnA#j18JFw1qjEp{SOq)Sb0iL1V8fJMokBSue{-mZ>~pSj zkokb8rw};(E7&}KS{+9B*bYr@KyH^k$pcdIhF)562lErXCt*M$c6PYxud_m|?!T@F zRucD`;5s%ha7W$#?zwS%syuTcF5^=cebm6H{OAFtv*Z-;oYnAr)j;=$m^%{v0DV4C zFTVGsigU%TopmX*^!>Ae`2hoja>0pz-u|<~*`Bjf^Kg}i)JxZ|Cl0yA&Px9odLd}I9vQD(`y|@vPwaVL*yJj#S zmC4u0Y2A#d5bk2M`JfDUvm*OPgwmN?;+5JMv}ip__*K1DMyu*NhR9;*^$}eoX>yEN zO|!TAhSBjc=1%f5TskMj#MA94mY2$CB{CX&Gt+r9dGyr@F`;PXz!UmNB&P&&T_BOG zcwrxbOhDpb>n-N%EvEsOmeF&4kF$5_wiF8h0zG9d8D9 zv0(b_0V^7}Eq=7)(;z^+R?uy!Um@c9mW1s(X@=t$X{G=+WC ze%_KK+(1dj&iS!ls**TE^s2BgSsjh06&X7yF*do zM|L}6c3Ay0JUtg-j~UG18oqoqbfZ1f z(j%kpXHOsE!Qy^VRLkIVR|4Vm`iE(efg@RGiU(7hPbd7E9yxKJgZO&~-Ul}*nA1dr z3O{gryT}*wd?_3d`D)(VB(VHk#f;#k>mpuGc()pj|xA>ti<~d#tUtq4kJaL z)sBX8xWj>8A@VG`Xt)iwI`Hq=@w4ExJx};y$Q%j|ZijFT&X(^X@`8ieFv@|SW2b*7 zY;xcai+mRPU>~XPVe@RN#Lw(Q6$+R`N#UBv3l8src)S#_a)}=)@{4$b^I;LYREP)q zf&&ixNe6vje70lu)Cd)U`=JMW*b@(CK>E-=JC6qZ&m6@HY_~faKNkC-$nQg51&iS$ zkr(urz~3T&l`nq;ikT~&h!O-BmB;$J|1j>2Eub-2T6YbtecZi2-EnQi>on}NTNK?i&8%JhJ?>G( zv)wD)`C9Al!T)qMJ@r&lFx@c?e-eAsn|K$ssSCbi;j6G;vgYuYtRI!LV*Gr`a<{&; z>fzK7y6k`{ie8&#j^O(J=w_DFDv~jhTc2zG%{N2bx;-iG^&({>NpVVe4p-EQ-vK~* z36mpV$y0i8xVba=UPvwbBtPqa1zvEHMT(Xo;s?>}Ibkti<(*J2$I%=o(nOIOkVgC@ zJhUn<2#@88I{v|t|E7aGmb0*!KKsx%yUr7ZP23U8z^`IORAdS_lwT6Je*Y4`LUCFA zs>$EN&Z**x_)V8u@hcVo04`sGo#i53CDJWyY%9>sGAJ#U=-`mXB73T7{xCxtU)SI$30(0 z({RsMq?;MVF5E&y!8VcZ5a~`v@iMqizQ?+Z;@IK45P5!V z;TVcWxdI0O8#`<)(U~L7;j$m-@{#7q(OAx|unN@Y%aPAyJa%y|qu9lTjADbwFp3|5 z=Z7-tJ;->Zn?(8oqiBB{qd!phQRZn;Xx1PWr;4-(qo|g}C`K{L+$YdREtW5)Cq|h& z2V-M=8C!ob!D1CF#$l-!)jBbX-}cC26x+ZqRhBj=#c!G5XeecJ95quJ#b7EJ#cze& z!6@3DkCb)d0!E9(&&VTP%6RO=b5C*^} z6O%fFl_R~2QB3Xvk**Nw8jJ9@sD4L z0EGs>7r`i2OcnVYksrh;e*L3}QT+bNct-Kt2W29i$tZriU_PU)*BQlmRwd1&)l7gX z+{Y+7IwaELqGBylc{biwGg^#aDiSH1cZ{zS=_Qd~7U@-yvT@Dy+!@8xv#n~z`||S$ zPw=C0ynt$QKYGiqG5ih;ffJ~nT)_M^29NUEtQ5~G|MoK z4ZcgUoMecCTt;!`$1{oq$tDAwD>=>Jvsar}XR+i0iumJ13r^Fpa%)vy_F(|s z4P7VlbJhWGH+zO~el5}yBIPC$g9Kv{(-OuC|Fg`FvOj>pNX=Tx-JYA$uh_sHSAn$CJ)&gOkc(GKZ-1vf* zE5!3^k**QxMv*p%^gWisNPi%nw~N%DksPdRBhv0H1%*s3MZ*Uptz{%H5icgNl#!gJ zAUWqXC^L^eL%)}abPY?PwhbcP#!^t`YnDR2E{U`SBQ>65M4BejB9WFs{Mi0q6DeyL(+-yAv9wZri$#h$csWdKm|B*J=W>?fWgny+ zP@XsHZ{`oP=gHD5BJCtj{%PReB3}?o;}pI2?2e-VwlS6UB>kmf}SYOYx#mz*!IcO*(!I*FRR+daF)3nuiLfu-c^bzqqgQXzh zb4c~`$i)&`QVhIXPo7jv2@OlAXE#T_}e4Bvp7V!N7{=I;o=gI`xWu#&S zU1cfbJ+zulRJc6?UC~%BI$c>B1tmht4g~_0%QD2Znf@C59hQ!UwzBk3$OcOx+aN+S z{SVN7mac(_vNRRSR44$$M9N9tUkE?Tjh{YS9M3$jm>KETt4Vri+O9ayPX4(E@Cqs8E3P(d~Oh3H*6;a3ZT0`lo^aeba|8 z^00gjP4TY;byCV@qOGYfzJ0C&hh@{k>w3oo*RpahHGwy+ZxP$JW-eX%NW=C*g-~0Xz?)XITZ8{zlYFG%`)q|E?>B`n zT4)Y-vW9JK0&iOG&v++0K(+Zu?krOXmmAniZFA#C2|2*P)darCtTcm}5KZ^$kUx+$ zgP9Z+PA<#h`)R>AxDnM&$qpN$$(~XpS_3QW0^{t*$K93eA2ezFLYbXeAhlAIj_kZs zut-{XeC4oUZ`R069jV)15KcpCO%=M98}k*vhP~-R4(-YcCvVo7y83wzR;Jx+$#-?8 zspM;azc!@i{Q!escf5#4=Cx$nlcos0(SxkMg@Y)Yo-`Ts?L6w)-$&Ws9mR{9#1?*j z%w*!%*@G-vF(8C=dCC-^kMU5>+T=WCGWd-`sa$GF#ZxHNCf=>YI}&!%VI-g7FPv+P zXzL$BE-{R9U>H#5TH^CGFiJc~-BUQ_lKiyE(DD)a4)2{L_rp=)`g**_X(I9h-uunQ zdn3nP%Wyxy;vJ4_k<;wm3biFS*t??wujg#MTchG-%*MN$9%RC7Q)e%W7Y2Ot;%rkV zzwOAe41`}x8j(ZSf}ELc>f%>eD0>(14Df<{Ihp!DgCa+%uS)R>r>1J3!I$<(-};GY z&<>WP969>%#(u|;%YBKVDk7M)ngb$F@l`ex+3?`E1{ouH#@sn5Y95(92Sx4nC1=BN zoM02nvKv{L7_B9Hkww4G4`rdAd+gm4Lllp8EeV;6cLsl@o}9TLd^=J)7ybAiS^9AF zg~){MP(Tm;iw*$W` z@K{x48vI`bz6mh)`>B=U6e>?jZ&{D!-B_}o-6Z8%Q%L)%=&81uKcSk>MUTdk1HA@^ z>t_dHao7|bBrna9C43V^43q4^?Q>c-En?#cWfu}_>39;*W^A~=t__K|!qnbGR@N9< z#B(^Q2RTW+?pDN4BbCo?tcXhdlf=qI=QzIL&2?<)gkeZb2b}jpzz4ze;93vdi5mP# zZuq#Ar0nV8Ax<~+LJj(Z8uX=Z=&jmvOOv?B4S$pdf3gPuBRBjoR6l+6->NUypg*KR zKj((twJm7~Ob#I%_E-X9sx?ScHAsG#1ZYWSY0F90-V1Oo$sW<*KT2|ML6psfOfWp$#MBu#ZsY0!Ta=#mU0f=Qn^?6~b8 z*pv)7Y8q*85uBI?xRwlqQ0_XE$C~wwrrdu?d{KWNI~wzK41|GJ{En#BQp6zKc2zBQI;?eEgFlv_{~{IvR}1p3oDr zOwq=RMt*cP<|yD=DgFYcRa(jCHRbxWCiA}U-Z{~ub<_OUkze+8p(cL<@@Yk`YbZH; z8zR#~;v+Bn-35L;Qr3^f_$T{OE%8Nr9}eZ7K+tz?@I|4D1vw(i75TfDy4tl=Q*K%t z(Jqm1MJS0JJTAluu$BxK4SKx>{bM)u1~iLl0=vsji=U*yU#7tiX{%H(*>gCQEb7!V zIIvQ{rCtAt++S=8NgM~TRx;C3Y$V9asI^>Eto$nOEqc`_oF76?+$8Y@yu8dsl~*+Q zX~9jYk}2?$0oQh`T7$nzga4ht*Nb}c!uiSO#3OF_j{x5YJl6hKHTWZ-2~1i9db3gC z+#^XW0$khw=gM6De_eyWP~bC3V!!KXKRXM(3~&!+cFf_E+VQi{EmyaL!9m-YmLDgR z&-;dZN1B^8d$t2veP&`OuhGq#ZN@2Zc2!2^Qj=@1EZYUE!zC-{d}H*Zg6Od-XN*p# zC$$@`v7}~JLJLx|+17@g-t`ivcY7X4!#&@`YLO{8fYF7TeBS47!2jf*rfr-W-ST(j|9VVcXn3D|V`}!)2R3i7?R4%T14Y z{Ezdx&w9`=A9qgId9Oy*`u-FLai7xbXX7G-n=tz|i$eU!k84eFBzfsrU-IV7b}0L~ zU|$kkmTT_1ZdYJLD&A_pdVoLq#gp1v7nd??a(nIYLgq7?QoMnmaR3J_)1Cy zcK;r_j5Bom$(=FLY{TC|cD!$!zNdjq!pXkC!^~caAHxbJ0derzpQWp|n11&B2i6cA zrGA!2_NIvJ{U04aR83PqHhrn{>o2bDiX_HH(@?*Bah9n4ONfL?idJOxAaQ+)g2}D{l0z}LUF-5r6Q&e9O-5S2)6`0jYf7emYGOB5{r0ITR}Upf z+GWbY{RRtm0h&iVcAE+mwpQ&1Tc^YHIY{kpQz!E7`7k5d1|T_cKCHV}9t0W3>c1_F z@LmHg{>YE9vXd8V(gny{|JZ0lLI*dZk8*oP zTzU1!n6iT`z^+2F;}?e^FoT&O@ni2EAvgM2B5*m(<``_~j3%+=(KvftYHmp{{AhaW z?}yLlmBg><3aMWJn#{XcE4n5)cNIz(`UWO^~ze4dL!$j)L2^IXLe7l~4 znX%$vSiCqGHU?i)=;kY?Mo(NZGWkyvy9=q2CEt^PzmQxcrGJ52cgc5nA|*@gzNF_3 z6T72m+6};;BbSkoOT$uq$)ua6K?*;=ya|4K!Y(?j$GcM@#u3z&;De(t=bj0_+G6MvUxo-tCzW|0XzZ5C|P-CXY1MOR3duQVU?)?6~adSy2g zt$EXY%nxEQw81==cvp49QCc5|LH9B_gRPKJ*D(cpBG#qq%P5K;wB!}-a?`^Jc)|veDjX6he=u9l%B8}`!X0tTDGx-K7E?w$$ z)XeUtn|jnd4Of`_cGSEVx0Y=A4#3Ze$1woUl9@>KxSHkqG4o^kW?f13ag^ZbO12|~ zRcU?#xo~9>OD2#zCxAMI3_OWsI$3@aK-`u0J)YK)u`FpITUhb|@i=9cX6TgJ;B~kw zH$$h)oycoHN5c#ONcR66jr*`LL(e0P?~jl0{v2MSBS?{3-xv(7e!>o&Hp@}o!S7I` z&z&}Zm8VJ`KM^xC&azd;C~zp@PjZtjb7b5r5i|GNaLd&x@*b2pL^mYHiqSE&=K)Kp z4En;u;u>{MqPtxcqYIN@$^a%YWACmNWdWWbCH&Zvw?RgEU zEeXJR^eZ+)LKipFH^l9EmfQ0#vJktlgZjZf$RBISqyFSdsTmPuE?Ba>{y~=6Wg&1r z23)l`^ggSBq#wiYiR?u#U$?X(IkBFt>8b0MgB~!v8*W;1Az62BTBiA3!T7^`$`0iI z{IC$RXB>MQIoFXbNJvh7hA;8IW62~d*ScKi%cE@7yI)-t{ zK@Q!qbRyoja75|!Y(KbXw@ixNiy)=9OcCB)(Xq9{@EKtEnt71!E6rg+*(O`h$#Id9 z33hXW&7NRNP(mN;6D;J9j(**+#V!=VEQ2s zD98M;Va*m(0=Zvm_NAA-th@g1eJEpBz$(*v4|4xC z(*c?jV4bBSlZz63by4ISgLM_V+hP%8S7-7>pfybK8;eL?MX{3}475J!0rKazwX(a= zR<*UVi`qhh@id)OAR(LXTU(G%gRRvFU=bH$6&hV1Vl{Z}WXei5gjhR~7q+)DlJfwP zt=n65_nHF70#|U13ySb&8~hh@$D$+dXPa!a%6KqNig+DwcUCo#MN^)bVx1vJ9-*!t z+1B|bLeCM1I$?AudFYwa7+q_6Y=f2P6o+#1+g1;D_0H4=>)NOQHboUbCfjzm=O;<6 z&q%oFjE@0i!D`&gFq?e$pY9O}-?};Wcio;7-P9SU$Pkx-Ja(@;y!auIf@pHcHy?NU z6h#;UH@WfsTO6FjjScRnC8|gO4hHB?`I5*ltl^ZtYrXcry#E<`#^rr<$w$_4I=_B` zv!V4LOU7m?H}hbO@FTuktZ@W4^R#9|h97MpbOSUyyGxc2!#B-+=rrtmb zcUsx)rU!OP2A}Y(Hh4_|`5YwU6EJxH%?U;r`a=y>y>zQdBS7B1=wN`tS?_fi9l;Fl zV?6MwRoZG1s=nY;>p6M*j?_Cdd1p8_Y}8Tc9nL$s<^|O7tMxY1w&uTE*LK|O#)9wM zo};|Uij(#Zx|!s+E6EYMAIOID7Vy?LA5$)Su7P+@LhtTfhO=;Jn=yyd~Ye3J69$(Ihi zWnHB6%MvbP7xHs^TO4V9$Le^XNN_1y4DTJq@IF)w?^uvtO(GsFvhZmDefy5}7rnk~ zYqIQ~HHX}*Px2*~?pddRJ*D@dm!Ff(EICH*--ojP{L(brOvO3$pO#?oisa6IxX#vz zv_iNY5>t#h>`HHEcdyl;To_pu+#rJ~VkDvMXLL4ICzachy6A07#4V=q<#@>G zW1VdWMLZsWa1SZs=akyU^Vg>jDRr?f^Wq_SW-f0ONbp`Hta*-cqHMi;lC zws&lvjJdtG*w&I0w+%R+^$hM|TW=W0Zdj|Bm7*vnNyLDPsSJf$>fRtHZ&XC+aK?E^ z1SW^?z{>F1#0lgf{_irQ)0X{(xkO-%o7QdQW|nlom05wq-E8d&5_biXaQ~{!n?C-& zZO?z#J6|tM2m0->dF%X~g1HZn!baPC#gGnE^zHB|n-7WHijrb>+Vb>z2+tFr+H!EM z=z&jd(@3kQG3Oqz%Qgl6{YSfO!isJiW;A%M;7VrS4UU~ik1~=M@>&~+zF$;#{Z7yN zFM>N_Ovx>e>Vi8|@9dV00t?v8OK-7}KMF!(=;S@Nb;3bWXk9ZkEuLK3nBRxuYO)WQ zX-uiHSLpxnA`OiZ9mu6EEfB0nhY7F0$!rMx!_BUBBFkUH-0Ii8@NDMbA~XFhA2Qv` z+B0yT8wKAZGsA~RLJJB#MdL=}TisH7lA@O*^8Mhv@JU=1kV^%a9WV0O3zO9r)}-1;RQRsq5nT6J~v;o zyNOSqdV6SBAsC1b$gT^3_!zuM=!2f{53VM(rf=`E8%4lO_?%332*Pc~>UPtBBldV< zUs8_R&0fsaI%!`^e#NDRQE$1K+-q*n9Z2&F7?U@#GoLTRTI>EI)9hFyorERNz-QfT z!pD5{4K%vVPtwU+Q#$T6^dD&;Z|)ms(ErDu_?pu@=mwMD+Kh|PeM}B`^o$^1Zgcq1 z#i#5Oeg5klMvT|=$zSZJb$h@8SvXwt7&cdPVc4;m|3}xe=_Gi+h2-Me)HPY>NhnKj4 z6CCFTLE~bUCOLmeiNJy&-*_g?nab%Jb_SXpfg;u?O#vvrz|EvR&-HAzd#97=nm-ZlH zwvGUhR6W?dyWd$zawd8>l3X4V)Xoc&i`}@&pKkHeDYw@u|GJ1#R?{b7(pgO zXsM6$c9=Q}x-QG5Cp$S$i+gHKCW>gg2h&A16SIj%T#gsz+bTxKza32z?rUzfvj9FT zeSMM>--lk#fYZ8-{dc=XI4m0bQp7$I5t}DG(VqKp|54AHGThDjaZ9%QCx9&rJV|C| z8Q@Uer~oSSUw1GEY^5J&A2v2E`HW3f*bI`i!qibWfXp425CM|1?-N0ZZcbN~FWI@x z(Uy*W$l2$=yR5JCi(Th6{ZPdG)IQ|yOs7A6VW!il*B6RUMmuIX9s2SBvYLHAYE|Pb z!$tR#Yn-u)_p%8eiu_hU$Q}6phg-!yhz=pAYn;CF6VaP#{s#RDP>LC*FWJLCd?;F> zd?a`4c~;xKxv)_GXO8#N`+x*7eR(9uD2o%y>5iR;Cc%4)v@vJ<})w>)D~#v&-+%}H$ALt1^_ zAsY8Y;s{q=Tw@RlW1EPAffn&7uywB_M$4`!F}lgnsDM~{>Gi~s;uD_;?+Tij zyk68H!tU-G-K*nQYPC!SF=Uovoz_3a3Ob;(l`c_1|1+BSDvukzIZIxt7XHRZTy5}#8qGvxzYOldzUqHe?OS&h? zDEMRFpH$;&5gKWv-yBZLlEP;>NMMpNY?>$xr^VM5kml=)GVCYylyL~CG5Jy$ySZi?EkNkLHbpL=Sk zAUbO{HR%`+)%~=!35>V(h(lAMXhcMk2F5hdNPUxgN4tox&~tN+rZ}ao3i0pf|D7fo zLtJH=mFvw33h<)KhV?!usf`ybnz8cY;>g}#$rq9hDW$GbBnuae(KJK!;N-Z!=j&4W z_k7c;o8;pZ*){p^uz;x=n6|4UA9HopOn6Y_KGS=DwN=$*ZolHvfe{zjf7J!)IUHc(9r;}P2+bcjzy;54W z6CfUV+en{_N;xh*%-|Asm>Uk-hC5+xDG_3!5ifWpGc!`ghzrmp=uUA;PdP_M;A(gW z1l~a`efZ&&L()Y6HfvAm^C{k))ylbPdU{LBBx$Iv{FBn$fL~H*z%PCJcTsb4&3(j> z`nHH`jxO^Vd!M+}Zqn9>F3&Zmo|g(BYF%JY^>&qo#kMqhq9k>>91jsioSC1c<*7ZS z`4Na`CZ=wEKy3sMKmOjL)PKb{1yz5N`ju>iMUGp0Q&n3cqLgpkm-@K0k|G;v+?(n} zH-4L{8Yznqeg5L^u~b#`o4m;TUh{(Ug)E#|5KG6OPR&r6BU%#om#ZaKC4_pro2gz2 zY9E+WM*DP2dsJF=ixMbcT`zo)zL%VKK#pTV0xo2xb#SqpNefy1PE`!eDNdW}k|I9R zpP8I?TJ5qjj-8y5rdM-`CYHXC<|3AWZC?C$*!`t{hvhE&J8ac*Ev(O)Y#8m!E7N4C z1e2sCV19JaYiSzlbIYZ$WyKr+@Z#dSzrQ&1Zkj(CPP>zsR#n1WZqqGufC#;I+1g9pJ zj`=*Tx#W_SU$jr3|0=D!6mToW$XP6v0vYm}8)?#sG^_X!WU>9H!@QV6!Le_xf7Op*_s#3B?_epxqWx{ zlBE-v!cf|FLEkCT9x4`szW#pS!R^&t+(Bx6q_4LWED`L>{_nnDN}(2XR$BVp-M*?~ zS!vn5zQ0Sww<@-v+B8+&v*%eRi(1!H=!(@?Mrt~%k|2#|2dG;GBeP}LQMmnr@zc)lE50fjzM=UvgYyzT( zwClIr^|I_rJGfTS{i3A0OS#?>-%r&$3G=bIV2JAWc%hNrwD$X@w`8br-pU{Cry(ik zEVFdj%=#hYiYliMHmXD8%9#s5FJB1yxp(X z)dM~TY=6Js@C->GVTs7SeyVk{3D^Z)e-}(U-rK$UtMXw}Mze6A{xsYtqoWjI8`Hl~ zTAYw!l=>$a_F{5IkwMn3446K-8NbQ_T!@8XYR2QLSTG)jl37JT-N^j>)&_cRRYr5^ zhk>+g4YK*>jIX7=78JR&E5qiZ2p?SYzRys-NCb~zo-#n?I(qkP#vVy=(atmHG7_a* z0E%4C*eAsdPuxeE=$EOw$aX%Q(8A`KzmFE3gEYR8A4*3*n7Oly+F$MorM#5+no1R6 z8pp25R7FT!)>`mprng*Yvny`Z^q(`crT)uiWZZQ%Lj<0QyO%j$no663`JPW!vBVU? zOya__YFuRJ)KFa4xRfjne>E?rrTxQ;#(tU?LRo#XvQ)#sMG8)O*`O@dCdu}1&dqX> zks^S~`zA?2L1_AnCWo@TxO#3@pcHFyYwe+hSte-+MGqt1$hsHpR@ka9G=(V@5Wu|X zl|xyo4A@1@_9L3i%2uF=Z?i_o@x!jzAaX5hj1*~L@@d9QuK}v^*lC{6fLqdg0@45+ zp^H0G97~t97?2?)L1K;!*I*K?Eg5NM`vLv>%6=&P+*mf?As0XSx7DPn1KyIOp`Cqh z4W(X>57_Af@$v89H3KfX+OMotyfWabG-(iI=0M+HH^5&Gi4JPmGvMEY)%yE*MH*=v z<3KMtO5=`TW{T|(479x|a*2I?3-%8jAolf{lz!7|(Sy#*E@R{8^$gfW^Pq3{$l`@Q zvYr1Tg^eF29Cq1&&wG+Xi<^I_{rTU7vJr~+%pOEH3lD@Aa z+f@NGEJhlinEjHJDo6dO&M>~Y+3#eltyQ=kvPy%D>=E@k1F##Gg-)HB_ns|ewr+2e%MQAq`f@y zzLqK_YhTzlPu6Z0+X?DI@?Nql^#R0%*_@jiKOvtaV+WCP-LK=oz5SrAq5+=QZMEkL}Ne-{yk^P zm3+xrN$KyB2X_{uj5z_6fLvw{9yU0FAhH8uheWNmwN?;(&ttVP8BUi;hbl` zH4Hu{3=j(E4EpV(!6U>NFY6n7VDLQ`gSgjI`_14PLW#`@TYn$?wh%QG%-^;R<}z0xj}&fZh-P`RKbzM^t2 z#uUCPToT#ABfSd$63Zd7Sr-Zl6NM|pis!D%>y?H3#l*|3EayHqvG6U~RKbOUDTV!2 zeo}a>(cZFmxl2Mq=})zV(UMLkWs=>szECF&5qifNm+^Vw2_a4ZEgD*cdH2ymU9>Ff z&@V5||f zt7L!px+?5n_>fs5A|JA1Sc8?c3~4VJYodn2A<`zBv9Q8i^e2W6Ih7=+F4xvhzBELR z3djb54W;|Ykh??FY|2C^XTCmkeVG7>Tzx%)6SmGTx0 zAD63w_{!rqCx*XDRS+Ktmo6Fcs92CQ^K~%H?>`(7lOl5Q>2L_0d~?KAiwfdiP;HNq zLBdxuTexLt7&!8{6d)^IG;!oO$p*3BLZ{6bsg6=uirN-zq!XSP`GyGaZB{~t)7Y&e zw@Slh;mdqm4~>lOs#ed%HjyEs2nw^NJZq7y4E~Q0{&ayb@*8ROfl<#(Lu}o8dejfXLy~R0|Hr5xsXu5oo2|z;FMc~#t&6V} z-nA9~E)`Fi3{sz@;u&J$!YtMgsK>}+RXecI!~De?ql(YT`o*;G=H%k9ddl)Cdi;m0 z&C0fdHN~lN48Q^iTW(ExyI3z9AeN9y-zmN=1z5>NkSm3DpluA;K)5kKlJwkyiR536 z#ZT+i>gw8*)akbFE|$YP=%9>Fdx}4kcF`3wHB}6;$i-zJ{`|vI76b@mY`qI~_BcG9 zM=llrDV1FmKi8{drF2-V6peTWD*!bs1WdJ4Vu>Q|NMJ0BBsbb2J(Y(}uhG4T;ikb3E zX>V^8#MyjcLFvPi4}98Sq@zgb<4q-$)D6Hs$qwsFGo;9&r;FPf*;&zK`st?9%Tg== ze#}F117PQz`MgWnTe3!8%xo-q#Fxp1C$pXON$G@{jj8No zl@BZ?ZW`ItCj|SRm$dewy1r$rWuFCI8#Bu0NI`KZzJ2+SvJa;Tx{8TbuY+Ziq^XmA zh`)e7h*6NHOpk|OUHfa9hLwyXBz#|3EM0jK!J0&gVv^MSW?7YF9-rvqyT-k;AEc?U zvz6c(I#SZI%$wfz8huL4!dN%i)b*y%=u^#`R8C4;mU+=pZAZ&*ZDvsh-DDj7qYIt8 zi<`qn$4HmUL2;7clvHRO7QzalCirl0)@T`g7?tz6Zo7ifr=g^F?8!Eqc=xLek* z82gtB+FC!>=|bTju!e0N>nDdcCyDm{k3 zipP1eS9yX-MdU5&HL3iz5HO3F1QyIKpCi^C&`7S{H_nxRDdb4z`tefvmzAO{k?YW~ zaXaK->J-Zk0q=~H{vR;8n|Sx#aZd_25g=~FmR}y%VXiDpVD_3m-i1jGGsZ``kf3p) zG=J;(y8#OKEaVI}+S7@jjW>yT25Tlv3*CNpe6}E;Y9F)>{k^X#H<2{+<#bguEJ(k5t#|5*V|5bKSKqv9+Sq@ z=CSl@@q~q~WDodcepU5^M4^g|Tx@mr#zPa%i?M=%*e8(x%$=~amnctA@Z_!uZwm8+ zT->=>ePqI)!ssYnPor3ue_D6|0CCdS{xD&yutNYX8c~%-Yc5X+5rYUod=c%vTN928 zs{s(R1n+OG>>=C)O9Dj{?_WY?PYx}HkpA4c(n|=bC0@*=Cg)emS&F3A(1OYu*9RSPx`vVC zorAj3+q)|-NQx+%Yw7)cm0QJ*77O89*^c~HxlN1*=$NuZ74S!;DvJq$f%O5(6l^lIQG37HRe^EN5N<%hHZJUQ_YNHUk;bNHsij4hI%uz_D{l`_ACATp9 zXEV%Yl~t9=sv>dI6tS*qjEgqhH^;~3SHzgW+QYw|HtwmCGYj;OOaA7)RXHkyM7G** zkxdmGwhBDuyQ))O62c|B`c#!ww#!As-Yz!Ejy|fRi_cd{Uli41URy-B{#>=!m6!Kn z`NgW+zS=qzkLc>3Rnj8@GS7McR@G5e#FTDa(@*?W?S|rn-VK--C6>@Egs&O&YCrL_ zGD$cl)Npj?)lQU7j3VfO9ec_J<5PIRy3WzS6vsDU-bDXSqBx!{OZG@2UD>Qb5*7B@ zqJb$o-Sz#6Z%dsv3BPpcfr+X(Vdni%i!}P!!HLtv?iLG)hzt*a4bs8N9BBF4g(&b>7Xg(e zvc}JZ?0Bp-)z$B%4o5f4YByT-CUmssqX&(>eLv= delta 102129 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 delta 102913 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