Connecting arduino and teensy with Qwiic Differential I2C Bus Extender

Hello,

I’m trying to connect an arduino (mega) and a distant teensy 3.2 with the Qwiic Differential I2C Bus Extender.

I’m using the slave_sender example (Wire library) on one side and the master-receiver on the other side.

When the mega and the teensy are close tegether and the Qwiic Differential I2C Bus Extender boards connected to each other with a short Qwiic cable, it’s working.

When The boards are connected with an ethernet cable it’s not working. The loop function stops when calling Wire.requestFrom(8, 6);

I’ve cut the VDDB and GND jumpers

Do I miss something?

Is the Wire library the good one ?

I can’t find examples of this kind of use.

I’ve tried with the master_writer and slave_receiver exemples of the wire library, same issue.

The curious is that there is a constant 2.06 V on DSDA+ and DSCL+ and a constant 2.9V at DSDA- and DSCL-

It’s not modulating.

Do I make a mistake by cutting the GND and VDDB jumpers ?

Hi patrick.

How are you powering the remote board? Any chance you can supply a diagram showing how everything is connected?

Dear TS-Chris,

The board are powered from the 5V of the teensy on one side and 5V of the arduino on the other side.

I cut the ground and VDDB on the boards. I cut the I2C jumper on one board.

I’ve tried with arduinos on both side and it works.

Actually I’ve changed the architecture of my projet and the teensy is now close to the arduino and I2C is working from the qwiic connector. I can’t change the wiring of my project for further tests. I can try later with an other Teensy if you have any ideas.

Best

I’ve tried with an arduino mega on a side and a nano every on the other side and it’s not working.

Same issue : it’s working with qwiic cable and boards close to each other but not with a one meter ethernet cable connected to the boards.

I’ve also tried to cut the VDD A-B jumper and provide a different power (same ground) for the board connected to the nano every but it changes nothing.

The only case that is working is with a mega on a side and a uno on the other side.

Is this board supposed to work with any device that can provide I2C ?

Photos or a diagram would be very helpful for me to see what’s going on here.

These were originally designed to supply power and data to a I2C slave from a I2C host some distance away. You might try that first just to make sure you have communication between boards.

What I would try first is to put both Arduino boards close together, (1 foot or less) and use wires (NOT the extenders) to connect GND, SDA and SCL between each board and make sure your code is actually passing data the way you are expecting it too.

If that works, then restore the jumpers on both boards to their defaults and then connect 3.3V, GND, SDA and SCL between each extender and your Arduino boards and plug in a known good 8 wire CAT5 cable between the two.