From 6e337f6566bb303e202a20e12a3fb4b9520b883b Mon Sep 17 00:00:00 2001 From: Dominik Heidler Date: Wed, 5 Mar 2025 23:48:42 +0100 Subject: [PATCH] ports/rp2/boards: Add the WAVESHARE_RP2040_ZERO. Signed-off-by: Dominik Heidler --- .../boards/WAVESHARE_RP2040_ZERO/board.json | 19 +++++++++++ .../WAVESHARE_RP2040_ZERO/mpconfigboard.cmake | 1 + .../WAVESHARE_RP2040_ZERO/mpconfigboard.h | 13 ++++++++ .../mpconfigvariant.cmake | 6 ++++ .../rp2/boards/WAVESHARE_RP2040_ZERO/pins.csv | 32 +++++++++++++++++++ 5 files changed, 71 insertions(+) create mode 100644 ports/rp2/boards/WAVESHARE_RP2040_ZERO/board.json create mode 100644 ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigboard.cmake create mode 100644 ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigboard.h create mode 100644 ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigvariant.cmake create mode 100644 ports/rp2/boards/WAVESHARE_RP2040_ZERO/pins.csv diff --git a/ports/rp2/boards/WAVESHARE_RP2040_ZERO/board.json b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/board.json new file mode 100644 index 0000000000000..adb1133369b17 --- /dev/null +++ b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/board.json @@ -0,0 +1,19 @@ +{ + "deploy": [ + "../deploy.md" + ], + "docs": "", + "features": [ + "Dual-core", + "External Flash", + "RGB LED", + "USB-C" + ], + "images": [ + ], + "mcu": "rp2040", + "product": "RP2040-Zero", + "thumbnail": "", + "url": "https://www.waveshare.com/wiki/RP2040-Zero", + "vendor": "Waveshare" +} diff --git a/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigboard.cmake b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigboard.cmake new file mode 100644 index 0000000000000..ddfabb7d5e4c6 --- /dev/null +++ b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigboard.cmake @@ -0,0 +1 @@ +# cmake file for Waveshare RP2040-Zero diff --git a/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigboard.h b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigboard.h new file mode 100644 index 0000000000000..d1a80ff875ba3 --- /dev/null +++ b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigboard.h @@ -0,0 +1,13 @@ +// https://www.waveshare.com/wiki/RP2040-Zero + +#ifndef MICROPY_HW_BOARD_NAME +#define MICROPY_HW_BOARD_NAME "Waveshare RP2040-Zero" +#endif +#define MICROPY_HW_FLASH_STORAGE_BYTES (1408 * 1024) + +#define MICROPY_HW_USB_VID (0x16D0) +#define MICROPY_HW_USB_PID (0x08C7) + +// I2C0 (non-default) +#define MICROPY_HW_I2C0_SCL (4) +#define MICROPY_HW_I2C0_SDA (5) diff --git a/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigvariant.cmake b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigvariant.cmake new file mode 100644 index 0000000000000..4b28d29b15056 --- /dev/null +++ b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigvariant.cmake @@ -0,0 +1,6 @@ +set(PICO_BOARD "waveshare_rp2040_zero") + +# Override the MicroPython board name +list(APPEND MICROPY_DEF_BOARD + MICROPY_HW_BOARD_NAME="Waveshare RP2040-Zero" +) diff --git a/ports/rp2/boards/WAVESHARE_RP2040_ZERO/pins.csv b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/pins.csv new file mode 100644 index 0000000000000..a2925e0658bb1 --- /dev/null +++ b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/pins.csv @@ -0,0 +1,32 @@ +GP0,GPIO0 +GP1,GPIO1 +GP2,GPIO2 +GP3,GPIO3 +GP4,GPIO4 +GP5,GPIO5 +GP6,GPIO6 +GP7,GPIO7 +GP8,GPIO8 +GP8,GPIO8 +GP9,GPIO9 +GP10,GPIO10 +GP11,GPIO11 +GP12,GPIO12 +GP13,GPIO13 +GP14,GPIO14 +GP15,GPIO15 +LED,GPIO16 +GP17,GPIO17 +GP18,GPIO18 +GP19,GPIO19 +GP20,GPIO20 +GP21,GPIO21 +GP22,GPIO22 +GP23,GPIO23 +BOOT,GPIO23 +GP24,GPIO24 +GP25,GPIO25 +GP26,GPIO26 +GP27,GPIO27 +GP28,GPIO28 +GP29,GPIO29