The following worked just fine for me…
[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
monitor_speed = 9600
lib_deps =
paulstoffregen/Time
adafruit/Adafruit SSD1306
lbernstone/Tone32
In other words, I told PlatformIO to manage the libraries itself, and it did just fine. If you encounter the fatal error: Adafruit_SPIDevice.h: No such file or directory
error… try adding lib_ldf_mode = chain+
or lib_ldf_mode = deep+
to the platformio.ini
and see if that resolves it. It sometimes fails due to how Adafruit coded that particular include, and PlatformIO needs to work harder to figure out what they are doing.
You are probably also having issues due to the version of BusIO you are using… 0.0.2??? Really? This is what your dependency graph should have looked like…
Scanning dependencies...
Dependency Graph
|-- <Time> 1.6.0
|-- <Adafruit SSD1306> 2.4.0
| |-- <Adafruit GFX Library> 1.10.0
| | |-- <Adafruit BusIO> 1.4.1
| | | |-- <SPI> 1.0
| | | |-- <Wire> 1.0.1
| | |-- <Wire> 1.0.1
| | |-- <SPI> 1.0
| |-- <SPI> 1.0
| |-- <Wire> 1.0.1
|-- <Tone32> 1.0.0
|-- <Adafruit GFX Library> 1.10.0
| |-- <Adafruit BusIO> 1.4.1
| | |-- <SPI> 1.0
| | |-- <Wire> 1.0.1
| |-- <Wire> 1.0.1
| |-- <SPI> 1.0
|-- <Adafruit BusIO> 1.4.1
| |-- <SPI> 1.0
| |-- <Wire> 1.0.1
|-- <Wire> 1.0.1
Building in release mode