Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Release 8.3.0 breaks my built on Metro-M4 #227

Open
RudolphRiedel opened this issue Jun 23, 2024 · 4 comments
Open

Release 8.3.0 breaks my built on Metro-M4 #227

RudolphRiedel opened this issue Jun 23, 2024 · 4 comments

Comments

@RudolphRiedel
Copy link

I just tried to build my Arduino example project:
https://github.com/RudolphRiedel/FT800-FT813/tree/5.x/examples/EVE_Test_Arduino_PlatformIO

And it builds for everything that is configured except adafruit_metro_m4.
Using platform = atmelsam@8.2.1 it builds again, so something in 8.3.0 broke it.

It might be the update of framework-arduino-samd-adafruit from 1.7.13 to "1.10716.0".
But it works fine for the two SAMD21 boards in the example that also list framework-arduino-samd-adafruit as dependancy.

It starts failing over Adafruit_TinyUSB_API.cpp
*** [.pio\build\adafruit_metro_m4\lib404\Adafruit_TinyUSB_Arduino\arduino\Adafruit_TinyUSB_API.cpp.o] Error 1
In file included from C:\Users\Ich.platformio\packages\framework-arduino-samd-adafruit\cores\arduino/Arduino.h:157,
from C:\Users\Ich.platformio\packages\framework-arduino-samd-adafruit\libraries\Adafruit_TinyUSB_Arduino\src\arduino\Adafruit_USBD_CDC.cpp:30:
C:\Users\Ich.platformio\packages\framework-arduino-samd-adafruit\cores\arduino/USB/USBCore.h:119:32: error: expected identifier before numeric constant
119 | #define MSC_SUBCLASS_SCSI 0x06
| ^~~~
c:\users\ich.platformio\packages\framework-arduino-samd-adafruit\libraries\adafruit_tinyusb_arduino\src\class/msc/msc.h:47:3: note: in expansion of macro 'MSC_SUBCLASS_SCSI'
47 | MSC_SUBCLASS_SCSI ///< SCSI transparent command set
| ^~~~~~~~~~~~~~~~~
C:\Users\Ich.platformio\packages\framework-arduino-samd-adafruit\cores\arduino/USB/USBCore.h:119:32: error: expected '}' before numeric constant
119 | #define MSC_SUBCLASS_SCSI 0x06

And I am not even using USB, or at least I am not trying to.

I found this: earlephilhower/arduino-pico#477
But it was resolved two years ago.
And yes, I am using SPI.

Adding the suggested lib_ldf_mode = chain+ to my platformio,ini worked for me and the example builds for all boards now, but the question really is - what broke this time and why?

@valeros
Copy link
Member

valeros commented Jun 24, 2024

Hi @RudolphRiedel. I'd recommend sticking to the chain+ mode which emulates Arduino IDE behavior. The reason why it happens is because the Adafruit Zero DMA has an optional include from the Adafruit TinyUSB library and hence makes PlatformIO think it's an implicit dependency.

@RudolphRiedel
Copy link
Author

Yes, I can build.
The question still is, what broke it after it was already fixed before?

@rcross-lc
Copy link

Also experiencing this, built fine before.

@Divide-And-Conquer
Copy link

I'm also suffering from this problem, the lib_ldf_mode = chain+ works, but I'd still like to see it fixed.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants