From 1194620ddee61a03763482bcaed3fa1d3e9fe8e7 Mon Sep 17 00:00:00 2001 From: pennam Date: Mon, 15 May 2023 09:51:36 +0200 Subject: [PATCH 1/6] Substitute BOARD_ESP with BOARD_HAS_SECRET_KEY --- examples/ArduinoIoTCloud-Advanced/arduino_secrets.h | 2 +- examples/ArduinoIoTCloud-Advanced/thingProperties.h | 4 ++-- examples/ArduinoIoTCloud-Basic/arduino_secrets.h | 2 +- examples/ArduinoIoTCloud-Basic/thingProperties.h | 4 ++-- examples/ArduinoIoTCloud-Callbacks/arduino_secrets.h | 2 +- examples/ArduinoIoTCloud-Callbacks/thingProperties.h | 4 ++-- examples/ArduinoIoTCloud-DeferredOTA/arduino_secrets.h | 2 +- examples/ArduinoIoTCloud-DeferredOTA/thingProperties.h | 4 ++-- examples/ArduinoIoTCloud-Schedule/arduino_secrets.h | 2 +- examples/ArduinoIoTCloud-Schedule/thingProperties.h | 4 ++-- .../utility/ArduinoIoTCloud_Travis_CI/arduino_secrets.h | 2 +- .../utility/ArduinoIoTCloud_Travis_CI/thingProperties.h | 4 ++-- src/AIoTC_Config.h | 2 +- src/ArduinoIoTCloudTCP.cpp | 6 +++--- src/ArduinoIoTCloudTCP.h | 6 +++--- 15 files changed, 25 insertions(+), 25 deletions(-) diff --git a/examples/ArduinoIoTCloud-Advanced/arduino_secrets.h b/examples/ArduinoIoTCloud-Advanced/arduino_secrets.h index d1615135f..09ea8323a 100644 --- a/examples/ArduinoIoTCloud-Advanced/arduino_secrets.h +++ b/examples/ArduinoIoTCloud-Advanced/arduino_secrets.h @@ -10,7 +10,7 @@ #endif /* ESP8266 ESP32*/ -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define SECRET_DEVICE_KEY "my-device-password" #endif diff --git a/examples/ArduinoIoTCloud-Advanced/thingProperties.h b/examples/ArduinoIoTCloud-Advanced/thingProperties.h index f8d7bb506..fd4b2ce69 100644 --- a/examples/ArduinoIoTCloud-Advanced/thingProperties.h +++ b/examples/ArduinoIoTCloud-Advanced/thingProperties.h @@ -7,7 +7,7 @@ #error "Please check Arduino IoT Cloud supported boards list: https://github.com/arduino-libraries/ArduinoIoTCloud/#what" #endif -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define BOARD_ID "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" #endif @@ -19,7 +19,7 @@ CloudLocation location; CloudColor color; void initProperties() { -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) ArduinoCloud.setBoardId(BOARD_ID); ArduinoCloud.setSecretDeviceKey(SECRET_DEVICE_KEY); #endif diff --git a/examples/ArduinoIoTCloud-Basic/arduino_secrets.h b/examples/ArduinoIoTCloud-Basic/arduino_secrets.h index d1615135f..09ea8323a 100644 --- a/examples/ArduinoIoTCloud-Basic/arduino_secrets.h +++ b/examples/ArduinoIoTCloud-Basic/arduino_secrets.h @@ -10,7 +10,7 @@ #endif /* ESP8266 ESP32*/ -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define SECRET_DEVICE_KEY "my-device-password" #endif diff --git a/examples/ArduinoIoTCloud-Basic/thingProperties.h b/examples/ArduinoIoTCloud-Basic/thingProperties.h index e11eaf81f..b10ac85fc 100644 --- a/examples/ArduinoIoTCloud-Basic/thingProperties.h +++ b/examples/ArduinoIoTCloud-Basic/thingProperties.h @@ -7,7 +7,7 @@ #error "Please check Arduino IoT Cloud supported boards list: https://github.com/arduino-libraries/ArduinoIoTCloud/#what" #endif -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define BOARD_ID "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" #endif @@ -18,7 +18,7 @@ int potentiometer; int seconds; void initProperties() { -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) ArduinoCloud.setBoardId(BOARD_ID); ArduinoCloud.setSecretDeviceKey(SECRET_DEVICE_KEY); #endif diff --git a/examples/ArduinoIoTCloud-Callbacks/arduino_secrets.h b/examples/ArduinoIoTCloud-Callbacks/arduino_secrets.h index d1615135f..09ea8323a 100644 --- a/examples/ArduinoIoTCloud-Callbacks/arduino_secrets.h +++ b/examples/ArduinoIoTCloud-Callbacks/arduino_secrets.h @@ -10,7 +10,7 @@ #endif /* ESP8266 ESP32*/ -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define SECRET_DEVICE_KEY "my-device-password" #endif diff --git a/examples/ArduinoIoTCloud-Callbacks/thingProperties.h b/examples/ArduinoIoTCloud-Callbacks/thingProperties.h index d92788f98..f3de1a2ed 100644 --- a/examples/ArduinoIoTCloud-Callbacks/thingProperties.h +++ b/examples/ArduinoIoTCloud-Callbacks/thingProperties.h @@ -7,12 +7,12 @@ #error "Please check Arduino IoT Cloud supported boards list: https://github.com/arduino-libraries/ArduinoIoTCloud/#what" #endif -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define BOARD_ID "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" #endif void initProperties() { -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) ArduinoCloud.setBoardId(BOARD_ID); ArduinoCloud.setSecretDeviceKey(SECRET_DEVICE_KEY); #endif diff --git a/examples/ArduinoIoTCloud-DeferredOTA/arduino_secrets.h b/examples/ArduinoIoTCloud-DeferredOTA/arduino_secrets.h index d1615135f..09ea8323a 100644 --- a/examples/ArduinoIoTCloud-DeferredOTA/arduino_secrets.h +++ b/examples/ArduinoIoTCloud-DeferredOTA/arduino_secrets.h @@ -10,7 +10,7 @@ #endif /* ESP8266 ESP32*/ -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define SECRET_DEVICE_KEY "my-device-password" #endif diff --git a/examples/ArduinoIoTCloud-DeferredOTA/thingProperties.h b/examples/ArduinoIoTCloud-DeferredOTA/thingProperties.h index 94b3b0ece..1570e4a1b 100644 --- a/examples/ArduinoIoTCloud-DeferredOTA/thingProperties.h +++ b/examples/ArduinoIoTCloud-DeferredOTA/thingProperties.h @@ -7,7 +7,7 @@ #error "Please check Arduino IoT Cloud supported boards list: https://github.com/arduino-libraries/ArduinoIoTCloud/#what" #endif -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define BOARD_ID "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" #endif @@ -16,7 +16,7 @@ void onLedChange(); bool led; void initProperties() { -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) ArduinoCloud.setBoardId(BOARD_ID); ArduinoCloud.setSecretDeviceKey(SECRET_DEVICE_KEY); #endif diff --git a/examples/ArduinoIoTCloud-Schedule/arduino_secrets.h b/examples/ArduinoIoTCloud-Schedule/arduino_secrets.h index d1615135f..09ea8323a 100644 --- a/examples/ArduinoIoTCloud-Schedule/arduino_secrets.h +++ b/examples/ArduinoIoTCloud-Schedule/arduino_secrets.h @@ -10,7 +10,7 @@ #endif /* ESP8266 ESP32*/ -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define SECRET_DEVICE_KEY "my-device-password" #endif diff --git a/examples/ArduinoIoTCloud-Schedule/thingProperties.h b/examples/ArduinoIoTCloud-Schedule/thingProperties.h index 940cb5c26..22a185b9c 100644 --- a/examples/ArduinoIoTCloud-Schedule/thingProperties.h +++ b/examples/ArduinoIoTCloud-Schedule/thingProperties.h @@ -7,7 +7,7 @@ #error "Please check Arduino IoT Cloud supported boards list: https://github.com/arduino-libraries/ArduinoIoTCloud/#what" #endif -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define BOARD_ID "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" #endif @@ -23,7 +23,7 @@ CloudSchedule monthly; CloudSchedule yearly; void initProperties() { -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) ArduinoCloud.setBoardId(BOARD_ID); ArduinoCloud.setSecretDeviceKey(SECRET_DEVICE_KEY); #endif diff --git a/examples/utility/ArduinoIoTCloud_Travis_CI/arduino_secrets.h b/examples/utility/ArduinoIoTCloud_Travis_CI/arduino_secrets.h index d1615135f..09ea8323a 100644 --- a/examples/utility/ArduinoIoTCloud_Travis_CI/arduino_secrets.h +++ b/examples/utility/ArduinoIoTCloud_Travis_CI/arduino_secrets.h @@ -10,7 +10,7 @@ #endif /* ESP8266 ESP32*/ -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define SECRET_DEVICE_KEY "my-device-password" #endif diff --git a/examples/utility/ArduinoIoTCloud_Travis_CI/thingProperties.h b/examples/utility/ArduinoIoTCloud_Travis_CI/thingProperties.h index eff3035bd..8a9ed4a28 100644 --- a/examples/utility/ArduinoIoTCloud_Travis_CI/thingProperties.h +++ b/examples/utility/ArduinoIoTCloud_Travis_CI/thingProperties.h @@ -11,7 +11,7 @@ DEFINES ******************************************************************************/ -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) #define BOARD_ID "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" #endif @@ -79,7 +79,7 @@ void onStringPropertyChange(); ******************************************************************************/ #if defined(BOARD_HAS_WIFI) || defined(BOARD_HAS_GSM) || defined (BOARD_HAS_NB) void initProperties() { -#if defined(BOARD_ESP) +#if defined(BOARD_HAS_SECRET_KEY) ArduinoCloud.setBoardId(BOARD_ID); ArduinoCloud.setSecretDeviceKey(SECRET_DEVICE_KEY); #endif diff --git a/src/AIoTC_Config.h b/src/AIoTC_Config.h index 41abcb7d9..3cf486063 100644 --- a/src/AIoTC_Config.h +++ b/src/AIoTC_Config.h @@ -142,7 +142,7 @@ #endif #if defined(ARDUINO_ESP8266_ESP12) || defined(ARDUINO_ARCH_ESP32) || defined(ESP8266) || defined(ESP32) - #define BOARD_ESP + #define BOARD_HAS_SECRET_KEY #define HAS_TCP #endif diff --git a/src/ArduinoIoTCloudTCP.cpp b/src/ArduinoIoTCloudTCP.cpp index 5d0dd8f57..7feeb308e 100644 --- a/src/ArduinoIoTCloudTCP.cpp +++ b/src/ArduinoIoTCloudTCP.cpp @@ -86,7 +86,7 @@ ArduinoIoTCloudTCP::ArduinoIoTCloudTCP() #ifdef BOARD_HAS_ECCX08 , _sslClient(nullptr, ArduinoIoTCloudTrustAnchor, ArduinoIoTCloudTrustAnchor_NUM, getTime) #endif - #ifdef BOARD_ESP + #ifdef BOARD_HAS_SECRET_KEY , _password("") #endif , _mqttClient{nullptr} @@ -168,12 +168,12 @@ int ArduinoIoTCloudTCP::begin(bool const enable_watchdog, String brokerAddress, _sslClient.setClient(_connection->getClient()); #elif defined(BOARD_HAS_SE050) _sslClient.appendCustomCACert(AIoTSSCert); -#elif defined(BOARD_ESP) +#elif defined(BOARD_HAS_SECRET_KEY) _sslClient.setInsecure(); #endif _mqttClient.setClient(_sslClient); -#ifdef BOARD_ESP +#ifdef BOARD_HAS_SECRET_KEY _mqttClient.setUsernamePassword(getDeviceId(), _password); #endif _mqttClient.onMessage(ArduinoIoTCloudTCP::onMessage); diff --git a/src/ArduinoIoTCloudTCP.h b/src/ArduinoIoTCloudTCP.h index e8218c9e1..adc5c17e1 100644 --- a/src/ArduinoIoTCloudTCP.h +++ b/src/ArduinoIoTCloudTCP.h @@ -29,7 +29,7 @@ #ifdef BOARD_HAS_ECCX08 #include "tls/BearSSLClient.h" #include "tls/utility/CryptoUtil.h" -#elif defined(BOARD_ESP) +#elif defined(BOARD_HAS_SECRET_KEY) #include #elif defined(BOARD_HAS_SE050) #include "tls/utility/CryptoUtil.h" @@ -81,7 +81,7 @@ class ArduinoIoTCloudTCP: public ArduinoIoTCloudClass #endif int begin(bool const enable_watchdog = true, String brokerAddress = DEFAULT_BROKER_ADDRESS_SECURE_AUTH, uint16_t brokerPort = DEFAULT_BROKER_PORT_SECURE_AUTH); - #ifdef BOARD_ESP + #ifdef BOARD_HAS_SECRET_KEY inline void setBoardId (String const device_id) { setDeviceId(device_id); } inline void setSecretDeviceKey(String const password) { _password = password; } #endif @@ -143,7 +143,7 @@ class ArduinoIoTCloudTCP: public ArduinoIoTCloudClass ArduinoIoTCloudCertClass _cert; WiFiBearSSLClient _sslClient; CryptoUtil _crypto; - #elif defined(BOARD_ESP) + #elif defined(BOARD_HAS_SECRET_KEY) WiFiClientSecure _sslClient; String _password; #elif defined(BOARD_HAS_SE050) From ee8b8bfa9960fa381f16d4359717d9eaac952b1d Mon Sep 17 00:00:00 2001 From: pennam Date: Mon, 15 May 2023 09:53:45 +0200 Subject: [PATCH 2/6] Remove redundant ESP arch defines --- src/AIoTC_Config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/AIoTC_Config.h b/src/AIoTC_Config.h index f169ecbd3..d23269e18 100644 --- a/src/AIoTC_Config.h +++ b/src/AIoTC_Config.h @@ -141,7 +141,7 @@ #define HAS_LORA #endif -#if defined(ARDUINO_ESP8266_ESP12) || defined(ARDUINO_ARCH_ESP32) || defined(ESP8266) || defined(ESP32) +#if defined(ARDUINO_ARCH_ESP8266) || defined(ARDUINO_ARCH_ESP32) #define BOARD_ESP #define HAS_TCP #endif From 3df9d32d959c226550cd57f695db477d23ddc609 Mon Sep 17 00:00:00 2001 From: pennam Date: Wed, 7 Jun 2023 09:33:15 +0200 Subject: [PATCH 3/6] Restore BOARD_ESP to handle board specific configurations --- src/AIoTC_Config.h | 1 + src/ArduinoIoTCloudTCP.cpp | 2 +- src/ArduinoIoTCloudTCP.h | 9 ++++++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/AIoTC_Config.h b/src/AIoTC_Config.h index 3cf486063..f7f28931f 100644 --- a/src/AIoTC_Config.h +++ b/src/AIoTC_Config.h @@ -142,6 +142,7 @@ #endif #if defined(ARDUINO_ESP8266_ESP12) || defined(ARDUINO_ARCH_ESP32) || defined(ESP8266) || defined(ESP32) + #define BOARD_ESP #define BOARD_HAS_SECRET_KEY #define HAS_TCP #endif diff --git a/src/ArduinoIoTCloudTCP.cpp b/src/ArduinoIoTCloudTCP.cpp index 7feeb308e..402dbf4e6 100644 --- a/src/ArduinoIoTCloudTCP.cpp +++ b/src/ArduinoIoTCloudTCP.cpp @@ -168,7 +168,7 @@ int ArduinoIoTCloudTCP::begin(bool const enable_watchdog, String brokerAddress, _sslClient.setClient(_connection->getClient()); #elif defined(BOARD_HAS_SE050) _sslClient.appendCustomCACert(AIoTSSCert); -#elif defined(BOARD_HAS_SECRET_KEY) +#elif defined(BOARD_ESP) _sslClient.setInsecure(); #endif diff --git a/src/ArduinoIoTCloudTCP.h b/src/ArduinoIoTCloudTCP.h index adc5c17e1..8f6337b36 100644 --- a/src/ArduinoIoTCloudTCP.h +++ b/src/ArduinoIoTCloudTCP.h @@ -29,7 +29,7 @@ #ifdef BOARD_HAS_ECCX08 #include "tls/BearSSLClient.h" #include "tls/utility/CryptoUtil.h" -#elif defined(BOARD_HAS_SECRET_KEY) +#elif defined(BOARD_ESP) #include #elif defined(BOARD_HAS_SE050) #include "tls/utility/CryptoUtil.h" @@ -143,15 +143,18 @@ class ArduinoIoTCloudTCP: public ArduinoIoTCloudClass ArduinoIoTCloudCertClass _cert; WiFiBearSSLClient _sslClient; CryptoUtil _crypto; - #elif defined(BOARD_HAS_SECRET_KEY) + #elif defined(BOARD_ESP) WiFiClientSecure _sslClient; - String _password; #elif defined(BOARD_HAS_SE050) ArduinoIoTCloudCertClass _cert; WiFiSSLSE050Client _sslClient; CryptoUtil _crypto; #endif + #if defined (BOARD_HAS_SECRET_KEY) + String _password; + #endif + MqttClient _mqttClient; String _deviceTopicOut; From a34ce91e7a7087190a43c218fda122a2381b04ca Mon Sep 17 00:00:00 2001 From: pennam Date: Thu, 4 May 2023 08:55:18 +0200 Subject: [PATCH 4/6] Initial: Basic support for Portenta C33 RTC support and OTA support missing --- src/AIoTC_Config.h | 2 +- src/ArduinoIoTCloudTCP.cpp | 3 +++ src/ArduinoIoTCloudTCP.h | 7 +++++++ src/utility/time/TimeService.cpp | 9 ++++++--- 4 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/AIoTC_Config.h b/src/AIoTC_Config.h index f169ecbd3..4ae83767d 100644 --- a/src/AIoTC_Config.h +++ b/src/AIoTC_Config.h @@ -126,7 +126,7 @@ #define HAS_TCP #endif -#if defined(ARDUINO_NICLA_VISION) +#if defined(ARDUINO_NICLA_VISION) || defined(ARDUINO_PORTENTA_C33) #define BOARD_HAS_SE050 #define HAS_TCP #endif diff --git a/src/ArduinoIoTCloudTCP.cpp b/src/ArduinoIoTCloudTCP.cpp index 5d0dd8f57..2e8b1bea8 100644 --- a/src/ArduinoIoTCloudTCP.cpp +++ b/src/ArduinoIoTCloudTCP.cpp @@ -166,6 +166,9 @@ int ArduinoIoTCloudTCP::begin(bool const enable_watchdog, String brokerAddress, #if defined(BOARD_HAS_ECCX08) _sslClient.setClient(_connection->getClient()); +#elif defined(ARDUINO_PORTENTA_C33) + _sslClient.setClient(_connection->getClient()); + _sslClient.setCACert(AIoTSSCert); #elif defined(BOARD_HAS_SE050) _sslClient.appendCustomCACert(AIoTSSCert); #elif defined(BOARD_ESP) diff --git a/src/ArduinoIoTCloudTCP.h b/src/ArduinoIoTCloudTCP.h index e8218c9e1..54b0d34f4 100644 --- a/src/ArduinoIoTCloudTCP.h +++ b/src/ArduinoIoTCloudTCP.h @@ -31,6 +31,9 @@ #include "tls/utility/CryptoUtil.h" #elif defined(BOARD_ESP) #include +#elif defined(ARDUINO_PORTENTA_C33) + #include "tls/utility/CryptoUtil.h" + #include #elif defined(BOARD_HAS_SE050) #include "tls/utility/CryptoUtil.h" #include @@ -146,6 +149,10 @@ class ArduinoIoTCloudTCP: public ArduinoIoTCloudClass #elif defined(BOARD_ESP) WiFiClientSecure _sslClient; String _password; + #elif defined(ARDUINO_PORTENTA_C33) + ArduinoIoTCloudCertClass _cert; + SSLClient _sslClient; + CryptoUtil _crypto; #elif defined(BOARD_HAS_SE050) ArduinoIoTCloudCertClass _cert; WiFiSSLSE050Client _sslClient; diff --git a/src/utility/time/TimeService.cpp b/src/utility/time/TimeService.cpp index a9536caa0..3cae3eca1 100644 --- a/src/utility/time/TimeService.cpp +++ b/src/utility/time/TimeService.cpp @@ -330,8 +330,9 @@ void TimeServiceClass::initRTC() stm32h7_initRTC(); #elif defined (ARDUINO_ARCH_ESP32) esp32_initRTC(); -#elif ARDUINO_ARCH_ESP8266 +#elif defined (ARDUINO_ARCH_ESP8266) esp8266_initRTC(); +#elif defined (ARDUINO_PORTENTA_C33) #else #error "RTC not available for this architecture" #endif @@ -347,8 +348,9 @@ void TimeServiceClass::setRTC(unsigned long time) stm32h7_setRTC(time); #elif defined (ARDUINO_ARCH_ESP32) esp32_setRTC(time); -#elif ARDUINO_ARCH_ESP8266 +#elif defined (ARDUINO_ARCH_ESP8266) esp8266_setRTC(time); +#elif defined (ARDUINO_PORTENTA_C33) #else #error "RTC not available for this architecture" #endif @@ -364,8 +366,9 @@ unsigned long TimeServiceClass::getRTC() return stm32h7_getRTC(); #elif defined (ARDUINO_ARCH_ESP32) return esp32_getRTC(); -#elif ARDUINO_ARCH_ESP8266 +#elif defined (ARDUINO_ARCH_ESP8266) return esp8266_getRTC(); +#elif defined (ARDUINO_PORTENTA_C33) #else #error "RTC not available for this architecture" #endif From d85a55c1181cf20576ee3eaf24dcfc81280f28f5 Mon Sep 17 00:00:00 2001 From: pennam Date: Mon, 12 Jun 2023 10:02:21 +0200 Subject: [PATCH 5/6] Portenta C33: Add RTC support --- src/utility/time/TimeService.cpp | 39 +++++++++++++++++++++++++++++--- 1 file changed, 36 insertions(+), 3 deletions(-) diff --git a/src/utility/time/TimeService.cpp b/src/utility/time/TimeService.cpp index 3cae3eca1..eeab3245d 100644 --- a/src/utility/time/TimeService.cpp +++ b/src/utility/time/TimeService.cpp @@ -38,6 +38,10 @@ #include "RTCMillis.h" #endif +#ifdef ARDUINO_ARCH_RENESAS + #include "RTC.h" +#endif + /************************************************************************************** * GLOBAL VARIABLES **************************************************************************************/ @@ -86,6 +90,12 @@ void esp8266_setRTC(unsigned long time); unsigned long esp8266_getRTC(); #endif +#ifdef ARDUINO_ARCH_RENESAS +void renesas_initRTC(); +void renesas_setRTC(unsigned long time); +unsigned long renesas_getRTC(); +#endif + /************************************************************************************** * CONSTANTS **************************************************************************************/ @@ -332,7 +342,8 @@ void TimeServiceClass::initRTC() esp32_initRTC(); #elif defined (ARDUINO_ARCH_ESP8266) esp8266_initRTC(); -#elif defined (ARDUINO_PORTENTA_C33) +#elif defined (ARDUINO_ARCH_RENESAS) + renesas_initRTC(); #else #error "RTC not available for this architecture" #endif @@ -350,7 +361,8 @@ void TimeServiceClass::setRTC(unsigned long time) esp32_setRTC(time); #elif defined (ARDUINO_ARCH_ESP8266) esp8266_setRTC(time); -#elif defined (ARDUINO_PORTENTA_C33) +#elif defined (ARDUINO_ARCH_RENESAS) + renesas_setRTC(time); #else #error "RTC not available for this architecture" #endif @@ -368,7 +380,8 @@ unsigned long TimeServiceClass::getRTC() return esp32_getRTC(); #elif defined (ARDUINO_ARCH_ESP8266) return esp8266_getRTC(); -#elif defined (ARDUINO_PORTENTA_C33) +#elif defined (ARDUINO_ARCH_RENESAS) + return renesas_getRTC(); #else #error "RTC not available for this architecture" #endif @@ -494,6 +507,26 @@ unsigned long esp8266_getRTC() } #endif +#ifdef ARDUINO_ARCH_RENESAS +void renesas_initRTC() +{ + RTC.begin(); +} + +void renesas_setRTC(unsigned long time) +{ + RTCTime t(time); + RTC.setTime(t); +} + +unsigned long renesas_getRTC() +{ + RTCTime t; + RTC.getTime(t); + return t.getUnixTime(); +} +#endif + /****************************************************************************** * EXTERN DEFINITION ******************************************************************************/ From 1b6b2a7abba9a266d737fba3500a50b5a8ae62d8 Mon Sep 17 00:00:00 2001 From: Martino Facchin Date: Thu, 22 Jun 2023 17:05:38 +0200 Subject: [PATCH 6/6] Release v1.11.2 --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index 3b15b8af5..a9a450042 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=ArduinoIoTCloud -version=1.11.1 +version=1.11.2 author=Arduino maintainer=Arduino sentence=This library allows connecting to the Arduino IoT Cloud service.