From c814f926b61a18e4e3820d7ba6bc3230f75f40bd Mon Sep 17 00:00:00 2001 From: Oliver Joos Date: Mon, 1 Jan 2024 16:07:26 +0100 Subject: [PATCH] rp2/boards: Add board definition for Waveshare RP2040-Zero. Signed-off-by: Oliver Joos --- .../boards/WAVESHARE_RP2040_ZERO/board.json | 19 ++++++++++++ .../rp2/boards/WAVESHARE_RP2040_ZERO/board.md | 6 ++++ .../WAVESHARE_RP2040_ZERO/mpconfigboard.cmake | 2 ++ .../WAVESHARE_RP2040_ZERO/mpconfigboard.h | 6 ++++ .../rp2/boards/WAVESHARE_RP2040_ZERO/pins.csv | 31 +++++++++++++++++++ 5 files changed, 64 insertions(+) create mode 100644 ports/rp2/boards/WAVESHARE_RP2040_ZERO/board.json create mode 100644 ports/rp2/boards/WAVESHARE_RP2040_ZERO/board.md 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/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 0000000000..48805956d6 --- /dev/null +++ b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/board.json @@ -0,0 +1,19 @@ +{ + "deploy": [ + "../deploy.md" + ], + "docs": "", + "features": [ + "Dual-core", + "External Flash", + "USB" + ], + "images": [ + "rp2040-zero.jpg" + ], + "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/board.md b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/board.md new file mode 100644 index 0000000000..901437eb81 --- /dev/null +++ b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/board.md @@ -0,0 +1,6 @@ +This board has 2 MiB of flash memory, of which 1.5 MiB can be used as a USB +drive for your own Python modules. + +The side pins are placed at a breadboard-friendly distance. Pin 16 is connected +to a Neopixel RGB LED. Pins 17-25 are connected to small soldering pads at the +bottom. 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 0000000000..16ea8b0113 --- /dev/null +++ b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigboard.cmake @@ -0,0 +1,2 @@ +# cmake file for RP2040-Zero board +set(PICO_BOARD "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 0000000000..99e251fbbe --- /dev/null +++ b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/mpconfigboard.h @@ -0,0 +1,6 @@ +// Board and hardware specific configuration +#define MICROPY_HW_BOARD_NAME "RP2040-Zero" +#define MICROPY_HW_FLASH_STORAGE_BYTES (1536 * 1024) + +// Enable USB Mass Storage with FatFS filesystem. +#define MICROPY_HW_USB_MSC (1) 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 0000000000..b1b410ab09 --- /dev/null +++ b/ports/rp2/boards/WAVESHARE_RP2040_ZERO/pins.csv @@ -0,0 +1,31 @@ +GP0,GPIO0 +GP1,GPIO1 +GP2,GPIO2 +GP3,GPIO3 +GP4,GPIO4 +GP5,GPIO5 +GP6,GPIO6 +GP7,GPIO7 +GP8,GPIO8 +GP9,GPIO9 +GP10,GPIO10 +GP11,GPIO11 +GP12,GPIO12 +GP13,GPIO13 +GP14,GPIO14 +GP15,GPIO15 +GP16,GPIO16 +GP17,GPIO17 +GP18,GPIO18 +GP19,GPIO19 +GP20,GPIO20 +GP21,GPIO21 +GP22,GPIO22 +GP23,GPIO23 +GP24,GPIO24 +GP25,GPIO25 +GP26,GPIO26 +GP27,GPIO27 +GP28,GPIO28 +GP29,GPIO29 +NEOPIXEL,GPIO16