Bosch Sensortec Community

    Showing results for 
    Search instead for 
    Did you mean: 

    BME688 BSEC2 Raspberry pi

    BME688 BSEC2 Raspberry pi



    I connected a BME688 sensor (on a pi3g breakout board) via breadboard to a raspberry pi 4. I can read all sensor values (non BSEC) but can't access the BSEC values e.g. IAQ.

    get_bsec_data() returns an error „AttributeError: ‚bme68x.BME68X‘ object has no Attribute ‚get_bsec_data‘". 

    I think the BSEC2 library was not installed correctly . Can I install this library manually?

    Any advice is welcome! Thank's for your help! 

    7 REPLIES 7

    Community Moderator
    Community Moderator

    Hello Carlos19,

    Do you mean you had migrated BME688 sensor driver to raspberry pi 4 and could get all sensor values (non BSEC)? If yes, could we know what sensor driver you used?
    As you mentioned you couldn't access the BSEC values e.g. IAQ, could we know more detailed SW information you used?

    Hello BSTRobin,

    thank’s for your reply.

    I think I solved half of my problems concerning the sensor and BSEC.

    Just to make sure we have the same understanding:

    I connected the pi3g breakout board with BME688 sensor via a breadboard to the raspberry pi. I did a clean install of the pi3g Bosch bme68x-python-library and now can access values with get_bsec_data(). I used the pi3g library for the sensor ( and the BSEC2 library from Bosch (integrated during install).

    The first initial install was done without BSEC, the second install with the BSEC library somehow didn’t install BSEC properly.The new clean install solved this problem.

    Now since I can read BSEC values I noticed that IAQ has a constant value of 25. Also other BSEC values seem to be static (e.g. co2_equivalent = 500, breath_voc_equivalent = 0.4999999..). I collected values for over 30 minutes without any changes. The non-BSEC values seem to be correct.

    Is there any way to speed up the calibration process – I think this process is responsible for not updating bsec values. And is there a way to store the calibration information and use it when the sensor gets powered up?

    I use a python-script to read values and write them to a mysql database.

    Thank’s again for your help!

    Hey there,

    i think i am having exactly the same problem. 

    Can you maybe help me out, by what you mean with "clean" installation? 

    I also followed the instructions in the (, i downloaded the BSEC 2.x Software and unzipped it into the folder, and installed it. 

    I also can read the non BSEC data ( get_data() ), but i do get the same error when trying to get some BSEC information.

    I also think there is something wrong with the installation, but i don't get it.


    Thanks in Advance


    I installed everything from scratch. New pi OS + new library from pi3g for BME688.
    I think I had some libraries installed which caused the problems.

    I followed the instructions for installation (pi3g) and after the new installation everything
    workes fine now.