EasyTransferI2C (I2c slave rxand I2c tx) Not working

New issue I modified the EasyTransferI2C library to work with Zephyr type boards to test I2C master/slave transfer.

When using the Q as the master and a Teensy 4.1 as slave the test sketches work, i.e., both blink successfully.

However when using the Q as the slave and teensy as the master the Q does seem to receive data from the T4.1.

EasyTransferI2C.zip (5.6 KB)

and before you ask I made sure the clocks matched.

Going to investigate more

Just tried easytransferI2c on the giga and it seems to be working without issues.

T4.1 is master and Arduino Giga is the slave.

So has to be issue with the Q

Do you have I2C devices working with the Q?
to be sure it is in the slave code, reducing the search for the cause.

Have you checked if there is an known issue with the Q as I2C slave on GitHub?

Last time I checked I2C was working with my I2C devices - checked with Sparkfun LidarLite and a couple of IMUs.

Yeah I didn't see any issues with I2C slave - but will probably post this one.

OK, sure post it, it can always be closed if a solution is found.
Post the link of the issue in this thread so the status can be tracked easily,
thanks

Was planning on it:
Arduino Q : I2C slave mode does not seem to be working properly. · Issue #363 · arduino/ArduinoCore-zephyr

Yeah! Very disappointing!!

UNO Q works well as Master with slave UNO R3; but, it does not respond as Slave to Master UNO R3. I have been struggling for an hour with the case!!! (I have level shifter between them.)

When the UNO Q is used as an I2C slave, it should be interrupted by incoming traffic from the master. To me, it seems that the MCU is not actually being interrupted. I tried enabling the global interrupt using __enable_irq(), but it did not help. Now, I would like to try enabling the local interrupt of the I2C peripheral, but I am not sure how to do it. I asked ChatGPT, and it suggested some HAL-type code, which, unfortunately, did not work.

Unfortunately you have to go through the zephyr layer which can be even more confusing

Doesn't surprise me from what I seen.

Ok All - Looks like there is a fix they just issued for the Q that resolves this issue:
Arduino Q : I2C slave mode does not seem to be working properly. · Issue #363 · arduino/ArduinoCore-zephyr

I tested it and it works.

Will be out officially in the next release - of course you can always build the core yourself which I do on a regular basis