Hello,
I'm trying to use the Arduino BNO055 shield with PCA10040.
This should be quite easy....but it doesn't work: I can't get any acknoledgement. Arduino use 5V pins, so there is an i²c level converter, I removed and bypassed it, not working better.
I tried the twi scan, and can find a mma7660 directly, but not the BNO055.
Here is the digital analysis, I checked on a scope and integrity seems fine (I can't take screenshot).
I'm quite lost. I don't know if it's on the shield side, some config I didn't see...
here is the schematic of the board:
static void twi_config(void) { uint32_t err_code; nrf_drv_twi_config_t const config = { .scl = ARDUINO_SCL_PIN, .sda = ARDUINO_SDA_PIN, .frequency = NRF_DRV_TWI_FREQ_100K, .interrupt_priority = APP_IRQ_PRIORITY_LOWEST, .clear_bus_init = false, .hold_bus_uninit = false }; err_code = nrf_drv_twi_init(&twi, &config,NULL,NULL); nrf_drv_twi_enable(&twi); APP_ERROR_CHECK(err_code); }
This is the working arduino library (on an arduino mega, just for a test):
github.com/.../BNO055
And of course the datasheet:
https://ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BNO055-DS000.pdf
and I2c protocol description from page 90
Any idea? I'm really lost.