Skip to content
This repository was archived by the owner on Feb 4, 2023. It is now read-only.

Commit 8e611f9

Browse files
authored
v1.3.0 to add support to Mbed RP2040-based boards
### Releases v1.3.0 1. Add support to RP2040-based boards, such as **Nano_RP2040_Connect, RASPBERRY_PI_PICO, ADAFRUIT_FEATHER_RP2040 and GENERIC_RP2040**, using [**Arduino-mbed RP2040** core](https://github.com/arduino/ArduinoCore-mbed). 2. Fix bug.
1 parent 753c359 commit 8e611f9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+881
-241
lines changed

CONTRIBUTING.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ If you don't find anything, please [open a new issue](https://github.com/khoih-p
1515
Please ensure to specify the following:
1616

1717
* Arduino IDE version (e.g. 1.8.13) or Platform.io version
18-
* `SAMD` Core Version (e.g. Arduino SAMD core v1.8.11, Adafruit SAMD core v1.6.8, Seeed Studio SAMD v1.8.1)
18+
* `SAMD` Core Version (e.g. Arduino SAMD core v1.8.11, Adafruit SAMD core v1.7.2, Seeed Studio SAMD v1.8.1)
1919
* Contextual information (e.g. what you were trying to achieve)
2020
* Simplest possible steps to reproduce
2121
* Anything that might be relevant in your opinion, such as:
@@ -29,7 +29,7 @@ Please ensure to specify the following:
2929
Arduino IDE version: 1.8.13
3030
Arduino SAMD Core Version 1.8.11
3131
OS: Ubuntu 20.04 LTS
32-
Linux xy-Inspiron-3593 5.4.0-72-generic #80-Ubuntu SMP Mon Apr 12 17:35:00 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
32+
Linux xy-Inspiron-3593 5.4.0-73-generic #82-Ubuntu SMP Wed Apr 14 17:39:42 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
3333
3434
Context:
3535
I encountered an endless loop while trying to connect to Local WiFi.

README.md

+137-44
Large diffs are not rendered by default.

examples/AdvancedWebServer/defines.h

+29-2
Original file line numberDiff line numberDiff line change
@@ -331,10 +331,37 @@
331331

332332
#define EspSerial Serial1
333333

334-
#elif ( defined(ARDUINO_RASPBERRY_PI_PICO) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) || defined(ARDUINO_GENERIC_RP2040) )
334+
#elif ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
335+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
335336

336337
#warning RASPBERRY_PI_PICO board selected
337-
#define BOARD_TYPE "RASPBERRY_PI_PICO"
338+
339+
#if defined(ARDUINO_ARCH_MBED)
340+
341+
#warning Using ARDUINO_ARCH_MBED
342+
343+
#if ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
344+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
345+
// Only undef known BOARD_NAME to use better one
346+
#undef BOARD_NAME
347+
#endif
348+
349+
#if defined(ARDUINO_RASPBERRY_PI_PICO)
350+
#define BOARD_NAME "MBED RASPBERRY_PI_PICO"
351+
#elif defined(ARDUINO_ADAFRUIT_FEATHER_RP2040)
352+
#define BOARD_NAME "MBED ADAFRUIT_FEATHER_RP2040"
353+
#elif defined(ARDUINO_GENERIC_RP2040)
354+
#define BOARD_NAME "MBED GENERIC_RP2040"
355+
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
356+
#define BOARD_NAME "MBED NANO_RP2040_CONNECT"
357+
#else
358+
// Use default BOARD_NAME if exists
359+
#if !defined(BOARD_NAME)
360+
#define BOARD_NAME "MBED Unknown RP2040"
361+
#endif
362+
#endif
363+
364+
#endif
338365

339366
#define EspSerial Serial1
340367

examples/AdvancedWebServer_STM32/defines.h

+33
Original file line numberDiff line numberDiff line change
@@ -305,6 +305,39 @@
305305
#define BOARD_TYPE "STM32 Unknown"
306306
#endif
307307

308+
#elif ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
309+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
310+
311+
#warning RASPBERRY_PI_PICO board selected
312+
313+
#if defined(ARDUINO_ARCH_MBED)
314+
315+
#warning Using ARDUINO_ARCH_MBED
316+
317+
#if ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
318+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
319+
// Only undef known BOARD_NAME to use better one
320+
#undef BOARD_NAME
321+
#endif
322+
323+
#if defined(ARDUINO_RASPBERRY_PI_PICO)
324+
#define BOARD_NAME "MBED RASPBERRY_PI_PICO"
325+
#elif defined(ARDUINO_ADAFRUIT_FEATHER_RP2040)
326+
#define BOARD_NAME "MBED ADAFRUIT_FEATHER_RP2040"
327+
#elif defined(ARDUINO_GENERIC_RP2040)
328+
#define BOARD_NAME "MBED GENERIC_RP2040"
329+
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
330+
#define BOARD_NAME "MBED NANO_RP2040_CONNECT"
331+
#else
332+
// Use default BOARD_NAME if exists
333+
#if !defined(BOARD_NAME)
334+
#define BOARD_NAME "MBED Unknown RP2040"
335+
#endif
336+
#endif
337+
338+
#endif
339+
340+
#define EspSerial Serial1
308341
#else
309342
// For Mega
310343
define EspSerial Serial3

examples/ConnectWPA/defines.h

+30-3
Original file line numberDiff line numberDiff line change
@@ -331,12 +331,39 @@
331331

332332
#define EspSerial Serial1
333333

334-
#elif ( defined(ARDUINO_RASPBERRY_PI_PICO) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) || defined(ARDUINO_GENERIC_RP2040) )
334+
#elif ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
335+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
335336

336337
#warning RASPBERRY_PI_PICO board selected
337-
#define BOARD_TYPE "RASPBERRY_PI_PICO"
338+
339+
#if defined(ARDUINO_ARCH_MBED)
340+
341+
#warning Using ARDUINO_ARCH_MBED
342+
343+
#if ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
344+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
345+
// Only undef known BOARD_NAME to use better one
346+
#undef BOARD_NAME
347+
#endif
348+
349+
#if defined(ARDUINO_RASPBERRY_PI_PICO)
350+
#define BOARD_NAME "MBED RASPBERRY_PI_PICO"
351+
#elif defined(ARDUINO_ADAFRUIT_FEATHER_RP2040)
352+
#define BOARD_NAME "MBED ADAFRUIT_FEATHER_RP2040"
353+
#elif defined(ARDUINO_GENERIC_RP2040)
354+
#define BOARD_NAME "MBED GENERIC_RP2040"
355+
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
356+
#define BOARD_NAME "MBED NANO_RP2040_CONNECT"
357+
#else
358+
// Use default BOARD_NAME if exists
359+
#if !defined(BOARD_NAME)
360+
#define BOARD_NAME "MBED Unknown RP2040"
361+
#endif
362+
#endif
363+
364+
#endif
338365

339-
#define EspSerial Serial1
366+
#define EspSerial Serial1
340367

341368
#elif (ESP_AT_USE_AVR)
342369

examples/HelloServer/defines.h

+30-3
Original file line numberDiff line numberDiff line change
@@ -331,12 +331,39 @@
331331

332332
#define EspSerial Serial1
333333

334-
#elif ( defined(ARDUINO_RASPBERRY_PI_PICO) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) || defined(ARDUINO_GENERIC_RP2040) )
334+
#elif ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
335+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
335336

336337
#warning RASPBERRY_PI_PICO board selected
337-
#define BOARD_TYPE "RASPBERRY_PI_PICO"
338+
339+
#if defined(ARDUINO_ARCH_MBED)
340+
341+
#warning Using ARDUINO_ARCH_MBED
342+
343+
#if ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
344+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
345+
// Only undef known BOARD_NAME to use better one
346+
#undef BOARD_NAME
347+
#endif
348+
349+
#if defined(ARDUINO_RASPBERRY_PI_PICO)
350+
#define BOARD_NAME "MBED RASPBERRY_PI_PICO"
351+
#elif defined(ARDUINO_ADAFRUIT_FEATHER_RP2040)
352+
#define BOARD_NAME "MBED ADAFRUIT_FEATHER_RP2040"
353+
#elif defined(ARDUINO_GENERIC_RP2040)
354+
#define BOARD_NAME "MBED GENERIC_RP2040"
355+
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
356+
#define BOARD_NAME "MBED NANO_RP2040_CONNECT"
357+
#else
358+
// Use default BOARD_NAME if exists
359+
#if !defined(BOARD_NAME)
360+
#define BOARD_NAME "MBED Unknown RP2040"
361+
#endif
362+
#endif
363+
364+
#endif
338365

339-
#define EspSerial Serial1
366+
#define EspSerial Serial1
340367

341368
#elif (ESP_AT_USE_AVR)
342369

examples/HelloServer2/defines.h

+30-3
Original file line numberDiff line numberDiff line change
@@ -331,12 +331,39 @@
331331

332332
#define EspSerial Serial1
333333

334-
#elif ( defined(ARDUINO_RASPBERRY_PI_PICO) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) || defined(ARDUINO_GENERIC_RP2040) )
334+
#elif ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
335+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
335336

336337
#warning RASPBERRY_PI_PICO board selected
337-
#define BOARD_TYPE "RASPBERRY_PI_PICO"
338+
339+
#if defined(ARDUINO_ARCH_MBED)
340+
341+
#warning Using ARDUINO_ARCH_MBED
342+
343+
#if ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
344+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
345+
// Only undef known BOARD_NAME to use better one
346+
#undef BOARD_NAME
347+
#endif
348+
349+
#if defined(ARDUINO_RASPBERRY_PI_PICO)
350+
#define BOARD_NAME "MBED RASPBERRY_PI_PICO"
351+
#elif defined(ARDUINO_ADAFRUIT_FEATHER_RP2040)
352+
#define BOARD_NAME "MBED ADAFRUIT_FEATHER_RP2040"
353+
#elif defined(ARDUINO_GENERIC_RP2040)
354+
#define BOARD_NAME "MBED GENERIC_RP2040"
355+
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
356+
#define BOARD_NAME "MBED NANO_RP2040_CONNECT"
357+
#else
358+
// Use default BOARD_NAME if exists
359+
#if !defined(BOARD_NAME)
360+
#define BOARD_NAME "MBED Unknown RP2040"
361+
#endif
362+
#endif
338363

339-
#define EspSerial Serial1
364+
#endif
365+
366+
#define EspSerial Serial1
340367

341368
#elif (ESP_AT_USE_AVR)
342369

examples/HttpBasicAuth/defines.h

+30-3
Original file line numberDiff line numberDiff line change
@@ -331,12 +331,39 @@
331331

332332
#define EspSerial Serial1
333333

334-
#elif ( defined(ARDUINO_RASPBERRY_PI_PICO) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) || defined(ARDUINO_GENERIC_RP2040) )
334+
#elif ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
335+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
335336

336337
#warning RASPBERRY_PI_PICO board selected
337-
#define BOARD_TYPE "RASPBERRY_PI_PICO"
338+
339+
#if defined(ARDUINO_ARCH_MBED)
340+
341+
#warning Using ARDUINO_ARCH_MBED
342+
343+
#if ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
344+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
345+
// Only undef known BOARD_NAME to use better one
346+
#undef BOARD_NAME
347+
#endif
348+
349+
#if defined(ARDUINO_RASPBERRY_PI_PICO)
350+
#define BOARD_NAME "MBED RASPBERRY_PI_PICO"
351+
#elif defined(ARDUINO_ADAFRUIT_FEATHER_RP2040)
352+
#define BOARD_NAME "MBED ADAFRUIT_FEATHER_RP2040"
353+
#elif defined(ARDUINO_GENERIC_RP2040)
354+
#define BOARD_NAME "MBED GENERIC_RP2040"
355+
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
356+
#define BOARD_NAME "MBED NANO_RP2040_CONNECT"
357+
#else
358+
// Use default BOARD_NAME if exists
359+
#if !defined(BOARD_NAME)
360+
#define BOARD_NAME "MBED Unknown RP2040"
361+
#endif
362+
#endif
363+
364+
#endif
338365

339-
#define EspSerial Serial1
366+
#define EspSerial Serial1
340367

341368
#elif (ESP_AT_USE_AVR)
342369

examples/MQTTClient_Auth/defines.h

+30-3
Original file line numberDiff line numberDiff line change
@@ -331,12 +331,39 @@
331331

332332
#define EspSerial Serial1
333333

334-
#elif ( defined(ARDUINO_RASPBERRY_PI_PICO) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) || defined(ARDUINO_GENERIC_RP2040) )
334+
#elif ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
335+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
335336

336337
#warning RASPBERRY_PI_PICO board selected
337-
#define BOARD_TYPE "RASPBERRY_PI_PICO"
338+
339+
#if defined(ARDUINO_ARCH_MBED)
340+
341+
#warning Using ARDUINO_ARCH_MBED
342+
343+
#if ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
344+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
345+
// Only undef known BOARD_NAME to use better one
346+
#undef BOARD_NAME
347+
#endif
348+
349+
#if defined(ARDUINO_RASPBERRY_PI_PICO)
350+
#define BOARD_NAME "MBED RASPBERRY_PI_PICO"
351+
#elif defined(ARDUINO_ADAFRUIT_FEATHER_RP2040)
352+
#define BOARD_NAME "MBED ADAFRUIT_FEATHER_RP2040"
353+
#elif defined(ARDUINO_GENERIC_RP2040)
354+
#define BOARD_NAME "MBED GENERIC_RP2040"
355+
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
356+
#define BOARD_NAME "MBED NANO_RP2040_CONNECT"
357+
#else
358+
// Use default BOARD_NAME if exists
359+
#if !defined(BOARD_NAME)
360+
#define BOARD_NAME "MBED Unknown RP2040"
361+
#endif
362+
#endif
363+
364+
#endif
338365

339-
#define EspSerial Serial1
366+
#define EspSerial Serial1
340367

341368
#elif (ESP_AT_USE_AVR)
342369

examples/MQTTClient_Basic/defines.h

+30-3
Original file line numberDiff line numberDiff line change
@@ -331,12 +331,39 @@
331331

332332
#define EspSerial Serial1
333333

334-
#elif ( defined(ARDUINO_RASPBERRY_PI_PICO) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) || defined(ARDUINO_GENERIC_RP2040) )
334+
#elif ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
335+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
335336

336337
#warning RASPBERRY_PI_PICO board selected
337-
#define BOARD_TYPE "RASPBERRY_PI_PICO"
338+
339+
#if defined(ARDUINO_ARCH_MBED)
340+
341+
#warning Using ARDUINO_ARCH_MBED
342+
343+
#if ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
344+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
345+
// Only undef known BOARD_NAME to use better one
346+
#undef BOARD_NAME
347+
#endif
348+
349+
#if defined(ARDUINO_RASPBERRY_PI_PICO)
350+
#define BOARD_NAME "MBED RASPBERRY_PI_PICO"
351+
#elif defined(ARDUINO_ADAFRUIT_FEATHER_RP2040)
352+
#define BOARD_NAME "MBED ADAFRUIT_FEATHER_RP2040"
353+
#elif defined(ARDUINO_GENERIC_RP2040)
354+
#define BOARD_NAME "MBED GENERIC_RP2040"
355+
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
356+
#define BOARD_NAME "MBED NANO_RP2040_CONNECT"
357+
#else
358+
// Use default BOARD_NAME if exists
359+
#if !defined(BOARD_NAME)
360+
#define BOARD_NAME "MBED Unknown RP2040"
361+
#endif
362+
#endif
363+
364+
#endif
338365

339-
#define EspSerial Serial1
366+
#define EspSerial Serial1
340367

341368
#elif (ESP_AT_USE_AVR)
342369

examples/MQTT_ThingStream/defines.h

+30-3
Original file line numberDiff line numberDiff line change
@@ -331,12 +331,39 @@
331331

332332
#define EspSerial Serial1
333333

334-
#elif ( defined(ARDUINO_RASPBERRY_PI_PICO) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) || defined(ARDUINO_GENERIC_RP2040) )
334+
#elif ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_ARCH_RP2040) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
335+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
335336

336337
#warning RASPBERRY_PI_PICO board selected
337-
#define BOARD_TYPE "RASPBERRY_PI_PICO"
338+
339+
#if defined(ARDUINO_ARCH_MBED)
340+
341+
#warning Using ARDUINO_ARCH_MBED
342+
343+
#if ( defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_RASPBERRY_PI_PICO) || \
344+
defined(ARDUINO_GENERIC_RP2040) || defined(ARDUINO_ADAFRUIT_FEATHER_RP2040) )
345+
// Only undef known BOARD_NAME to use better one
346+
#undef BOARD_NAME
347+
#endif
348+
349+
#if defined(ARDUINO_RASPBERRY_PI_PICO)
350+
#define BOARD_NAME "MBED RASPBERRY_PI_PICO"
351+
#elif defined(ARDUINO_ADAFRUIT_FEATHER_RP2040)
352+
#define BOARD_NAME "MBED ADAFRUIT_FEATHER_RP2040"
353+
#elif defined(ARDUINO_GENERIC_RP2040)
354+
#define BOARD_NAME "MBED GENERIC_RP2040"
355+
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
356+
#define BOARD_NAME "MBED NANO_RP2040_CONNECT"
357+
#else
358+
// Use default BOARD_NAME if exists
359+
#if !defined(BOARD_NAME)
360+
#define BOARD_NAME "MBED Unknown RP2040"
361+
#endif
362+
#endif
363+
364+
#endif
338365

339-
#define EspSerial Serial1
366+
#define EspSerial Serial1
340367

341368
#elif (ESP_AT_USE_AVR)
342369

0 commit comments

Comments
 (0)