diff --git a/.github/workflows/build-rp2040.yml b/.github/workflows/build-rp2040.yml index a3091bd..5d19cec 100644 --- a/.github/workflows/build-rp2040.yml +++ b/.github/workflows/build-rp2040.yml @@ -30,9 +30,15 @@ jobs: PICO_BOARD=remapper cmake .. make remapper_dual_a cd .. + mkdir build-feather + cd build-feather + PICO_BOARD=feather_host cmake .. + make remapper + cd .. mkdir artifacts mv build/*.uf2 artifacts mv build-boards/remapper_dual_a.uf2 artifacts/remapper_board.uf2 + mv build-feather/remapper.uf2 artifacts/remapper_feather.uf2 working-directory: ./firmware - uses: actions/upload-artifact@v3 with: diff --git a/firmware/CMakeLists.txt b/firmware/CMakeLists.txt index 4bae9aa..e1620d3 100644 --- a/firmware/CMakeLists.txt +++ b/firmware/CMakeLists.txt @@ -79,9 +79,11 @@ add_executable(remapper src/interval_override.cc ) +if(PICO_BOARD STREQUAL "pico") target_compile_definitions(remapper PUBLIC PICO_DEFAULT_UART_TX_PIN=16) target_compile_definitions(remapper PUBLIC PICO_DEFAULT_UART_RX_PIN=17) target_compile_definitions(remapper PUBLIC PIO_USB_DP_PIN=0) +endif() target_include_directories(remapper PRIVATE src diff --git a/firmware/src/boards/feather_host.h b/firmware/src/boards/feather_host.h new file mode 100644 index 0000000..7513c7e --- /dev/null +++ b/firmware/src/boards/feather_host.h @@ -0,0 +1,60 @@ +// ----------------------------------------------------- +// NOTE: THIS HEADER IS ALSO INCLUDED BY ASSEMBLER SO +// SHOULD ONLY CONSIST OF PREPROCESSOR DIRECTIVES +// ----------------------------------------------------- + +#ifndef _BOARDS_FEATHER_HOST_H +#define _BOARDS_FEATHER_HOST_H + +#define FEATHER_HOST_BOARD + +// On some samples, the xosc can take longer to stabilize than is usual +#ifndef PICO_XOSC_STARTUP_DELAY_MULTIPLIER +#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 +#endif + +//------------- UART -------------// +#ifndef PICO_DEFAULT_UART +#define PICO_DEFAULT_UART 0 +#endif + +#ifndef PICO_DEFAULT_UART_TX_PIN +#define PICO_DEFAULT_UART_TX_PIN 0 +#endif + +#ifndef PICO_DEFAULT_UART_RX_PIN +#define PICO_DEFAULT_UART_RX_PIN 1 +#endif + +//------------- LED -------------// +#ifndef PICO_DEFAULT_LED_PIN +#define PICO_DEFAULT_LED_PIN 13 +#endif + +#ifndef PICO_DEFAULT_WS2812_PIN +#define PICO_DEFAULT_WS2812_PIN 21 +#endif + +// --- FLASH --- + +#define PICO_BOOT_STAGE2_CHOOSE_W25Q080 1 + +#ifndef PICO_FLASH_SPI_CLKDIV +#define PICO_FLASH_SPI_CLKDIV 2 +#endif + +#ifndef PICO_FLASH_SIZE_BYTES +#define PICO_FLASH_SIZE_BYTES (8 * 1024 * 1024) +#endif + +#ifndef PICO_RP2040_B0_SUPPORTED +#define PICO_RP2040_B0_SUPPORTED 0 +#endif + +// --- PIO USB --- + +#ifndef PIO_USB_DP_PIN +#define PIO_USB_DP_PIN 16 +#endif + +#endif