Cut which I2C jumpers / keep which pull up resistors on several Qwiic daisy chains

Alright I will try it and report back here in a few days.

(Long Story short: swapping the ESP32 for the Teensy did not solve the LED strip timeout issues possibly related to clock stretching, but made it worse)

OK it took me some time to get the Teensy working, but now I can share results:

Quick summarize: I ran into the problem that as soon as I added the Qwiic LED strip to the system, it became unstable. Sometimes the LEDs did not update correctly, and after a few minutes of usage “hardware I2C ack” errors startet to popup in the console. Changing clock speeds or other solutions suggested here did not help (better soldering, shorter cables etc.)

@paulvha suggested to use a Teensy processor instead of the ESP32 as the Teensy supports clock strechting which the ESP32 does not. It was suggested that the LED strip uses clock stretching and therefore the hardware timeouts occur.

So now I have swapped the ESP32 to the Teensy - but unfortunately, the problem persists. The same issues happen, the only difference is that this time I do not get random “hardware I2C ack” errors that get more over time until the board crashes - with the Teensy, the board crashes immediately after a few minutes of usage. If it crashes, there is nothing that continues to work on the Qwiic bus. Only a power cycle allows restart (the RST button on the Micromod Board does not do anything on the Teensy, but thats probably another story).

Anyways. If I remove the LED strip, everything so far works fine.

So maybe I am just doomed to not use LED lighting in the project if I stay with the Qwiic / Sparkfun ecosystem… :frowning:

(As for the suggestion to use Softwire, I still have to look into this but at the moment I need to go forward, so leave the LED strip aside..)

Have you tried one of the examples of the LED ? If that works add other devices. Maybe there is another conflict.

Yes I have, and I am pretty sure the conflict starts as soon as I add both the BNO086 IMU and the LED strip together. When I leave one of them out, the other one runs smooth.

I haven’t tested that with the Teensy but with the ESP32 it was like that.

If I find time today, I’d like to try and see what happens if I do not use all 10 but just 1 LED, maybe that easens the load on the I2C bus enough so it will work.

The IMU is a must-have. If I won’t get LED strip to work, as alternative I thought about adding a second Qwiic button that is not interactable by the user but it also has a nice single LED that can be controlled; the Qwiic button LED worked flawless so far.

Using only 1 LED instead of all 10 did not help either.

The entire setup crashes after a few minutes into play, starting with the usual error behaviour (a few wrong color flashes or colors, then crash).