RP2040 Core Component

Contains startup code, crash handling and additional RP2040-specific support code.

Configuration variables

PICO_BOARD

default: pico

Select development board in use. List available boards with make list-boards.

The SDK defines various useful bits of information in a board header file, such as the default LED pin, how much flash memory it has, etc. Use make board-info to list these values.

If using custom hardware, select none and provide definitions as required.

ENABLE_BOOTSEL

default: 1 for debug, 0 for release builds

This setting is provided to make it easy to re-program RP2040 boards during development. When enabled, Sming monitors the BOOTSEL button and restartS in boot mode if pressed.

default: 1

The Pico-W board requires a ~140K (compressed) firmware BLOB which by default is linked into the application image.

This can be wasteful when using OTA as the firmware must be contained in all application images.

Setting this value to ‘0’ will omit firmware from the image, and instead load it from a partition called ‘cyw43_fw’. This partition can be added to the standard map using the ‘cyw43_fw’ HWCONFIG_OPT setting:

make LINK_CYW43_FIRMWARE=0 HWCONFIG_OPT=cyw43_fw

This is not the default setting since the additional partition must be managed by the end application.

PICO_DEBUG

default: 0

Set to 1 to enable additional debug output from compiled Pico SDK library. Shows things like WiFi firmware version.

References

Used by

Environment Variables

  • CYW43_FIRMWARE

  • CYW43_PIN_WL_HOST_WAKE

  • CYW43_PIN_WL_REG_ON

  • CYW43_USES_VSYS_PIN

  • CYW43_WL_GPIO_COUNT

  • CYW43_WL_GPIO_LED_PIN

  • CYW43_WL_GPIO_VBUS_PIN

  • DISABLE_NETWORK

  • DISABLE_WIFI

  • ENABLE_BOOTSEL

  • LINK_CYW43_FIRMWARE

  • PICO_BOARD

  • PICO_BOOT_STAGE2_CHOOSE_W25Q080

  • PICO_DEBUG

  • PICO_DEFAULT_I2C

  • PICO_DEFAULT_I2C_SCL_PIN

  • PICO_DEFAULT_I2C_SDA_PIN

  • PICO_DEFAULT_SPI

  • PICO_DEFAULT_SPI_CSN_PIN

  • PICO_DEFAULT_SPI_RX_PIN

  • PICO_DEFAULT_SPI_SCK_PIN

  • PICO_DEFAULT_SPI_TX_PIN

  • PICO_DEFAULT_UART

  • PICO_DEFAULT_UART_RX_PIN

  • PICO_DEFAULT_UART_TX_PIN

  • PICO_FLASH_SIZE_BYTES

  • PICO_FLASH_SPI_CLKDIV

  • PICO_RP2040_B0_SUPPORTED

  • PICO_RP2040_B1_SUPPORTED

  • PICO_VSYS_PIN

  • RASPBERRYPI_PICO_W

SoC support

  • rp2040

Submodule: pico-sdk