samd/boards/ADAFRUIT_METRO_M4_EXPRESS: Add Metro M4 Express Airlift.

The board files can be used for both Adafruit Metro M4 variants.  The Wifi
support is in progress.
This commit is contained in:
robert-hh 2023-04-11 08:40:02 +02:00 committed by Damien George
parent 20fd22edad
commit c3f031afac
4 changed files with 135 additions and 0 deletions

View File

@ -0,0 +1,27 @@
{
"deploy": [
"../deploy.md"
],
"docs": "",
"features": [
"Micro USB",
"ADC",
"DAC",
"RGB LED",
"QSPI Flash",
"WiFi",
"BLE",
"JLink"
],
"images": [
"metro_m4_express_airlift.jpg"
],
"mcu": "samd51",
"variants": {
"wlan": "WLAN without SSL support"
},
"product": "Metro M4 Express Airlift",
"thumbnail": "",
"url": "https://www.adafruit.com/product/4000",
"vendor": "Adafruit"
}

View File

@ -0,0 +1,30 @@
#define MICROPY_HW_BOARD_NAME "Metro M4 Express Airlift"
#define MICROPY_HW_MCU_NAME "SAMD51J19A"
#define MICROPY_HW_XOSC32K (1)
#define MICROPY_HW_QSPIFLASH GD25Q16C
// defines for WLAN
#define MICROPY_HW_WIFI_SPI_ID (2)
#define MICROPY_HW_WIFI_SPI_BAUDRATE (8000000)
#define MICROPY_HW_WIFI_SPI_SCK (13)
#define MICROPY_HW_WIFI_SPI_MOSI (12)
#define MICROPY_HW_WIFI_SPI_MISO (14)
#define MICROPY_HW_NINA_ACK (36)
#define MICROPY_HW_NINA_GPIO1 (15)
#define MICROPY_HW_NINA_RESET (37)
// #define MICROPY_HW_NINA_GPIO0 (33)
// defines for BLE
#define MICROPY_PY_BLUETOOTH_NINAW10 (1)
#define MICROPY_HW_BLE_UART_ID (0)
#define MICROPY_HW_BLE_UART_BAUDRATE (115200)
#define MICROPY_HW_BLE_UART_TX (4)
#define MICROPY_HW_BLE_UART_RX (7)
#define MICROPY_HW_NINA_RTS (12)
#define MICROPY_HW_NINA_CTS (36)

View File

@ -0,0 +1,12 @@
MCU_SERIES = SAMD51
CMSIS_MCU = SAMD51J19A
LD_FILES = boards/samd51x19a.ld sections.ld
TEXT0 = 0x4000
# MicroPython settings
MICROPY_VFS_LFS1 ?= 1
MICROPY_PY_NETWORK ?= 1
MICROPY_PY_NETWORK_NINAW10 ?= 1
BOARD_VARIANTS += "wlan"

View File

@ -0,0 +1,66 @@
# Pin rows contain Pin number and pin name.
# Pin rows start with PIN_
# If the pin name is omitted, the pin number is added as name.
# Empty lines and lines not starting with PIN_ are ignored
PIN_PA02,A0
PIN_PA05,A1
PIN_PA06,A2
PIN_PB00,A3
PIN_PB08,A4
PIN_PB09,A5
PIN_PA03,AREF
PIN_PA23,D0
PIN_PA22,D1
PIN_PB17,D2
PIN_PB16,D3
PIN_PB13,D4
PIN_PB14,D5
PIN_PB15,D6
PIN_PB12,D7
PIN_PA21,D8
PIN_PA20,D9
PIN_PA18,D10
PIN_PA19,D11
PIN_PA17,D12
PIN_PA16,D13
PIN_PB02,SDA
PIN_PB03,SCL
PIN_PA13,SCK
PIN_PA12,MOSI
PIN_PA14,MISO
PIN_PB22,NEOPIXEL
PIN_PB06,RXLED
PIN_PB07,TXLED
# Airlift
PIN_PB05,ESP_RESET
PIN_PB04,ESP_BUSY
PIN_PA15,ESP_CS
PIN_PB01,ESP_GPIO0
PIN_PA07,ESP_RX
PIN_PA04,ESP_TX
PIN_PB23,ESP_RTS
# QSPI flash
PIN_PA08,FLASH_MOSI
PIN_PA09,FLASH_MISO
PIN_PA10,FLASH_WP
PIN_PA11,FLASH_HOLD
PIN_PB10,FLASH_SCK
PIN_PB11,FLASH_CS
# USB
PIN_PA24,USB_DM
PIN_PA25,USB_DP
PIN_PA26,USB_SOF
PIN_PA17,USB_HOSTEN
# JLink
PIN_PA30,SWCLK
PIN_PA31,SWDIO
PIN_PB30,SWO
1 # Pin rows contain Pin number and pin name.
2 # Pin rows start with PIN_
3 # If the pin name is omitted, the pin number is added as name.
4 # Empty lines and lines not starting with PIN_ are ignored
5 PIN_PA02,A0
6 PIN_PA05,A1
7 PIN_PA06,A2
8 PIN_PB00,A3
9 PIN_PB08,A4
10 PIN_PB09,A5
11 PIN_PA03,AREF
12 PIN_PA23,D0
13 PIN_PA22,D1
14 PIN_PB17,D2
15 PIN_PB16,D3
16 PIN_PB13,D4
17 PIN_PB14,D5
18 PIN_PB15,D6
19 PIN_PB12,D7
20 PIN_PA21,D8
21 PIN_PA20,D9
22 PIN_PA18,D10
23 PIN_PA19,D11
24 PIN_PA17,D12
25 PIN_PA16,D13
26 PIN_PB02,SDA
27 PIN_PB03,SCL
28 PIN_PA13,SCK
29 PIN_PA12,MOSI
30 PIN_PA14,MISO
31 PIN_PB22,NEOPIXEL
32 PIN_PB06,RXLED
33 PIN_PB07,TXLED
34 # Airlift
35 PIN_PB05,ESP_RESET
36 PIN_PB04,ESP_BUSY
37 PIN_PA15,ESP_CS
38 PIN_PB01,ESP_GPIO0
39 PIN_PA07,ESP_RX
40 PIN_PA04,ESP_TX
41 PIN_PB23,ESP_RTS
42 # QSPI flash
43 PIN_PA08,FLASH_MOSI
44 PIN_PA09,FLASH_MISO
45 PIN_PA10,FLASH_WP
46 PIN_PA11,FLASH_HOLD
47 PIN_PB10,FLASH_SCK
48 PIN_PB11,FLASH_CS
49 # USB
50 PIN_PA24,USB_DM
51 PIN_PA25,USB_DP
52 PIN_PA26,USB_SOF
53 PIN_PA17,USB_HOSTEN
54 # JLink
55 PIN_PA30,SWCLK
56 PIN_PA31,SWDIO
57 PIN_PB30,SWO