diff --git a/cores/arduino/mbed/connectivity/drivers/emac/COMPONENT_WHD/interface/WhdSTAInterface.h b/cores/arduino/mbed/connectivity/drivers/emac/COMPONENT_WHD/interface/WhdSTAInterface.h index bfe933bac..8d8f54075 100644 --- a/cores/arduino/mbed/connectivity/drivers/emac/COMPONENT_WHD/interface/WhdSTAInterface.h +++ b/cores/arduino/mbed/connectivity/drivers/emac/COMPONENT_WHD/interface/WhdSTAInterface.h @@ -122,6 +122,7 @@ class WhdSTAInterface : public WiFiInterface, public EMACInterface { nsapi_error_t set_timeout(uint32_t timeout) { _timeout = timeout; + return NSAPI_ERROR_OK; } /** Set blocking status of interface. diff --git a/cores/arduino/mbed/connectivity/drivers/wifi/COMPONENT_WHD/wifi-host-driver/inc/whd_version.h b/cores/arduino/mbed/connectivity/drivers/wifi/COMPONENT_WHD/wifi-host-driver/inc/whd_version.h index 1caef23b6..5f69d8c3e 100755 --- a/cores/arduino/mbed/connectivity/drivers/wifi/COMPONENT_WHD/wifi-host-driver/inc/whd_version.h +++ b/cores/arduino/mbed/connectivity/drivers/wifi/COMPONENT_WHD/wifi-host-driver/inc/whd_version.h @@ -15,6 +15,7 @@ * limitations under the License. */ -#define WHD_VERSION "v1.94.0" +/* This define is used by arduino::WiFiClass::firmwareVersion() do not prepend v */ +#define WHD_VERSION "1.94.0" #define WHD_BRANCH "v1.94.0" #define WHD_DATE "2021-04-27 16:54:34 +0800" diff --git a/cores/arduino/mbed/connectivity/netsocket/include/netsocket/ICMPSocket.h b/cores/arduino/mbed/connectivity/netsocket/include/netsocket/ICMPSocket.h index 1837bc8e0..5e1ee8fb0 100644 --- a/cores/arduino/mbed/connectivity/netsocket/include/netsocket/ICMPSocket.h +++ b/cores/arduino/mbed/connectivity/netsocket/include/netsocket/ICMPSocket.h @@ -37,6 +37,10 @@ class ICMPSocket : public InternetDatagramSocket { */ ICMPSocket(); +#if MBED_CONF_LWIP_RAW_SOCKET_ENABLED + int ping(SocketAddress &socketAddress, uint32_t timeout); +#endif + #if !defined(DOXYGEN_ONLY) protected: diff --git a/libraries/GSM/src/GSM.h b/libraries/GSM/src/GSM.h index cf3652c26..0b724f284 100644 --- a/libraries/GSM/src/GSM.h +++ b/libraries/GSM/src/GSM.h @@ -108,9 +108,6 @@ 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); bool isConnected(); friend class GSMClient; diff --git a/libraries/SocketWrapper/src/SocketHelpers.cpp b/libraries/SocketWrapper/src/SocketHelpers.cpp index f33655a14..e0f6fa907 100644 --- a/libraries/SocketWrapper/src/SocketHelpers.cpp +++ b/libraries/SocketWrapper/src/SocketHelpers.cpp @@ -1,4 +1,5 @@ #include "SocketHelpers.h" +#include uint8_t* arduino::MbedSocketClass::macAddress(uint8_t* mac) { const char* mac_str = getNetwork()->get_mac_address(); @@ -74,6 +75,24 @@ arduino::IPAddress arduino::MbedSocketClass::dnsIP(int n) { return ipAddressFromSocketAddress(ip); } +int arduino::MbedSocketClass::ping(const char *hostname, uint8_t ttl) +{ + SocketAddress socketAddress; + gethostbyname(getNetwork(),hostname, &socketAddress); + return ping(socketAddress, ttl); +} + +int arduino::MbedSocketClass::ping(const String &hostname, uint8_t ttl) +{ + return ping(hostname.c_str(), ttl); +} + +int arduino::MbedSocketClass::ping(IPAddress host, uint8_t ttl) +{ + SocketAddress socketAddress = socketAddressFromIpAddress(host, 0); + return ping(socketAddress, ttl); +} + void arduino::MbedSocketClass::config(arduino::IPAddress local_ip) { IPAddress dns = local_ip; dns[3] = 1; @@ -119,6 +138,19 @@ void arduino::MbedSocketClass::setDNS(IPAddress dns_server1, IPAddress dns_serve _dnsServer2 = SocketAddress(convertedDNSServer2); } +int arduino::MbedSocketClass::ping(SocketAddress &socketAddress, uint8_t ttl, uint32_t timeout) +{ + /* ttl is not supported by mbed ICMPSocket. Default value used is 255 */ + (void)ttl; + ICMPSocket s; + s.set_timeout(timeout); + s.open(getNetwork()); + int response = s.ping(socketAddress, timeout); + s.close(); + + return response; +} + arduino::IPAddress arduino::MbedSocketClass::ipAddressFromSocketAddress(SocketAddress socketAddress) { nsapi_addr_t address = socketAddress.get_addr(); return IPAddress(address.bytes[0], address.bytes[1], address.bytes[2], address.bytes[3]); diff --git a/libraries/SocketWrapper/src/SocketHelpers.h b/libraries/SocketWrapper/src/SocketHelpers.h index 99d3955be..e285d166c 100644 --- a/libraries/SocketWrapper/src/SocketHelpers.h +++ b/libraries/SocketWrapper/src/SocketHelpers.h @@ -111,6 +111,17 @@ class MbedSocketClass { virtual NetworkInterface* getNetwork() = 0; + /* + * Ping the specified target. + * + * ttl value is unused, but kept for API compatibility + * + * return: RTT in milliseconds or -1 on error + */ + int ping(const char* hostname, uint8_t ttl = 255); + int ping(const String &hostname, uint8_t ttl = 255); + int ping(IPAddress host, uint8_t ttl = 255); + /* * Download a file from an HTTP endpoint and save it in the provided `target` location on the fs * The parameter cbk can be used to perform actions on the buffer before saving on the fs @@ -174,6 +185,7 @@ class MbedSocketClass { void body_callback(const char* data, uint32_t data_len); + int ping(SocketAddress &socketAddress, uint8_t ttl, uint32_t timeout = 5000); static arduino::IPAddress ipAddressFromSocketAddress(SocketAddress socketAddress); static SocketAddress socketAddressFromIpAddress(arduino::IPAddress ip, uint16_t port); static nsapi_error_t gethostbyname(NetworkInterface* interface, const char* aHostname, SocketAddress* socketAddress); diff --git a/libraries/WiFi/examples/WiFiPing/WiFiPing.ino b/libraries/WiFi/examples/WiFiPing/WiFiPing.ino new file mode 100644 index 000000000..db81e1ce7 --- /dev/null +++ b/libraries/WiFi/examples/WiFiPing/WiFiPing.ino @@ -0,0 +1,114 @@ +/* + Web ICMP Ping + + This sketch pings a device based on the IP address or the hostname + using the WiFi module. + + This example is written for a network using WPA encryption. For + WEP or WPA, change the WiFi.begin() call accordingly. + + created 14 February 2024 + by paulvha + modified 8 Jenuary 2025 + by fabik111 + + */ + +#include +#include "arduino_secrets.h" + +///////please enter your sensitive data in the Secret tab/arduino_secrets.h +char ssid[] = SECRET_SSID; // your network SSID (name) +char pass[] = SECRET_PASS; // your network password (use for WPA, or use as key for WEP) + +int status = WL_IDLE_STATUS; + +/* -------------------------------------------------------------------------- */ +void setup() { +/* -------------------------------------------------------------------------- */ + //Initialize serial and wait for port to open: + Serial.begin(9600); + while (!Serial) { + ; // wait for serial port to connect. Needed for native USB port only + } + + // check for the WiFi module: + if (WiFi.status() == WL_NO_MODULE) { + Serial.println("Communication with WiFi module failed."); + // don't continue + while (true); + } + + // attempt to connect to WiFi network: + while (status != WL_CONNECTED) { + Serial.print("Attempting to connect to SSID: "); + Serial.println(ssid); + // Connect to WPA/WPA2 network. Change this line if using open or WEP network: + status = WiFi.begin(ssid, pass); + + // wait 3 seconds for connection: + delay(3000); + } + + printWifiStatus(); +} + +/* -------------------------------------------------------------------------- */ +void loop() { +/* -------------------------------------------------------------------------- */ + + // Ping IP + const IPAddress remote_ip(140,82,121,4); + Serial.print("Trying to ping github.com on IP: "); + Serial.println(remote_ip); + + // using default ping count of 1 + int res = WiFi.ping(remote_ip); + + if (res > 0) { + Serial.print("Ping response time: "); + Serial.print(res); + Serial.println(" ms"); + } + else { + Serial.println("Timeout on IP!"); + } + + // Ping Host + const char* remote_host = "www.google.com"; + Serial.print("Trying to ping host: "); + Serial.println(remote_host); + + int res1 = WiFi.ping(remote_host); + + if (res1 > 0) { + Serial.print("Ping response time: "); + Serial.print(res1); + Serial.println(" ms"); + } + else { + Serial.println("Timeout on host!"); + } + + Serial.println(); + delay(5000); +} + +/* -------------------------------------------------------------------------- */ +void printWifiStatus() { +/* -------------------------------------------------------------------------- */ + // print the SSID of the network you're attached to: + Serial.print("SSID: "); + Serial.println(WiFi.SSID()); + + // print your board's IP address: + IPAddress ip = WiFi.localIP(); + Serial.print("IP Address: "); + Serial.println(ip); + + // print the received signal strength: + long rssi = WiFi.RSSI(); + Serial.print("signal strength (RSSI):"); + Serial.print(rssi); + Serial.println(" dBm"); +} diff --git a/libraries/WiFi/examples/WiFiPing/arduino_secrets.h b/libraries/WiFi/examples/WiFiPing/arduino_secrets.h new file mode 100644 index 000000000..0c9fdd556 --- /dev/null +++ b/libraries/WiFi/examples/WiFiPing/arduino_secrets.h @@ -0,0 +1,2 @@ +#define SECRET_SSID "" +#define SECRET_PASS "" diff --git a/patches/0247-ICMPSocket-add-ping.patch b/patches/0247-ICMPSocket-add-ping.patch new file mode 100644 index 000000000..2019bcb0c --- /dev/null +++ b/patches/0247-ICMPSocket-add-ping.patch @@ -0,0 +1,106 @@ +From 933694e0f35451d21eed77a93fa346570de20878 Mon Sep 17 00:00:00 2001 +From: pennam +Date: Tue, 4 Feb 2025 14:31:59 +0100 +Subject: [PATCH] ICMPSocket: add ping + +--- + .../netsocket/include/netsocket/ICMPSocket.h | 4 ++ + connectivity/netsocket/source/ICMPSocket.cpp | 61 +++++++++++++++++++ + 2 files changed, 65 insertions(+) + +diff --git a/connectivity/netsocket/include/netsocket/ICMPSocket.h b/connectivity/netsocket/include/netsocket/ICMPSocket.h +index 1837bc8e09..5e1ee8fb03 100644 +--- a/connectivity/netsocket/include/netsocket/ICMPSocket.h ++++ b/connectivity/netsocket/include/netsocket/ICMPSocket.h +@@ -37,6 +37,10 @@ public: + */ + ICMPSocket(); + ++#if MBED_CONF_LWIP_RAW_SOCKET_ENABLED ++ int ping(SocketAddress &socketAddress, uint32_t timeout); ++#endif ++ + #if !defined(DOXYGEN_ONLY) + + protected: +diff --git a/connectivity/netsocket/source/ICMPSocket.cpp b/connectivity/netsocket/source/ICMPSocket.cpp +index f6c9b98de1..d8ea954835 100644 +--- a/connectivity/netsocket/source/ICMPSocket.cpp ++++ b/connectivity/netsocket/source/ICMPSocket.cpp +@@ -16,12 +16,73 @@ + */ + + #include "ICMPSocket.h" ++#if MBED_CONF_LWIP_RAW_SOCKET_ENABLED ++#include "drivers/Timer.h" ++#include "lwip/prot/icmp.h" ++#include "lwip/inet_chksum.h" ++#include "lwip/prot/ip4.h" ++#endif + + ICMPSocket::ICMPSocket() + { + _socket_stats.stats_update_proto(this, NSAPI_ICMP); + } + ++#if MBED_CONF_LWIP_RAW_SOCKET_ENABLED ++int ICMPSocket::ping(SocketAddress &socketAddress, uint32_t timeout) ++{ ++ struct __attribute__((__packed__)) { ++ struct icmp_echo_hdr header; ++ uint8_t data[32]; ++ } request; ++ ++ ICMPH_TYPE_SET(&request.header, ICMP_ECHO); ++ ICMPH_CODE_SET(&request.header, 0); ++ request.header.chksum = 0; ++ request.header.id = 0xAFAF; ++ request.header.seqno = random(); ++ ++ for (size_t i = 0; i < sizeof(request.data); i++) { ++ request.data[i] = i; ++ } ++ ++ request.header.chksum = inet_chksum(&request, sizeof(request)); ++ ++ int res = sendto(socketAddress, &request, sizeof(request)); ++ if (res <= 0){ ++ return -1; ++ } ++ ++ mbed::Timer timer; ++ timer.start(); ++ int elapsed = -1; ++ do { ++ struct __attribute__((__packed__)) { ++ struct ip_hdr ipHeader; ++ struct icmp_echo_hdr header; ++ } response; ++ ++ int rxSize = recvfrom(&socketAddress, &response, sizeof(response)); ++ if (rxSize < 0) { ++ // time out ++ break; ++ } ++ ++ if (rxSize < sizeof(response)) { ++ // too short ++ continue; ++ } ++ ++ if ((response.header.id == request.header.id) && (response.header.seqno == request.header.seqno)) { ++ elapsed = std::chrono::duration_cast(timer.elapsed_time()).count(); ++ timer.stop(); ++ } ++ } while (elapsed == -1 && std::chrono::duration_cast(timer.elapsed_time()).count() < timeout); ++ ++ return elapsed; ++} ++#endif ++ + nsapi_protocol_t ICMPSocket::get_proto() + { + return NSAPI_ICMP; +-- +2.47.2 + diff --git a/variants/ARDUINO_NANO33BLE/defines.txt b/variants/ARDUINO_NANO33BLE/defines.txt index 0158ebf63..8bf9cde35 100644 --- a/variants/ARDUINO_NANO33BLE/defines.txt +++ b/variants/ARDUINO_NANO33BLE/defines.txt @@ -34,7 +34,7 @@ -DFEATURE_STORAGE=1 -D__FPU_PRESENT=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730202709.4767566 +-DMBED_BUILD_TIMESTAMP=1738678457.278008 -D__MBED_CMSIS_RTOS_CM -DMBED_MPU_CUSTOM -DMBED_TICKLESS diff --git a/variants/ARDUINO_NANO33BLE/libs/libmbed.a b/variants/ARDUINO_NANO33BLE/libs/libmbed.a index 9cf04c0cd..729832d39 100644 Binary files a/variants/ARDUINO_NANO33BLE/libs/libmbed.a and b/variants/ARDUINO_NANO33BLE/libs/libmbed.a differ diff --git a/variants/EDGE_CONTROL/conf/mbed_app.json b/variants/EDGE_CONTROL/conf/mbed_app.json index 572df7428..93d202c0d 100644 --- a/variants/EDGE_CONTROL/conf/mbed_app.json +++ b/variants/EDGE_CONTROL/conf/mbed_app.json @@ -19,7 +19,8 @@ "cellular.offload-dns-queries": true, "cellular.at-handler-buffer-size": 1024, "mbed-trace.enable": true, - "target.mbed_app_start": "0x10000" + "target.mbed_app_start": "0x10000", + "lwip.raw-socket-enabled": true }, "EDGE_CONTROL": { "sd.SPI_MOSI": "P0_20", diff --git a/variants/EDGE_CONTROL/defines.txt b/variants/EDGE_CONTROL/defines.txt index 9b1e41ac1..4fd396229 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=1738678638.4581091 -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 99db5183e..d42e1137e 100644 Binary files a/variants/EDGE_CONTROL/libs/libmbed.a and b/variants/EDGE_CONTROL/libs/libmbed.a differ diff --git a/variants/EDGE_CONTROL/mbed_config.h b/variants/EDGE_CONTROL/mbed_config.h index c61166166..31fa1228d 100644 --- a/variants/EDGE_CONTROL/mbed_config.h +++ b/variants/EDGE_CONTROL/mbed_config.h @@ -239,7 +239,7 @@ #define MBED_CONF_LWIP_PPP_IPV6_ENABLED 0 // set by library:lwip #define MBED_CONF_LWIP_PPP_THREAD_STACKSIZE 768 // set by library:lwip #define MBED_CONF_LWIP_PRESENT 1 // set by library:lwip -#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 1 // set by application[*] #define MBED_CONF_LWIP_SOCKET_MAX 4 // set by library:lwip #define MBED_CONF_LWIP_TCPIP_THREAD_PRIORITY osPriorityNormal // set by library:lwip #define MBED_CONF_LWIP_TCPIP_THREAD_STACKSIZE 1200 // set by library:lwip diff --git a/variants/GENERIC_STM32H747_M4/defines.txt b/variants/GENERIC_STM32H747_M4/defines.txt index c410536fe..b44c062da 100644 --- a/variants/GENERIC_STM32H747_M4/defines.txt +++ b/variants/GENERIC_STM32H747_M4/defines.txt @@ -42,7 +42,7 @@ -DFEATURE_BLE=1 -D__FPU_PRESENT=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730202826.649384 +-DMBED_BUILD_TIMESTAMP=1738678579.8515525 -D__MBED_CMSIS_RTOS_CM -DMBED_MPU_CUSTOM -DMBED_TICKLESS diff --git a/variants/GENERIC_STM32H747_M4/libs/libmbed.a b/variants/GENERIC_STM32H747_M4/libs/libmbed.a index 31e9c33bf..72951f8a2 100644 Binary files a/variants/GENERIC_STM32H747_M4/libs/libmbed.a and b/variants/GENERIC_STM32H747_M4/libs/libmbed.a differ diff --git a/variants/GIGA/conf/mbed_app.json b/variants/GIGA/conf/mbed_app.json index e6bdf88a6..361a0ab94 100644 --- a/variants/GIGA/conf/mbed_app.json +++ b/variants/GIGA/conf/mbed_app.json @@ -13,6 +13,7 @@ "target.mbed_app_start": "0x8040000", "nsapi.dns-response-wait-time": 5000, "nsapi.dns-total-attempts": 3, + "lwip.raw-socket-enabled": true, "target.macros_add": [ "METAL_INTERNAL", "VIRTIO_DRIVER_ONLY", diff --git a/variants/GIGA/defines.txt b/variants/GIGA/defines.txt index 500b94883..20ad512ab 100644 --- a/variants/GIGA/defines.txt +++ b/variants/GIGA/defines.txt @@ -44,7 +44,7 @@ -DFEATURE_BLE=1 -D__FPU_PRESENT=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730203074.8719478 +-DMBED_BUILD_TIMESTAMP=1738678847.5982425 -D__MBED_CMSIS_RTOS_CM -DMBED_TICKLESS -DMBEDTLS_FS_IO diff --git a/variants/GIGA/libs/libmbed.a b/variants/GIGA/libs/libmbed.a index 47d47295d..589bc11d9 100644 Binary files a/variants/GIGA/libs/libmbed.a and b/variants/GIGA/libs/libmbed.a differ diff --git a/variants/GIGA/mbed_config.h b/variants/GIGA/mbed_config.h index 460ac941c..3133aa110 100644 --- a/variants/GIGA/mbed_config.h +++ b/variants/GIGA/mbed_config.h @@ -226,7 +226,7 @@ #define MBED_CONF_LWIP_PPP_IPV6_ENABLED 0 // set by library:lwip #define MBED_CONF_LWIP_PPP_THREAD_STACKSIZE 768 // set by library:lwip #define MBED_CONF_LWIP_PRESENT 1 // set by library:lwip -#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 1 // set by application[*] #define MBED_CONF_LWIP_SOCKET_MAX 4 // set by library:lwip #define MBED_CONF_LWIP_TCPIP_THREAD_PRIORITY osPriorityNormal // set by library:lwip #define MBED_CONF_LWIP_TCPIP_THREAD_STACKSIZE 1200 // set by library:lwip @@ -250,9 +250,9 @@ #define MBED_CONF_NSAPI_DEFAULT_WIFI_SECURITY NONE // set by library:nsapi #define MBED_CONF_NSAPI_DNS_ADDRESSES_LIMIT 10 // set by library:nsapi #define MBED_CONF_NSAPI_DNS_CACHE_SIZE 3 // set by library:nsapi -#define MBED_CONF_NSAPI_DNS_RESPONSE_WAIT_TIME 10000 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_RESPONSE_WAIT_TIME 5000 // set by application[*] #define MBED_CONF_NSAPI_DNS_RETRIES 1 // set by library:nsapi -#define MBED_CONF_NSAPI_DNS_TOTAL_ATTEMPTS 10 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_TOTAL_ATTEMPTS 3 // set by application[*] #define MBED_CONF_NSAPI_PRESENT 1 // set by library:nsapi #define MBED_CONF_NSAPI_SOCKET_STATS_ENABLED 0 // set by library:nsapi #define MBED_CONF_NSAPI_SOCKET_STATS_MAX_COUNT 10 // set by library:nsapi diff --git a/variants/NANO_RP2040_CONNECT/defines.txt b/variants/NANO_RP2040_CONNECT/defines.txt index 6e93a6953..e4f955eb0 100644 --- a/variants/NANO_RP2040_CONNECT/defines.txt +++ b/variants/NANO_RP2040_CONNECT/defines.txt @@ -21,7 +21,7 @@ -DDEVICE_USTICKER=1 -DDEVICE_WATCHDOG=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730202686.158914 +-DMBED_BUILD_TIMESTAMP=1738678431.5907538 -D__MBED_CMSIS_RTOS_CM -DMBED_MPU_CUSTOM -DMBEDTLS_ENTROPY_NV_SEED diff --git a/variants/NANO_RP2040_CONNECT/libs/libmbed.a b/variants/NANO_RP2040_CONNECT/libs/libmbed.a index 0cc8325ea..475e6e096 100644 Binary files a/variants/NANO_RP2040_CONNECT/libs/libmbed.a and b/variants/NANO_RP2040_CONNECT/libs/libmbed.a differ diff --git a/variants/NICLA/defines.txt b/variants/NICLA/defines.txt index afd185e64..2c2321141 100644 --- a/variants/NICLA/defines.txt +++ b/variants/NICLA/defines.txt @@ -33,7 +33,7 @@ -DFEATURE_BLE=1 -D__FPU_PRESENT=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730202924.3808827 +-DMBED_BUILD_TIMESTAMP=1738678686.654947 -D__MBED_CMSIS_RTOS_CM -DMBED_MPU_CUSTOM -DMBED_TICKLESS diff --git a/variants/NICLA/libs/libmbed.a b/variants/NICLA/libs/libmbed.a index 410c385af..3cd144aff 100644 Binary files a/variants/NICLA/libs/libmbed.a and b/variants/NICLA/libs/libmbed.a differ diff --git a/variants/NICLA_VISION/conf/mbed_app.json b/variants/NICLA_VISION/conf/mbed_app.json index aa69d0799..f3227a71f 100644 --- a/variants/NICLA_VISION/conf/mbed_app.json +++ b/variants/NICLA_VISION/conf/mbed_app.json @@ -14,6 +14,7 @@ "target.mbed_app_start": "0x8040000", "nsapi.dns-response-wait-time": 5000, "nsapi.dns-total-attempts": 3, + "lwip.raw-socket-enabled": true, "target.macros_add": [ "METAL_INTERNAL", "VIRTIO_DRIVER_ONLY", diff --git a/variants/NICLA_VISION/defines.txt b/variants/NICLA_VISION/defines.txt index e763ec718..6e2d9a947 100644 --- a/variants/NICLA_VISION/defines.txt +++ b/variants/NICLA_VISION/defines.txt @@ -45,7 +45,7 @@ -DFLOW_SILENT -D__FPU_PRESENT=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730202959.8104806 +-DMBED_BUILD_TIMESTAMP=1738678724.8386328 -D__MBED_CMSIS_RTOS_CM -DMBED_TICKLESS -DMBEDTLS_FS_IO diff --git a/variants/NICLA_VISION/libs/libmbed.a b/variants/NICLA_VISION/libs/libmbed.a index a9cd38f54..c6991a257 100644 Binary files a/variants/NICLA_VISION/libs/libmbed.a and b/variants/NICLA_VISION/libs/libmbed.a differ diff --git a/variants/NICLA_VISION/mbed_config.h b/variants/NICLA_VISION/mbed_config.h index ed8376f00..d4ec859a3 100644 --- a/variants/NICLA_VISION/mbed_config.h +++ b/variants/NICLA_VISION/mbed_config.h @@ -226,7 +226,7 @@ #define MBED_CONF_LWIP_PPP_IPV6_ENABLED 0 // set by library:lwip #define MBED_CONF_LWIP_PPP_THREAD_STACKSIZE 768 // set by library:lwip #define MBED_CONF_LWIP_PRESENT 1 // set by library:lwip -#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 1 // set by application[*] #define MBED_CONF_LWIP_SOCKET_MAX 4 // set by library:lwip #define MBED_CONF_LWIP_TCPIP_THREAD_PRIORITY osPriorityNormal // set by library:lwip #define MBED_CONF_LWIP_TCPIP_THREAD_STACKSIZE 1200 // set by library:lwip @@ -250,9 +250,9 @@ #define MBED_CONF_NSAPI_DEFAULT_WIFI_SECURITY NONE // set by library:nsapi #define MBED_CONF_NSAPI_DNS_ADDRESSES_LIMIT 10 // set by library:nsapi #define MBED_CONF_NSAPI_DNS_CACHE_SIZE 3 // set by library:nsapi -#define MBED_CONF_NSAPI_DNS_RESPONSE_WAIT_TIME 10000 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_RESPONSE_WAIT_TIME 5000 // set by application[*] #define MBED_CONF_NSAPI_DNS_RETRIES 1 // set by library:nsapi -#define MBED_CONF_NSAPI_DNS_TOTAL_ATTEMPTS 10 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_TOTAL_ATTEMPTS 3 // set by application[*] #define MBED_CONF_NSAPI_PRESENT 1 // set by library:nsapi #define MBED_CONF_NSAPI_SOCKET_STATS_ENABLED 0 // set by library:nsapi #define MBED_CONF_NSAPI_SOCKET_STATS_MAX_COUNT 10 // set by library:nsapi diff --git a/variants/OPTA/conf/mbed_app.json b/variants/OPTA/conf/mbed_app.json index e6bdf88a6..361a0ab94 100644 --- a/variants/OPTA/conf/mbed_app.json +++ b/variants/OPTA/conf/mbed_app.json @@ -13,6 +13,7 @@ "target.mbed_app_start": "0x8040000", "nsapi.dns-response-wait-time": 5000, "nsapi.dns-total-attempts": 3, + "lwip.raw-socket-enabled": true, "target.macros_add": [ "METAL_INTERNAL", "VIRTIO_DRIVER_ONLY", diff --git a/variants/OPTA/defines.txt b/variants/OPTA/defines.txt index 9701064b3..76b04861f 100644 --- a/variants/OPTA/defines.txt +++ b/variants/OPTA/defines.txt @@ -44,7 +44,7 @@ -DFEATURE_BLE=1 -D__FPU_PRESENT=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730203018.6299732 +-DMBED_BUILD_TIMESTAMP=1738678787.2016976 -D__MBED_CMSIS_RTOS_CM -DMBED_TICKLESS -DMBEDTLS_FS_IO diff --git a/variants/OPTA/libs/libmbed.a b/variants/OPTA/libs/libmbed.a index 13b2ad904..0dd368bf8 100644 Binary files a/variants/OPTA/libs/libmbed.a and b/variants/OPTA/libs/libmbed.a differ diff --git a/variants/OPTA/mbed_config.h b/variants/OPTA/mbed_config.h index c0485cbf8..4b6d57eaa 100644 --- a/variants/OPTA/mbed_config.h +++ b/variants/OPTA/mbed_config.h @@ -226,7 +226,7 @@ #define MBED_CONF_LWIP_PPP_IPV6_ENABLED 0 // set by library:lwip #define MBED_CONF_LWIP_PPP_THREAD_STACKSIZE 768 // set by library:lwip #define MBED_CONF_LWIP_PRESENT 1 // set by library:lwip -#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 1 // set by application[*] #define MBED_CONF_LWIP_SOCKET_MAX 4 // set by library:lwip #define MBED_CONF_LWIP_TCPIP_THREAD_PRIORITY osPriorityNormal // set by library:lwip #define MBED_CONF_LWIP_TCPIP_THREAD_STACKSIZE 1200 // set by library:lwip @@ -250,9 +250,9 @@ #define MBED_CONF_NSAPI_DEFAULT_WIFI_SECURITY NONE // set by library:nsapi #define MBED_CONF_NSAPI_DNS_ADDRESSES_LIMIT 10 // set by library:nsapi #define MBED_CONF_NSAPI_DNS_CACHE_SIZE 3 // set by library:nsapi -#define MBED_CONF_NSAPI_DNS_RESPONSE_WAIT_TIME 10000 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_RESPONSE_WAIT_TIME 5000 // set by application[*] #define MBED_CONF_NSAPI_DNS_RETRIES 1 // set by library:nsapi -#define MBED_CONF_NSAPI_DNS_TOTAL_ATTEMPTS 10 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_TOTAL_ATTEMPTS 3 // set by application[*] #define MBED_CONF_NSAPI_PRESENT 1 // set by library:nsapi #define MBED_CONF_NSAPI_SOCKET_STATS_ENABLED 0 // set by library:nsapi #define MBED_CONF_NSAPI_SOCKET_STATS_MAX_COUNT 10 // set by library:nsapi diff --git a/variants/PORTENTA_H7_M7/conf/mbed_app.json b/variants/PORTENTA_H7_M7/conf/mbed_app.json index 4e861a8ec..fbf702dd2 100644 --- a/variants/PORTENTA_H7_M7/conf/mbed_app.json +++ b/variants/PORTENTA_H7_M7/conf/mbed_app.json @@ -17,6 +17,7 @@ "target.mbed_app_start": "0x8040000", "nsapi.dns-response-wait-time": 5000, "nsapi.dns-total-attempts": 3, + "lwip.raw-socket-enabled": true, "target.macros_add": [ "BT_UART_NO_3M_SUPPORT", "USB_DYNAMIC_CONFIGURATION", diff --git a/variants/PORTENTA_H7_M7/defines.txt b/variants/PORTENTA_H7_M7/defines.txt index 7f3f52d69..24f4526bd 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=1738678521.1974137 -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 0b0f82eb9..286f51da4 100644 Binary files a/variants/PORTENTA_H7_M7/libs/libmbed.a and b/variants/PORTENTA_H7_M7/libs/libmbed.a differ diff --git a/variants/PORTENTA_H7_M7/mbed_config.h b/variants/PORTENTA_H7_M7/mbed_config.h index a6f5ffd53..0bdce3566 100644 --- a/variants/PORTENTA_H7_M7/mbed_config.h +++ b/variants/PORTENTA_H7_M7/mbed_config.h @@ -227,7 +227,7 @@ #define MBED_CONF_LWIP_PPP_IPV6_ENABLED 0 // set by library:lwip #define MBED_CONF_LWIP_PPP_THREAD_STACKSIZE 768 // set by library:lwip #define MBED_CONF_LWIP_PRESENT 1 // set by library:lwip -#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 1 // set by application[*] #define MBED_CONF_LWIP_SOCKET_MAX 4 // set by library:lwip #define MBED_CONF_LWIP_TCPIP_THREAD_PRIORITY osPriorityNormal // set by library:lwip #define MBED_CONF_LWIP_TCPIP_THREAD_STACKSIZE 1200 // set by library:lwip @@ -252,9 +252,9 @@ #define MBED_CONF_NSAPI_DEFAULT_WIFI_SECURITY NONE // set by library:nsapi #define MBED_CONF_NSAPI_DNS_ADDRESSES_LIMIT 10 // set by library:nsapi #define MBED_CONF_NSAPI_DNS_CACHE_SIZE 3 // set by library:nsapi -#define MBED_CONF_NSAPI_DNS_RESPONSE_WAIT_TIME 10000 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_RESPONSE_WAIT_TIME 5000 // set by application[*] #define MBED_CONF_NSAPI_DNS_RETRIES 1 // set by library:nsapi -#define MBED_CONF_NSAPI_DNS_TOTAL_ATTEMPTS 10 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_TOTAL_ATTEMPTS 3 // set by application[*] #define MBED_CONF_NSAPI_PRESENT 1 // set by library:nsapi #define MBED_CONF_NSAPI_SOCKET_STATS_ENABLED 0 // set by library:nsapi #define MBED_CONF_NSAPI_SOCKET_STATS_MAX_COUNT 10 // set by library:nsapi diff --git a/variants/PORTENTA_X8/defines.txt b/variants/PORTENTA_X8/defines.txt index 4f22911f8..84f8e1a24 100644 --- a/variants/PORTENTA_X8/defines.txt +++ b/variants/PORTENTA_X8/defines.txt @@ -34,7 +34,7 @@ -DEXTRA_IDLE_STACK_REQUIRED -D__FPU_PRESENT=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730203130.6854968 +-DMBED_BUILD_TIMESTAMP=1738678907.604638 -D__MBED_CMSIS_RTOS_CM -DMBED_MPU_CUSTOM -DMBED_TICKLESS diff --git a/variants/PORTENTA_X8/libs/libmbed.a b/variants/PORTENTA_X8/libs/libmbed.a index b1614fc6e..f97d15a42 100644 Binary files a/variants/PORTENTA_X8/libs/libmbed.a and b/variants/PORTENTA_X8/libs/libmbed.a differ diff --git a/variants/RASPBERRY_PI_PICO/defines.txt b/variants/RASPBERRY_PI_PICO/defines.txt index 9992f6dfd..145819bb8 100644 --- a/variants/RASPBERRY_PI_PICO/defines.txt +++ b/variants/RASPBERRY_PI_PICO/defines.txt @@ -21,7 +21,7 @@ -DDEVICE_USTICKER=1 -DDEVICE_WATCHDOG=1 -D__MBED__=1 --DMBED_BUILD_TIMESTAMP=1730202745.2787673 +-DMBED_BUILD_TIMESTAMP=1738678494.5493546 -D__MBED_CMSIS_RTOS_CM -DMBED_MPU_CUSTOM -DMBEDTLS_ENTROPY_NV_SEED diff --git a/variants/RASPBERRY_PI_PICO/libs/libmbed.a b/variants/RASPBERRY_PI_PICO/libs/libmbed.a index 77892601e..1075eec8e 100644 Binary files a/variants/RASPBERRY_PI_PICO/libs/libmbed.a and b/variants/RASPBERRY_PI_PICO/libs/libmbed.a differ