PlatformIO Community

BSEC 2.0 and BME688

I am trying to get the platformIO project to add BSEC2.0 to talk to BME688 via my Huzzah ESP32 board. I dont see this library yet. any one has experience integrating this library?


So, can you link to the library you’re referring to? The only result on Bosch’s github profile leads to a library with a max version of 1.6…

Thanks for the response…the 1.6 Version does not cover BME688. only the BSEC2.0 seems to.I can download the 2.0 BSEC library. but I dont know how to integrate it into the platformIO env.

Ask Bosch to update their repo. PlatformIO will mirror the changes on the library page if a new release becomes available.

Well anyways after completing a unneccesarily intrusive form…


(who doesn’t love software agreements) to just get the download link, I can say that the \examples\bsec2 in there is basically an updated version (2.0.100) of the original repo above (1.6.1480) but missing the PlatformIO-specific library.json and files.

Just add them back in, increase the version in the library.json and put the library folder in the lib/ folder of the project, and you should be good…

yes - I had to fill that annoying form :slight_smile: Thanks so much. you mean I just copy the library.json and from the previous repo and modify it to 2.1.100?

Hi -
I think the library is now in. in the build system, I can see it had complied all the items form the BSEC2.0. Thanks for the very timely help… really appreciate that.

However, I am having this annoying problem where the definitions in Keyword.txt are not being seen by the code. it complains for example ‘BME68x_I2C_ADDR_PRIMARY’ is not defined in scope. how do I make sure the code can see this? even though this is in the keywords.txt

What platformio.ini / target board are you using?

PlatformIO does not use the keyword.txt. It reads available functions / macros etc. from the headers of the library directly, like a proper IDE, not a syntax highlighter that the Arduino IDE is…

platform = espressif32
board = featheresp32
framework = Arduino
monitor_speed = 115200
lib_deps =
BSEC Software Library

this is what I am using. my preference was to use the ESP-IDF, but I did not have the lib there… that’s why I started looking into the BSEC Aurdino one… what would I need to do to make it work for the ESP-IDF framework?

so I did some more digging. some of the examples were copied from the 1.6 version was trying to run those… it seems to compile now. my bad! however, I would still like to see how I can write code using the ESP-IDF instead of Aurdino IDF.