This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Facing I2C issues while using arduino nano 33 ble and integrating with the MAX30205 temperature sensor, BME680 sensor, max30102 pulse oximeter sensor

Hello,

we were working on integrating arduino nano ble 33 with the 3 sensors, bme680, max30102, max30205.

when using arduino uno it is working well with the two sensors(max30102, max30205) in I2C and bme in SPI, it is working perfectly fine but when shifting to the arduino nano 33 ble sense, (nordic processor) some issues are observed but still the problem exists.

issues:

  1. both the sensors are not working simultaeneously. when i scanned the addresses, i am getting two address but not constant, one of the sensor address is disappearing and appearing, its not constant.
  2. when i have used three sensors in i2c interface mode, 3 sensors are not getting detected.

There is no problem with the sensors seperately i checked, working fine. but integration is not working in nano 33, same code is working in arduino uno.
using at 400khz, without pullup resistors.

why the sensors are not completely connected ? is there anything other than wire library i should use for nano 33 as it is nrf52840. Can you help in solving this issue.

Parents
  • Hi,

    What SDK are you using? 

    Have you tried probing the serial lines when using the arduino nano and compared it with when you use the arduino uno? What difference do you see? 

    regards

    Jared

  • Hi Jared,

    Thanks for your reply.

    I am using Arduino IDE(1.8.15) and library Arduino Mbed OS nano boards for BLE sense. I am using wire.h library for accessing I2C bus. should I use TWI library? 

    yes I have tried probing with a single sensor to the BLE and I have got the data line and clock properly, but when coming to two sensors integration it is failing to work simultaneously, I didnt find any data. unfortunately, I have not tried probing with UNO when working(I will check that). 

    But when i tried to find multiple sensors addresses using i2c address code, it is not giving both sensor addresses, only sometimes both the addresses are flashing but not constant.

  • Hi,

    yash44 said:
    I am using Arduino IDE(1.8.15) and library Arduino Mbed OS nano boards for BLE sense. I am using wire.h library for accessing I2C bus. should I use TWI library? 

    I'm limited to what support I can give you if you're not using our SDK or drivers.

    yash44 said:

    yes I have tried probing with a single sensor to the BLE and I have got the data line and clock properly, but when coming to two sensors integration it is failing to work simultaneously, I didnt find any data. unfortunately, I have not tried probing with UNO when working(I will check that). 

    But when i tried to find multiple sensors addresses using i2c address code, it is not giving both sensor addresses, only sometimes both the addresses are flashing but not constant.

    You need to verify preferably with a logical analyzer if the Master outputs the correct address, and next verify if the slaves responds correctly.  If the slave doesn't responds even though it's address is sent on the line then you know the problem relies somewhere there and vice versa. 

    regards

    Jared

  • Hi, 

    I have tried using arduino IDE as I am using Arduino NANO BLE Sense. Thank you for your help and I already tried using logic analyzer, I will try to debug again using logic analyzer with different test cases. I have one question, will NRF SDK works with arduino boards?

    Thanks,

    yash

  • Hi,

    The SDK does not require you to use a certain board, the only requirement is that you use a nordicsemi IC that is supported by the SDK such as the nRF52 series. If you're going to use a custom board or any other third-party board then you need to define a custom board file so that the pins are mapped correctly. 

    regards

    Jared 

Reply Children
No Data
Related