From a8228851d98e031b2b8a66ae1820e83eeefd3ab1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Mon, 27 Jun 2022 20:19:50 +0200 Subject: [PATCH] [realtek-ambz] Make WiFi SDK code less verbose --- arduino/realtek-ambz/cores/arduino/main.cpp | 10 ++++++++++ .../realtek-ambz/libraries/WiFi/WiFiGeneric.cpp | 15 ++++++++++++--- arduino/realtek-ambz/libraries/WiFi/WiFiSTA.cpp | 9 ++++++++- 3 files changed, 30 insertions(+), 4 deletions(-) diff --git a/arduino/realtek-ambz/cores/arduino/main.cpp b/arduino/realtek-ambz/cores/arduino/main.cpp index 39804c5..07ea711 100644 --- a/arduino/realtek-ambz/cores/arduino/main.cpp +++ b/arduino/realtek-ambz/cores/arduino/main.cpp @@ -24,6 +24,16 @@ osThreadId main_tid = 0; +extern uint32_t GlobalDebugEnable; +extern uint16_t GlobalDebugLevel; +extern uint8_t GlobalPrivateLog; + +void init() { + // make the SDK less verbose by default + GlobalDebugEnable = 0; + GlobalPrivateLog = 0; +} + bool startMainTask() { osThreadDef(main_task, osPriorityRealtime, 1, 4096 * 4); main_tid = osThreadCreate(osThread(main_task), NULL); diff --git a/arduino/realtek-ambz/libraries/WiFi/WiFiGeneric.cpp b/arduino/realtek-ambz/libraries/WiFi/WiFiGeneric.cpp index 103a870..d5de81f 100644 --- a/arduino/realtek-ambz/libraries/WiFi/WiFiGeneric.cpp +++ b/arduino/realtek-ambz/libraries/WiFi/WiFiGeneric.cpp @@ -9,6 +9,8 @@ int32_t WiFiClass::channel() { } bool WiFiClass::modePriv(WiFiMode mode, WiFiModeAction sta, WiFiModeAction ap) { + __wrap_rtl_printf_disable(); + __wrap_DiagPrintf_disable(); startWifiTask(); if (!data.initialized) { @@ -23,15 +25,15 @@ bool WiFiClass::modePriv(WiFiMode mode, WiFiModeAction sta, WiFiModeAction ap) { // stop wifi to change mode LT_D_WG("Stopping WiFi to change mode"); if (wifi_off() != RTW_SUCCESS) - return false; + goto error; vTaskDelay(20); if (mode == WIFI_MODE_NULL) - return false; + goto error; } if (wifi_on((rtw_mode_t)mode) != RTW_SUCCESS) { LT_E("Error while changing mode(%u)", mode); - return false; + goto error; } // send STA start/stop events and AP stop event (start is handled in softAP()) @@ -45,7 +47,14 @@ bool WiFiClass::modePriv(WiFiMode mode, WiFiModeAction sta, WiFiModeAction ap) { } LT_HEAP_I(); + __wrap_rtl_printf_enable(); + __wrap_DiagPrintf_enable(); return true; + +error: + __wrap_rtl_printf_enable(); + __wrap_DiagPrintf_enable(); + return false; } WiFiMode WiFiClass::getMode() { diff --git a/arduino/realtek-ambz/libraries/WiFi/WiFiSTA.cpp b/arduino/realtek-ambz/libraries/WiFi/WiFiSTA.cpp index 818e0e6..f46d3d6 100644 --- a/arduino/realtek-ambz/libraries/WiFi/WiFiSTA.cpp +++ b/arduino/realtek-ambz/libraries/WiFi/WiFiSTA.cpp @@ -72,6 +72,8 @@ bool WiFiClass::reconnect(const uint8_t *bssid) { uint8_t dhcpRet; LT_I("Connecting to %s", wifi.ssid.val); + __wrap_rtl_printf_disable(); + __wrap_DiagPrintf_disable(); if (!bssid) { ret = wifi_connect( @@ -112,13 +114,18 @@ bool WiFiClass::reconnect(const uint8_t *bssid) { wifi_indication(WIFI_EVENT_CONNECT, (char *)eventInfo, ARDUINO_EVENT_WIFI_STA_GOT_IP, -2); // free memory as wifi_indication creates a copy free(eventInfo); + __wrap_rtl_printf_enable(); + __wrap_DiagPrintf_enable(); return true; } LT_E("DHCP failed; dhcpRet=%d", dhcpRet); wifi_disconnect(); - return false; + goto error; } LT_E("Connection failed; ret=%d", ret); +error: + __wrap_rtl_printf_enable(); + __wrap_DiagPrintf_enable(); return false; }