About I2C communication with EV3


I have successfully connected my EV3 and arduino through your connector and
EV3_I2C block.

I want to connect some I2C chips with the EV3. Many chips require at least 2-byte writing
(without termination) to program. However, the EV3_I2C block does not support the 2-byte writing.

Are there any block which enables the 2-byte writing to a I2C chip?



Hey KT, sorry for the slow response. It has been a long time since we wrote those blocks for EV3; the software is really poorly supported by LEGO and is really terrible compared to the old NXT blocks. Is there a way you could look at EV3dev project instead?


Thank you very much for the kind reply. I will check the EV3dev project.


I’m using EV3_I2C block to make communication with the PCF8574P chip (Expander I2C) and worked in parts … I put 8 LEDs to control the EV3_I2C block but when I send the value 255 to turn on all the LEDs only 7 LEDs are illuminated. I’m using the address 32 (decimal) to send the byte to the expander chip.

Regarding I2C reading can not in any way using the I2C Read 1 Byte mode.

Would you help me?


Hi Ebraim, I have your idem problem, but the problem is not the address, I’m using the address 56 but the output P7 don’t work, the led connect to the port P7 is always OFF. I connect the PCF8574A at the Arduino board and the problem there i’snt, all the 8 led works allright, I think the problem is into the block EV3. Somebody can help me and Ebraim? Tank’s. PS. I try to read 1 byte input but the pin P7 don’t work…


Hi, there is another related forum thread about the issues with sending values >127 from EV3 via the I2C block. I just posted an explanation and a workaround for it.
Have a look here: Problem if I send a value greater than 127 using the I2C block