OpenLog Artemis failing to identify ISM330DHCX IMU

I recently purchased an OpenLog Artemis and several ISM330DHCX IMUs with the hopes that I’d be able to set up an array to measure relative accelerations at different parts of an assembly, but the Artemis seems to be having trouble detecting the additional IMUs. The Arduino Serial Log displays this message on start up:

Artemis OpenLog v2.4
Logging to: dataLog00006.TXT
Finding the next available log file.
This could take a long time if the SD card contains many existing log files.
Logging to: serialLog00000.TXT
SD card online
Data logging online
Serial logging online
IMU online
Identifying Qwiic Muxes...
Identifying Qwiic Devices...
Multiplexers found. Scanning sub nets...
Known I2C address but device failed identification at address 0x6B
Unknown device at address (0x7E)(Mux:0x70 Port:0)
Known I2C address but device failed identification at address 0x6B
Unknown device at address (0x7E)(Mux:0x70 Port:7)
Autodetect complete
Multiplexer online at address 0x70
Content-Type: text/csv

It then just begins printing the output from the Artemis’s inbuilt IMU.

Any suggestions on how to fix this? I’m not really sure where to begin with this.

Share a photo of how it’s hooked up

TS-Russell:
Share a photo of how it’s hooked up

[https://i.postimg.cc/N0hqxBHC/PXL-20230 ... 946566.jpg](upload://r04fCrnOUZx3zc2wvF8UxTaLPcK.jpeg)

I’ve also tried taking out the Mux and just connecting one of the IMUs directly, but it still generates the same sort of error.

I’m suspecting the i2c pull-up resistance is the issue; head here https://learn.sparkfun.com/tutorials/qw … e-overview and scroll to the ‘Jumpers’ section, and follow the instructions to disable the i2c pull ups on the ism330(s)…(you can start with just one if you like) cut the traces between the i2c pads and re-test

Those qwiic cables look pretty long (which adds resistance), if you have some shorter ones you can test with that might help bit too…

I would probably recommend cutting both sensors’ pull-ups, leaving the mux’s (it has some too! they work the same way) and see if they are appearing after (directly wire one sensor with it i2c disabled, test, then re-add the mux/2nd sensor, etc)

TS-Russell:
I’m suspecting the i2c pull-up resistance is the issue; head here https://learn.sparkfun.com/tutorials/qw … e-overview and scroll to the ‘Jumpers’ section, and follow the instructions to disable the i2c pull ups on the ism330(s)…(you can start with just one if you like) cut the traces between the i2c pads and re-test

Those qwiic cables look pretty long (which adds resistance), if you have some shorter ones you can test with that might help bit too…

I would probably recommend cutting both sensors’ pull-ups, leaving the mux’s (it has some too! they work the same way) and see if they are appearing after (directly wire one sensor with it i2c disabled, test, then re-add the mux/2nd sensor, etc)

I've cut one then both of the I2C jumper bridges on one of the sensors and disconnected the other, but I'm still getting the same error, unfortunately. I'd try shorter cables, but I don't have any, and honestly, I need the length for the final application.

Can you think of anything else that might help?

I have exactly the same problem. I tried shorter cables, and still the same. When I hook only one sensor, it is able to read the data but when I use the Mux, it only prints the resistance. I followed the exact tutorial for the sequence David said, most applications will need long cables. I appreciate any insight. :roll: