[Answered] I2C and pull up resistors

User avatar
kolban
Posts: 1683
Joined: Mon Nov 16, 2015 4:43 pm
Location: Texas, USA

[Answered] I2C and pull up resistors

Postby kolban » Fri Oct 28, 2016 10:05 pm

My understanding is that when working with I2C, the bus is open drain meaning that the neither the master nor the slave will ever pull a line high ... but will instead pull it only low or open circuit. As such, there needs to be a default high which is commonly achieved with a 4.7KOhm resistor on the lines pulling them default high. In our ESP32 story, do we need explicit external pull up resistors or is this taken care of for us by configuring I2C or do we need to explicitly define the mapped pins as pulled-up ... or some other story.
Last edited by kolban on Sun Oct 30, 2016 5:55 am, edited 1 time in total.
Free book on ESP32 available here: https://leanpub.com/kolban-ESP32

ESP_Sprite
Posts: 9709
Joined: Thu Nov 26, 2015 4:08 am

Re: I2C and pull up resistors

Postby ESP_Sprite » Sat Oct 29, 2016 9:30 am

As far as I'm aware, you need external pull-up resistors to get any performance out of the I2C port. You could enable the internal pull-ups, but they are to weak to pull up the lines quickly enough.

Who is online

Users browsing this forum: No registered users and 134 guests