Closed gl4eqen closed 4 years ago
Thanks for the spectacular detail here. Nothing jumps out at me with your sample code above. The closest thing to your F4 that I've used this crate on is an STM32F042K6. I do have an STM32F4 dev board here, so I'll can see if I can reproduce.
I'm unfortunately in the middle of a time-critical project and may not be able to look at this for a couple of weeks.
Ok, thanks for the response :)
https://github.com/stm32-rs/stm32f4xx-hal/pull/169
Problem was within HAL implementation for STM32F4XX. STOP condition was not generated for i2c write calls via embedded_hal::blocked::i2c::Write::write()
. Fix is already on master, we can expect release soon. Closing.
Hey! I love your library, looks overall pretty clean. However, I'm struggling to spin it up. I created a simple program (very similar to your example) running on the STM32F407. Everything works fine (temperature and pressure is calculated correctly) with bmp280_ehal driver as BME280 is backward compatible (somewhat) to BMP280. It's downside is that it lacks humidity support.
When trying to use your library, it panics when it tries to make a measurement (
bme280::BME280::measure()
) - after query to device and applying compensations, pressure appears to be equal 0, so condition is not fulfilled and panic is raised hereSample source code
There's a zipped Logic Saleae I2C transmission capture dump provided in attachment that might contain some helpful info regarding issue: i2c_communication.zip
If you were to just point me to the right direction, I'd be very grateful. Thank you for your help!