If and When Do I2C Pull-Up Values Matter?

Ғылым және технология

Unravel the mystery behind picking I2C pull-up resistor values! Discover why certain values work, the rise time calculations, and how to find I2C bus capacitance. Bald Engineer James guides you through selecting the correct resistor. James shows examples of resistors that are too big (Arduino internal pull-ups) and the correct value. Take advantage of these tips on ensuring compliance with the I2C spec. Ready to become a pull-up resistor pro?
Check out the full episode blog on the element14 Community here: bit.ly/3wGkcjF
Engage with the element14 presents team on the element14 Community - suggest builds, find project files and behind the scenes video: bit.ly/3tmdewv
Visit the element14 Community for more great activities and free hardware:
Tech spotlights: bit.ly/3qPrDhM
RoadTest and Reviews: bit.ly/3pV5Bux
Project14: bit.ly/31wbnJY

Пікірлер: 18

  • @hifromkatie
    @hifromkatie3 ай бұрын

    Super useful. I've never thought about it in that much detail before, but actually really useful to consider what you're using

  • @NaoPb
    @NaoPb3 ай бұрын

    Those are some nice big resistors in the thumbnail haha

  • @bald_engineer

    @bald_engineer

    3 ай бұрын

    Nah, they are only 1 kiloohms. ;)

  • @davidgator2279
    @davidgator22793 ай бұрын

    Great video! Have always wanted to learn about I2C! Thank you!

  • @macdaddyns
    @macdaddyns3 ай бұрын

    very informative, thanks

  • @HL65536
    @HL655363 ай бұрын

    I made a battery management system using one attiny per cell, communicating via I2C (using capacitors as a cheap way to shift voltage levels between the cells.). Each attiny has an external 100kOhm resistor to keep its capacitor at the correct offset. For the total bus, this means the effective pull-up is all of them in parallel (with 16 cells that's 6.25kOhm). Despite its high number of devices and high pull up resistance, it works fine (already for ~half a year). However it "only" runs in standard 100kHz mode and has long pauses between communications to let the connection capacitors settle to the correct voltage again.

  • @viniciusnoyoutube
    @viniciusnoyoutube3 ай бұрын

    Nice thumbnail and even nicer video and theme.

  • @MAYERMAKES
    @MAYERMAKES3 ай бұрын

    until know I just used 10k as pullups..for no specific reason other than I saw others use 10k. well I guess its time to go measure...

  • @bald_engineer

    @bald_engineer

    3 ай бұрын

    I hope that's a key takeaway: make a measurement to verify you are in spec. If so, move on to real problems!

  • @jordancobb509
    @jordancobb5093 ай бұрын

    Once i discovered I2C extender chips i stopped worrying about all this bus capacitance stuff. Those things are amazing. Just add them to yoir circuit and you can communicate over long diatances with no problem.

  • @bald_engineer

    @bald_engineer

    3 ай бұрын

    Do you have one you can recommend? (I have an idea for an experiment.)

  • @dennisolsson3119
    @dennisolsson31193 ай бұрын

    You can still lower the frequency to for instance 10Hz and add a huge amount of capacitance, right? It might not be a display on the other end, but a temperature sensor read every 10 minutes. It sounds like a fun project to make the master measure the rise time and configure the speed automatically.

  • @idk2412
    @idk24123 ай бұрын

    If you measured the inductance of the following: SCL to GND, SDA to GND, and SCL to SDA, using an LCR meter would that correspond well to your calculations? SCL to SDA would measure unwanted coupling between the two, but curious about your thoughts on the other two measurements

  • @bald_engineer

    @bald_engineer

    3 ай бұрын

    Practically speaking, I don't think you could measure signal to GND with an LCR (without a fixture anyway.) And if you tried to measure signal to signal, you'd just end up measuring the effective capacitance (since these aren't DC signals). Regardless, I would expect the inductive effects to cause crosstalk while the capacitive effects will contribute to the (slower) rise times. Another way I first thought of your question is these are not DC signals and we're talking about impedance. By measuring (or calculating) the capacitance, we also account for the inductance. Maybe that needs more thought.

  • @SauvikRoy
    @SauvikRoy3 ай бұрын

    Great thumbnail!😅

  • @GoatZilla
    @GoatZilla3 ай бұрын

    kind of seems like devices (like the oled screens) should have enough resistance to take care of themselves and their own built-in capacitance and then the "system" pcb's should have space for more.

  • @dinoscheidt
    @dinoscheidt3 ай бұрын

    Mh, maybe someone can correct me: I would like to trigger taps on capacitive touch screen (similar to a touch screen on your phone). I took the tip of a stylus, and soldered a long cable to it. The length of the cable alone already triggers on some screens enough capacitance; registering constantly as a touch. So I assume, I need to put enough „power“ in to the cable from my side, so it matches the screen... Would pull up resistors, knowledge about impedance etc in this video help in solving this scenario? Just need some pointers into what direction I should search learn - it is a learning project. Thx

  • @sotecluxan4221
    @sotecluxan42213 ай бұрын

Келесі