Shop OBEX P1 Docs P2 Docs Learn Events
EEPROM pullup resistors — Parallax Forums

EEPROM pullup resistors

HarleyHarley Posts: 997
edited 2007-03-15 17:54 in Propeller 1
My question is what is the rule for the EEPROM pullup resistors, as I've seen three different configurations?

1. PropStick - has two 4.7Ks
2. Demo board - has one 10K
3. ProtoBoard - has two 10Ks
4. Propeller Hardware Connection drawing (Parallax web site) has one 10K.

What is the ground rule for whether one or two resistors are 'required' and what range of values (min/max) will work?

I just happened to look at #4 and was surprised. Anyone have guidance?

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Harley Shanko
h.a.s. designn

Comments

  • parts-man73parts-man73 Posts: 830
    edited 2007-03-14 00:23
    ( please correct me if I'm wrong, but this is my understanding)

    A pullup resistor is required on SCL if you plan on using other I2C devices besides the boot EEPROM is connected to the I2C bus. This would include a second or more EEPROM, or any other I2C device.

    The value for these pullups can be 4.7K, or 10K

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Brian Meade

    "They who dream by day are cognizant of many things which escape those who dream only by night" - Edgar Poe
  • Mike GreenMike Green Posts: 23,101
    edited 2007-03-14 00:29
    The I2C standard requires a pullup on both SCL and SDA and typically 4.7K is used. A 10K resistor will do.

    It's possible to make do with a single pullup on SDA, but requires special handling on the part of the I/O routines and only one bus master is possible. The serial PropStick was made to fit the I2C requirements and the ProtoBoard was provided with two pullups by user request.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2007-03-14 04:08
    I've been handling I2C since it was called the "Inter IC" bus, hence IIC or as it is now known and registered as, I2C. Much of the protocol was designed to handle multi-masters or micros emulating slaves in software and so it covered all kinds of conditions that could result. Initially a lot of these peripherals were used in TV designs and the chips could be located anywhere within the confines of the TV chassis. It allowed digital communication between simple or complex ICs without cumbersome data buses and noise problems etc.

    However, and this is the big one, none of the I2C slave peripherals that I have ever known will use these special conditions such as clock stretching or multi-master bus collision handling. From the master the SCL line can be driven as a pure output without the need for a pull-up (not that it hurts). The data line is only ever open-drain on the peripherals though and you do need a pull-up with that. The value of this pull-up depends upon a variety of factors such as line length (capacitance), speed, number of devices, and power consumption amongst over things. For low-speed peripherals (100kHz) located a short distance from the master you will find that 10K works fine. To be on the safe side it is better to choose a lower value like 2K2 which will be able to pull-up the line faster. The minimum value is around 1K and the typical 10K is fine for bus capacitance below 100pf.

    So a design with 10K on the sda line only is fine if the chip(s) are located very close to the master. But you will never hurt anything by using two 2K2 resistors either.

    *Peter*
  • OzStampOzStamp Posts: 377
    edited 2007-03-14 08:36
    Hi

    Here is a pretty cool link that has alot of related stuff .. it discusses pull ups etc etc
    See the I2C FAQ link .. really very usefull info
    Peters suggestion is pretty well correct as a 1K per V is about the norm ... is that right Peter ?
    Thats what I was told awile ago... so 10K is a little high (weak pull up..)
    So please check it out http://www.esacademy.com/faq/i2c/

    I am sure there are many other good sites with similar info as well..
    Cheers

    Ronald Nollet Australia
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2007-03-14 09:40
    Hi Ron,

    Basically the low-level output voltage is guaranteed to be less than 0.4V at 3ma. So a 1K to 3.3V (minus the max 0.4V) will give you around 3ma. That doesn't mean you can't use a lower value resistor it's just that the output low level is not guaranteed to be less than 0.4V not that that is a worry because the input low-threshold voltage is around 1V or more.

    BTW, I am guilty of using 10K pull-ups myself.

    *Peter*
  • HarleyHarley Posts: 997
    edited 2007-03-14 16:22
    Thanks, parts-man73, Mike, Peter, Ron, for the guidance.

    Due to the number of I/Os to 5v, there's some near 40 resistors for current limiting at the interface of this 2-Prop design, and I'm looking to reduce whatever parts can be eliminated from this design.

    Looks like no resistors are needed for the programming (PropPlug) interface either.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Harley Shanko
    h.a.s. designn
  • parts-man73parts-man73 Posts: 830
    edited 2007-03-15 12:57
    Perhaps if I could make a suggestion.

    When I have multiple lines that need to be pulled up. I try to combine them into common bus SIP resistor network. The supply that you are pulling up to is connected to pin 1, and any lines that need to be pulled up are connected to the other pins. Saves alot of PCB real estate.

    Here's an example, I know you've seen them before, but some reading this may not have.
    www.mouser.com/catalog/specsheets/XC-600048.pdf

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Brian Meade

    "They who dream by day are cognizant of many things which escape those who dream only by night" - Edgar Poe
  • HarleyHarley Posts: 997
    edited 2007-03-15 16:46
    Unfortunately, most of these resistors need to be 'series' current limiting ones. So, each resistor needs to be isolated from the others. I'm familiar with the DIP 16-pin type with 8 resistors/pack. Maybe there are 8-pin SIP with 4/pack.

    Yes, it is a challenge to i/f with many 5v to 3.3 signals. Thanks again for the help.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Harley Shanko
    h.a.s. designn
  • Paul BakerPaul Baker Posts: 6,351
    edited 2007-03-15 16:52
    SIPs come in bus (pull-up) and isolated (series) configurations.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • HarleyHarley Posts: 997
    edited 2007-03-15 17:54
    Thanks, Paul. The design is only in breadboard stage, really. For someone else, and probably a one-of-a-kind build.

    So hadn't even yet felt the need to look into such details yet (usually use DigiKey for such initial browsing). Guess it is time, in a way.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Harley Shanko
    h.a.s. designn
Sign In or Register to comment.