Skip to content

Commit a34ce91

Browse files
committed
Initial: Basic support for Portenta C33
RTC support and OTA support missing
1 parent dc80f9e commit a34ce91

File tree

4 files changed

+17
-4
lines changed

4 files changed

+17
-4
lines changed

src/AIoTC_Config.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@
126126
#define HAS_TCP
127127
#endif
128128

129-
#if defined(ARDUINO_NICLA_VISION)
129+
#if defined(ARDUINO_NICLA_VISION) || defined(ARDUINO_PORTENTA_C33)
130130
#define BOARD_HAS_SE050
131131
#define HAS_TCP
132132
#endif

src/ArduinoIoTCloudTCP.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,9 @@ int ArduinoIoTCloudTCP::begin(bool const enable_watchdog, String brokerAddress,
166166

167167
#if defined(BOARD_HAS_ECCX08)
168168
_sslClient.setClient(_connection->getClient());
169+
#elif defined(ARDUINO_PORTENTA_C33)
170+
_sslClient.setClient(_connection->getClient());
171+
_sslClient.setCACert(AIoTSSCert);
169172
#elif defined(BOARD_HAS_SE050)
170173
_sslClient.appendCustomCACert(AIoTSSCert);
171174
#elif defined(BOARD_ESP)

src/ArduinoIoTCloudTCP.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@
3131
#include "tls/utility/CryptoUtil.h"
3232
#elif defined(BOARD_ESP)
3333
#include <WiFiClientSecure.h>
34+
#elif defined(ARDUINO_PORTENTA_C33)
35+
#include "tls/utility/CryptoUtil.h"
36+
#include <SSLClient.h>
3437
#elif defined(BOARD_HAS_SE050)
3538
#include "tls/utility/CryptoUtil.h"
3639
#include <WiFiSSLSE050Client.h>
@@ -146,6 +149,10 @@ class ArduinoIoTCloudTCP: public ArduinoIoTCloudClass
146149
#elif defined(BOARD_ESP)
147150
WiFiClientSecure _sslClient;
148151
String _password;
152+
#elif defined(ARDUINO_PORTENTA_C33)
153+
ArduinoIoTCloudCertClass _cert;
154+
SSLClient _sslClient;
155+
CryptoUtil _crypto;
149156
#elif defined(BOARD_HAS_SE050)
150157
ArduinoIoTCloudCertClass _cert;
151158
WiFiSSLSE050Client _sslClient;

src/utility/time/TimeService.cpp

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -330,8 +330,9 @@ void TimeServiceClass::initRTC()
330330
stm32h7_initRTC();
331331
#elif defined (ARDUINO_ARCH_ESP32)
332332
esp32_initRTC();
333-
#elif ARDUINO_ARCH_ESP8266
333+
#elif defined (ARDUINO_ARCH_ESP8266)
334334
esp8266_initRTC();
335+
#elif defined (ARDUINO_PORTENTA_C33)
335336
#else
336337
#error "RTC not available for this architecture"
337338
#endif
@@ -347,8 +348,9 @@ void TimeServiceClass::setRTC(unsigned long time)
347348
stm32h7_setRTC(time);
348349
#elif defined (ARDUINO_ARCH_ESP32)
349350
esp32_setRTC(time);
350-
#elif ARDUINO_ARCH_ESP8266
351+
#elif defined (ARDUINO_ARCH_ESP8266)
351352
esp8266_setRTC(time);
353+
#elif defined (ARDUINO_PORTENTA_C33)
352354
#else
353355
#error "RTC not available for this architecture"
354356
#endif
@@ -364,8 +366,9 @@ unsigned long TimeServiceClass::getRTC()
364366
return stm32h7_getRTC();
365367
#elif defined (ARDUINO_ARCH_ESP32)
366368
return esp32_getRTC();
367-
#elif ARDUINO_ARCH_ESP8266
369+
#elif defined (ARDUINO_ARCH_ESP8266)
368370
return esp8266_getRTC();
371+
#elif defined (ARDUINO_PORTENTA_C33)
369372
#else
370373
#error "RTC not available for this architecture"
371374
#endif

0 commit comments

Comments
 (0)