Confusion about value of Teeensy's 3.1/3.2 internal input pullup resistors

Status
Not open for further replies.

amundsen

Well-known member
Hello,

I need an official reference for the value of the internal input pullup resistors for the I2C pins on Teensy 3.1/3.2.

According to the I2C_t3 page, it's ~190 ohms.

According to a post in this thread, it's ~33k but it's a message from 2012, so maybe it applies to older Teensy models only?

In the Kinetis KL26 Sub-Family datasheet, the only information I can find states that it's between 20k and 50k (Table 7, page 8).

So what's the actual value and where should I have searched to find it?

Thank you in advance.
 
Non-specifically : Not right for I2C usage. General finding I've seen here on the forum - if you need pull-up resistors with the T 3.1/3.2 - they need to be externally provided.
 
Non-specifically : Not right for I2C usage. General finding I've seen here on the forum - if you need pull-up resistors with the T 3.1/3.2 - they need to be externally provided.

That's my understanding but in some cases, when tweaking a circuit, having the internal resistors in parallel with external ones might help adapting the actual value without replacing the external resistors.
 
I'd think that the statement that the internal pullups for I2C are 190 ohms is incorrect. One might choose to use that for an external pullup, depending on clock speed and length/impedance of the wiring.
 
I'd think that the statement that the internal pullups for I2C are 190 ohms is incorrect. One might choose to use that for an external pullup, depending on clock speed and length/impedance of the wiring.

190 ohms is a fairly low resistance for an external pullup don't you think?
 
nox771 discusses teensy i2c internal pullups here
You can measure the internal pullup with voltage meter and another resistor to ground
 
In the Kinetis KL26 Sub-Family datasheet, the only information I can find states that it's between 20k and 50k (Table 7, page 8).

When you buy regular resistors, they come with a tolerance rating. In these modern times of precision manufacturing, generally you don't see higher than 5%, and 1% usually doesn't cost much more than 5%. Even in the 1960s, resistors were generally 20%.

But inside chips, the materials are optimized for making transistors, not resistors. There's a couple different layers in the chip which can be used as resistors, but the polysilicon layer (for transistors gates) is fairly low resistance. If you wanted to use it for a high value resistor, you'd have to make a very long strip, which uses a large (expensive) area of the chip. So for higher value resistors, the diffusion layers (for transistor drain & source) are generally used. Those layers can vary quite a lot in resistivity, and normally they're immediately connected to metal layers inside the chip, because they don't conduct so well. Since the resistivity of those layers isn't a part of the chip that's optimized (the speed of the transistors is the main focus), it can vary quite a lot from one wafer to another, and even across the same wafer. They also can change quite a lot with temperature.

So in practice, these high value resistors inside chip have huge tolerance. Freescale datasheet effectively says the resistor is 35K with 43% tolerance.

It's really no different from buying a 1K 5% resistor, which can be anywhere from 950 to 1050 ohms. Unless you measure, you just don't know exactly what value it really is. The value varies for each individual resistor, because the manufacturing process isn't perfectly precise. For the resistors inside chips, it varies tremendously.
 
I think of the internal pull-up/down resistors as just ways to preclude a floating pin that is configured to interrupt or some such. When a connected thing (input or output) is critical about floating or nearly floating (at 40K), I use external resistors. Especially to stop wild things happening from power-on until all the code runs that configures the pins correctly and asserts the benign state on each pin.

Such as that gasoline pump you might be controlling.
 
Status
Not open for further replies.
Back
Top