From 1b80aa9ce3d283e2fd8ebfd34f377c60c24217e0 Mon Sep 17 00:00:00 2001 From: Andrew Leech Date: Fri, 29 Apr 2022 15:43:18 +1000 Subject: [PATCH] rp2/boards/W5100S_EVB_PICO: Add Wiznet W5100S-EVB-Pico board. Signed-off-by: Andrew Leech --- ports/rp2/boards/W5100S_EVB_PICO/board.json | 20 ++++++++++++++++++ .../W5100S_EVB_PICO/mpconfigboard.cmake | 4 ++++ .../boards/W5100S_EVB_PICO/mpconfigboard.h | 21 +++++++++++++++++++ ports/rp2/boards/W5100S_EVB_PICO/readme.md | 15 +++++++++++++ 4 files changed, 60 insertions(+) create mode 100644 ports/rp2/boards/W5100S_EVB_PICO/board.json create mode 100644 ports/rp2/boards/W5100S_EVB_PICO/mpconfigboard.cmake create mode 100644 ports/rp2/boards/W5100S_EVB_PICO/mpconfigboard.h create mode 100644 ports/rp2/boards/W5100S_EVB_PICO/readme.md diff --git a/ports/rp2/boards/W5100S_EVB_PICO/board.json b/ports/rp2/boards/W5100S_EVB_PICO/board.json new file mode 100644 index 0000000000..4091b78433 --- /dev/null +++ b/ports/rp2/boards/W5100S_EVB_PICO/board.json @@ -0,0 +1,20 @@ +{ + "deploy": [ + "../deploy.md" + ], + "docs": "", + "features": [ + "Breadboard Friendly", + "Castellated Pads", + "Ethernet", + "Micro USB" + ], + "images": [ + "W5100S-EVB-Pico.jpg" + ], + "mcu": "rp2040", + "product": "Wiznet W5100S-EVB-Pico", + "thumbnail": "", + "url": "https://www.wiznet.io/product-item/w5100s-evb-pico/", + "vendor": "Wiznet" +} diff --git a/ports/rp2/boards/W5100S_EVB_PICO/mpconfigboard.cmake b/ports/rp2/boards/W5100S_EVB_PICO/mpconfigboard.cmake new file mode 100644 index 0000000000..fc5db6e4af --- /dev/null +++ b/ports/rp2/boards/W5100S_EVB_PICO/mpconfigboard.cmake @@ -0,0 +1,4 @@ +# cmake file for Wiznet W5100S-EVB-Pico. +set(PICO_BOARD pico) +set(MICROPY_PY_WIZNET5K W5100S) +set(MICROPY_PY_LWIP 1) diff --git a/ports/rp2/boards/W5100S_EVB_PICO/mpconfigboard.h b/ports/rp2/boards/W5100S_EVB_PICO/mpconfigboard.h new file mode 100644 index 0000000000..3816e40138 --- /dev/null +++ b/ports/rp2/boards/W5100S_EVB_PICO/mpconfigboard.h @@ -0,0 +1,21 @@ +// Board config for Wiznet W5100S-EVB-Pico. + +// Board and hardware specific configuration +#define MICROPY_HW_BOARD_NAME "W5100S-EVB-Pico" +#define MICROPY_HW_FLASH_STORAGE_BYTES (1408 * 1024) + +// Enable networking and sockets. +#define MICROPY_PY_NETWORK (1) +#define MICROPY_PY_USOCKET (1) +#define MICROPY_PY_USSL (1) + +// Wiznet HW config. +#define MICROPY_HW_WIZNET_SPI_ID (0) +#define MICROPY_HW_WIZNET_SPI_BAUDRATE (20 * 1000 * 1000) +#define MICROPY_HW_WIZNET_SPI_SCK (18) +#define MICROPY_HW_WIZNET_SPI_MOSI (19) +#define MICROPY_HW_WIZNET_SPI_MISO (16) +#define MICROPY_HW_WIZNET_PIN_CS (17) +#define MICROPY_HW_WIZNET_PIN_RST (20) +// Connecting the INTN pin enables RECV interrupt handling of incoming data. +#define MICROPY_HW_WIZNET_PIN_INTN (21) diff --git a/ports/rp2/boards/W5100S_EVB_PICO/readme.md b/ports/rp2/boards/W5100S_EVB_PICO/readme.md new file mode 100644 index 0000000000..991627e997 --- /dev/null +++ b/ports/rp2/boards/W5100S_EVB_PICO/readme.md @@ -0,0 +1,15 @@ +# Wiznet W5100S-EVB-Pico + +## Network Example + +To use network / socket based code, connect ethernet port to network with DHCP running: + +``` +>>> import network +>>> nic = network.WIZNET5K() +>>> nic.ifconfig() +('192.168.0.18', '255.255.255.0', '192.168.0.1', '8.8.8.8') +>>> nic.dhcp(True) +('192.168.0.10', '255.255.255.0', '192.168.0.1', '192.168.0.1') +``` +At this point standard network communications libraries should work.