Olimex Support Forum

Microcontrollers => ESP32 => Topic started by: espethuser on November 28, 2020, 10:26:14 PM

Title: I2C with ESP32-POE
Post by: espethuser on November 28, 2020, 10:26:14 PM
I'm using the ESP32-POE with ethernet, both for power and communication. I'm struggling a bit for free I/O pins, so taking the Olimex advice:

Quote from: LubOlimex on June 24, 2019, 11:24:16 AMIf you need more GPIO pins consider either using additional GPIO expander board over I2C/SPI/UART

I bought an MCP23008. But I'm a bit confused which pins I should use it with. This chap (https://community.home-assistant.io/t/working-ethernet-thermometer-using-the-olimex-esp-poe-iso-board/175371) seems to have used the ESP32-POE-ISO with both ethernet and I2C, but when I look at the I2C pins, 16 seems to be used by both EMAC_CLK_OUT_180 and EMAC_RX_ER so I don't really understand how that's working successfully for him.

Guidance would be really appreciated, thank you!
Title: Re: I2C with ESP32-POE
Post by: LubOlimex on November 30, 2020, 09:48:01 AM
Pins 13 and 16 are alright. Don't forget the GND. We have published examples of ESP32-POE with I2C modules at the Arduino software section here:

https://github.com/OLIMEX/ESP32-POE/tree/master/SOFTWARE/ARDUINO

MOD-BME280 uses I2C:

https://github.com/OLIMEX/ESP32-POE/blob/master/SOFTWARE/ARDUINO/ESP32_PoE_MOD_BME280/ESP32_PoE_MOD_BME280.ino

MOD-IO uses I2C:

https://github.com/OLIMEX/ESP32-POE/blob/master/SOFTWARE/ARDUINO/ESP32_PoE_WebServer_MOD_IO/ESP32_PoE_WebServer_MOD_IO.ino

there are few others there too.
Title: Re: I2C with ESP32-POE
Post by: espethuser on December 10, 2020, 04:52:55 PM
Quote from: LubOlimex on November 30, 2020, 09:48:01 AMPins 13 and 16 are alright.

Thank you I'm confused how pin 16 is usable when it is used by both emac_clk_out_180 AND emac_rx_er? Just don't understand enough! :-)
Title: Re: I2C with ESP32-POE
Post by: LubOlimex on December 15, 2020, 09:57:38 AM
I think you are confusing ESP32 pin #16 and GPIO #16 which is ESP32 pin #27.

The Arduino code doesn't care about ESP32 pin #; only about GPIO#.
Title: Re: I2C with ESP32-POE
Post by: espethuser on March 09, 2023, 02:38:13 PM
Are you sure I'm confusing my pins??

Here the ESP32-POE clearly shows that GPIO pin 16 is used by both emac_clk_out_180 AND emac_rx_er?

Quote from: LubOlimex on November 30, 2020, 09:48:01 AMPin 13 [is] alright.

GPIO Pin 13 is pulled up to 3v??

This board sure is hard to work with! :-)
Title: Re: I2C with ESP32-POE
Post by: LubOlimex on March 10, 2023, 04:56:22 PM
Better download and use the schematic export to track these. Here:

https://github.com/OLIMEX/ESP32-POE/blob/master/HARDWARE/ESP32-PoE-hardware-revision-K/ESP32-PoE_Rev_K.pdf

Yes, both GPI)16 and GPIO13 are pulled up. This is for I2C compatibility sake. You can pull them down or remove the resistor that connects them to 3.3V.