diff --git a/dev/bme280/bme280.c b/dev/bme280/bme280.c index 3c3e76047..43bf76185 100644 --- a/dev/bme280/bme280.c +++ b/dev/bme280/bme280.c @@ -159,6 +159,7 @@ bme280_h_overscale1024(int32_t uh) uint8_t bme280_init(uint8_t mode) { + uint16_t i; uint8_t buf[26]; bme280_arch_i2c_init(); @@ -170,7 +171,10 @@ bme280_init(uint8_t mode) } bme280_arch_i2c_write_mem(BME280_ADDR, BME280_CNTL_RESET, 0xB6); - clock_delay_usec(BME280_MAX_WAIT); + + for(i = 0; i < BME280_MAX_WAIT; i++) { + clock_delay_usec(1000); + } memset(buf, 0, sizeof(buf)); diff --git a/dev/bme280/bme280.h b/dev/bme280/bme280.h index 215d7553d..10b3ad6ac 100644 --- a/dev/bme280/bme280.h +++ b/dev/bme280/bme280.h @@ -94,7 +94,8 @@ void bme280_read(uint8_t mode); #define BME280_MODE_INDOOR_NAVIGATION 3 #define BME280_MODE_GAMING 4 -#define BME280_MAX_WAIT 300000 /* ms. Forced mode max wait */ +#define BME280_MAX_WAIT 300 /* ms. Forced mode max wait */ + struct { int32_t t_overscale100; diff --git a/platform/avr-rss2/Makefile.avr-rss2 b/platform/avr-rss2/Makefile.avr-rss2 index 2655b8b4a..c0162aeb2 100644 --- a/platform/avr-rss2/Makefile.avr-rss2 +++ b/platform/avr-rss2/Makefile.avr-rss2 @@ -10,6 +10,7 @@ CONTIKI_TARGET_SOURCEFILES += temp-sensor.c CONTIKI_TARGET_SOURCEFILES += enc28j60_avr.c CONTIKI_TARGET_SOURCEFILES += co2_sa_kxx-sensor.c +CONTIKI_TARGET_SOURCEFILES += bme280-arch.c CONTIKIAVR=$(CONTIKI)/cpu/avr CONTIKIBOARD=.