06-04-2019 02:20 AM - edited 06-04-2019 05:51 PM
Hey there,
since Arduino 1.8.9 and BSEC 1.4.7.3 is out for a month i thought i give it a shoot to see what improvements being made.
Downloaded the BSEC from the mainpage and followed the workaround procedures listed on github, everything worked well for the very basic (library)examples. But the bsec_iot_example (and ultimately my custom made sketch, which is in production mode on a lower BSEC version) throws an error during linking.
After a deeper look at compiler.c.elf.extra_flags and compiler.libraries.ldflags i realized that no linker argument for libalgobsec is passed. No wonder:
If you have already used the previous example code and hack guide, remove the linker flag -libalgobsec in the platform.txt file
So, at least with the standalone example you will need the linker flag compiler.c.elf.libs .... -lalgobsec to link the parts without exiting.
What is the reason? The structure?
Solved! Go to Solution.
06-09-2019 04:59 AM
Hi bosched,
Please check the connection of SDO(MISO) pin when connected over I2C. It cannot be left floating. Connect it either to VDD or GND. Connecting to GND provides the primary address 0x76. Additionally, the
Wire.begin(); //TwoWire::begin
function is no longer called in the BSEC abstracted class. Instead, it has to be called in
void setup() { }
06-09-2019 05:18 PM - edited 06-09-2019 05:48 PM
I'm not sure if i'm following you here.
1) Indeed SDO was'nt connected to anything, yet also wasn't connected in previous setups running flawlessly. What could be a result not connecting SDO to VCC/Ground?
I came up with the solution (posted) by comparing the old bme680_defs.h with the new one.
1.4.7.x
#define BME680_I2C_ADDR_PRIMARY UINT8_C(0x77) #define BME680_I2C_ADDR_SECONDARY UINT8_C(0x76)
1.4.7.3
#define BME680_I2C_ADDR_PRIMARY UINT8_C(0x76) #define BME680_I2C_ADDR_SECONDARY UINT8_C(0x77)
So, better reverting to 1.4.7.3 notation and connecting SDO to Ground or is it negligible?
2) Wire.begin() is called in the setup section. What indicates that it's not being called this way?
06-09-2019 05:40 PM
But it's also possible that i read some guide for the previous setup that made me change the adresses in 1.4.7.x. I couldn't say.