ESPHome - problems building for RP2040 rpipicow

Hello,

I’ve been using ESPHome and a couple of Raspberry Pi Pico Ws for a year or so via a Docker hosted ESPHome Dashboard. It’s worked very well.

In the last few days I’ve been unable to building any of my code.

Basically anything I build fails. See below for the errors. This is with Docker ESPHome hosted Dashboard 2024.9.1. I’ve tried a couple of earlier versions with the same.
I’ve also installed ESPHome 2024.9.1 in a python venv and get the same building with “esphome compile script”.
Interestingly if I change the platform to esp32 I can build.

Is anyone else seeing the same building for Raspberry PI Pico W?

Thanks,

Steve

Compiling .pioenvs/picow-6/FrameworkArduino/wiring_shift.cpp.o
Archiving .pioenvs/picow-6/libFrameworkArduino.a
Linking .pioenvs/picow-6/firmware.elf
/config/.esphome/platformio/packages/toolchain-rp2040-earlephilhower/bin/../lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/bin/ld: /config/.esphome/platformio/packages/toolchain-rp2040-earlephilhower/bin/../lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/lib/thumb/libc.a(libc_a-findfp.o): in function `std':
/workdir/repo/newlib/newlib/libc/stdio/findfp.c:93:(.text+0xda): undefined reference to `__retarget_lock_init_recursive'
/config/.esphome/platformio/packages/toolchain-rp2040-earlephilhower/bin/../lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/bin/ld: /workdir/repo/newlib/newlib/libc/stdio/findfp.c:93:(.text+0x124): undefined reference to `__retarget_lock_init_recursive'
/config/.esphome/platformio/packages/toolchain-rp2040-earlephilhower/bin/../lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/bin/ld: /workdir/repo/newlib/newlib/libc/stdio/findfp.c:93:(.text+0x17c): undefined reference to `__retarget_lock_init_recursive'
/config/.esphome/platformio/packages/toolchain-rp2040-earlephilhower/bin/../lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/bin/ld: /config/.esphome/platformio/packages/toolchain-rp2040-earlephilhower/bin/../lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/lib/thumb/libc.a(libc_a-findfp.o): in function `__sfp':
/workdir/repo/newlib/newlib/libc/stdio/findfp.c:201:(.text+0x1ea): undefined reference to `__retarget_lock_init_recursive'
collect2: error: ld returned 1 exit status
*** [.pioenvs/picow-6/firmware.elf] Error 1
1 Like

I’m having the same issue when running the build component test via GitHub actions on a new component I’m working on. Not sure what’s causing the issue yet but If I find anything out I’ll post here. Wanted you to know you’re not alone.

1 Like

I’ve been using a Raspberry Pi Pico W for a year or so fine and after the 2024.9.1 update I can’t compile either. I get the same error messages.

Hopefully this is fixed soon.

I’ve opened an issue on the HomeAssistant github issue tracker here.

Thanks for confirming it isn’t just me!

Looking through the referenced GitHub issue, I am now able to build using:

rp2040:
  board: rpipicow
  framework:
    platform_version: https://github.com/maxgerhardt/platform-raspberrypi.git#5e87ae34ca025274df25b3303e9e9cb6c120123c

Cheers,

Steve