I'm working with nrf51 board, I'm using I2C to communicate with an accelerometer (see the scheme), the communications are successful but I dont see any pull up resistors in the lines SDA and SCL.

could I2C work without pull-up resistors or is the scheme wrong or does the accelerometer has internal pull up on lines SDA and SCLenter image description here

  • 1
    \$\begingroup\$ At leas highlight the lines, so we don't have to break our eyes.. Anyway the PUs can be internal to a chip. I2C can't work without them. \$\endgroup\$ – Eugene Sh. Dec 16 '15 at 17:36
  • \$\begingroup\$ you can click on the image and zoom, it gives a good look \$\endgroup\$ – Makhlouf GHARBI Dec 16 '15 at 17:38
  • \$\begingroup\$ And then to parse all of the lines? Thank you. I'll pass. \$\endgroup\$ – Eugene Sh. Dec 16 '15 at 17:39
  • \$\begingroup\$ @EugeneSh. SDA and SCL are written in red it's really clear \$\endgroup\$ – Makhlouf GHARBI Dec 16 '15 at 17:40
  • \$\begingroup\$ Don't be so lazy - do the job properly - it's impossible to read the part numbers because the resolution is bad. \$\endgroup\$ – Andy aka Dec 16 '15 at 17:41

Real IIC requires pullup resistors. Many microcontrollers have optional internal pullup resistors on some pins. If there is a micro on the bus, and that's usually the case, then it could be switching its pins between pullup and active low.

The pullups in a micro are usually higher resistance than what you'd use for IIC, but for a short bus all on one board when you know the bit rate is low enough, this can be a legitimate thing to do. I've done it.

  • 2
    \$\begingroup\$ I've done I2C with internal pull-ups too. But just in case, I had pads for discrete resistors which were DNL (do not load). \$\endgroup\$ – Nick Alexeev Dec 16 '15 at 17:52
  • 1
    \$\begingroup\$ @Nick: That sounds like a good approach. \$\endgroup\$ – Olin Lathrop Dec 16 '15 at 18:34

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.