0
\$\begingroup\$

Quick rundown of what's going on: I am using two PIC32MX to both be masters of I2C. They will be remotely controlled to determine who is the master at any given moment. Due to redundancy purposes, they both have their own 3.3V regulator sourced by the same 5V.

My original design, I was pulling up the I2C lines to the local 5V. Now I'm thinking I should pull up to 3.3V instead. However, I'm not entirely sure what kind of consequence I might see if I pull up the lines to their respective 3.3V. They are connected to the same I2C bus.

Questions:

  1. Am I right to worry or is there actually nothing to worry about?
  2. Should I only have one set of pull-ups because they'll act in parallel?
  3. Am I better off just pulling up to local 5V. The PIC I2C lines are 5V tolerant, but it's a 3.3V device.
\$\endgroup\$
2
  • \$\begingroup\$ It depends what other devices are on the i2c bus. Are they all 5 V tolerant? \$\endgroup\$ – The Photon Nov 27 '19 at 15:53
  • \$\begingroup\$ Yes. Slaves are 5V tolerant \$\endgroup\$ – D4ILYD0SE Nov 27 '19 at 16:22
3
\$\begingroup\$

You only need one pair of pull-up resistors for entire bus. Adding them at each node will create too strong pull-up.

This, consequently, answers your other concerns - you can connect pull-ups to any 3.3V source and be OK.

However, there is a caveat - most MCU and other I2C devices have maximum pin voltage specified relative to VCC, e.g. "VCC + 0.5V". This means that if any device on the bus loses its power for some reason its pins will immediately go beyond maximum allowed range.

The pull-up resistors will limit the current, hopefully preventing burn-outs. But for maximum reliability I'd suggest using one big 3.3V supply to power all devices on the bus and provide voltage for pull-ups too.

\$\endgroup\$
1
  • \$\begingroup\$ That's not a bad idea. I hadn't thought of that. Thank you \$\endgroup\$ – D4ILYD0SE Nov 27 '19 at 16:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.