Skip to content

Commit

Permalink
PPP2: Add wireless.
Browse files Browse the repository at this point in the history
  • Loading branch information
Gadgetoid committed Sep 25, 2024
1 parent e23f640 commit 49bf38e
Show file tree
Hide file tree
Showing 5 changed files with 46 additions and 10 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/micropython.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:
types: [created]

env:
MICROPYTHON_VERSION: feature/psram
MICROPYTHON_VERSION: feature/spicy-wifi
MICROPYTHON_FLAVOUR: pimoroni
PIMORONI_PICO_VERSION: feature/sdk-2.0.0

Expand Down
42 changes: 37 additions & 5 deletions micropython/board/PIMORONI_PICO_PLUS2/mpconfigboard.h
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
// Board and hardware specific configuration
#ifndef MICROPY_HW_BOARD_NAME
// Might be defined by mpconfigvariant.cmake
#define MICROPY_HW_BOARD_NAME "Pimoroni Pico Plus 2"
#endif
#define MICROPY_HW_FLASH_STORAGE_BYTES (PICO_FLASH_SIZE_BYTES - (2 * 1024 * 1024))

#define MICROPY_HW_PSRAM_CS_PIN PIMORONI_PICO_PLUS2_PSRAM_CS_PIN

// Might be defined in mpconfigvariant_PSRAM.cmake
// or mpconfigvariant_PPP.cmake
// or mpconfigvariant_WIRELESS.cmake
#if defined(MICROPY_HW_ENABLE_PSRAM)

#define MICROPY_GC_SPLIT_HEAP (1)
Expand All @@ -28,6 +24,35 @@

#define MICROPY_HW_PIN_EXT_COUNT CYW43_WL_GPIO_COUNT

#if defined(CYW43_PIN_WL_DYNAMIC)

#define CYW43_PIO_CLOCK_DIV_DYNAMIC (1)

// Defined by pimoroni_pico_plus2w_rp2350.h
//#define CYW43_DEFAULT_PIN_WL_HOST_WAKE SPICE_RESET_MOSI_PIN
//#define CYW43_DEFAULT_PIN_WL_REG_ON SPICE_TX_MISO_PIN
#define CYW43_DEFAULT_PIN_WL_DATA_OUT CYW43_DEFAULT_PIN_WL_HOST_WAKE
#define CYW43_DEFAULT_PIN_WL_DATA_IN CYW43_DEFAULT_PIN_WL_HOST_WAKE
#define CYW43_DEFAULT_PIN_WL_CLOCK 29u
#define CYW43_DEFAULT_PIN_WL_CS 25u

/* SPICE alternative
#define CYW43_DEFAULT_PIN_WL_HOST_WAKE SPICE_RESET_MOSI_PIN
#define CYW43_DEFAULT_PIN_WL_REG_ON SPICE_TX_MISO_PIN
#define CYW43_DEFAULT_PIN_WL_DATA_OUT SPICE_RESET_MOSI_PIN
#define CYW43_DEFAULT_PIN_WL_DATA_IN SPICE_RESET_MOSI_PIN
#define CYW43_DEFAULT_PIN_WL_CLOCK SPICE_NETLIGHT_SCK_PIN
#define CYW43_DEFAULT_PIN_WL_CS SPICE_RX_CS_PIN
*/

// Slow down the wireless clock, since we'll be running
// comms through wiring spaghetti!
#define CYW43_PIO_CLOCK_DIV_INT 50
#define CYW43_PIO_CLOCK_DIV_FRAC 0
#define CYW43_SPI_PROGRAM_NAME spi_gap0_sample1

#endif

#endif

// Might be defined in mpconfigvariant_PPP.cmake
Expand All @@ -36,4 +61,11 @@

// Nothing to do here?

#endif

// If a variant is not used, define a fallback board name
#ifndef MICROPY_HW_BOARD_NAME

#define MICROPY_HW_BOARD_NAME "Pimoroni Pico Plus 2"

#endif
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ list(APPEND MICROPY_DEF_BOARD
"MICROPY_HW_BOARD_NAME=\"Pimoroni Pico Plus 2 (Wireless + PSRAM)\""
"MICROPY_HW_ENABLE_PSRAM=1"
"MICROPY_PY_NETWORK=1"
"CYW43_PIN_WL_DYNAMIC=1"
"MICROPY_PY_NETWORK_PPP_LWIP=1"
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,12 +32,12 @@
#define PIMORONI_PICO_PLUS2_PSRAM_CS_PIN 47

// -- CYW43 Wireless --
#ifndef CYW43_PIN_WL_HOST_WAKE
#define CYW43_PIN_WL_HOST_WAKE 24
#ifndef CYW43_DEFAULT_PIN_WL_HOST_WAKE
#define CYW43_DEFAULT_PIN_WL_HOST_WAKE 24
#endif

#ifndef CYW43_PIN_WL_REG_ON
#define CYW43_PIN_WL_REG_ON 23
#ifndef CYW43_DEFAULT_PIN_WL_REG_ON
#define CYW43_DEFAULT_PIN_WL_REG_ON 23
#endif

#ifndef CYW43_WL_GPIO_COUNT
Expand Down
3 changes: 3 additions & 0 deletions micropython/board/manifest_pico2.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
MODULES_PY = "../../../pimoroni-pico/micropython/modules_py"

# SD Card
require("sdcard")

freeze(MODULES_PY, "gfx_pack.py")

freeze(MODULES_PY, "pimoroni.py")
Expand Down

0 comments on commit 49bf38e

Please sign in to comment.