Sometimes you'll find yourself with an I2C bus controller on one side, and an I2C bus device on the other and you gotta keep em (electrically) separated. Maybe because one is Earth-grounded, maybe because you've got some funky power monitoring setup, maybe you want to reduce noise.

Whatever it is, you can use the Adafruit ISO1540 Bidirectional I2C Isolator to add full electrical isolation between two sides of an I2C bus. The chip we use, the TI ISO1540 is fully bi-directional, supports up to 1 MHz clock rates, supports clock-stretching, works with 3 to 5V DC power or logic (separate on either side of course), with 2500 V-RMS isolation (see isolation note below).

Usage is easy - you get power/ground/clock/data breakout pads for each side as well as a matching STEMMA QT connector. Unlike our other QT boards, the two sides are obviously electrically isolated, which means each half must be powered! Check that the green LED is lit on both sides. Now send data over I2C and you're good to go. We have 10K pullups on each side, from the I2C pins to the matching VCC for that side.

For more details about chip specifications, check out the TI product page.

See the TI page for isolation criteria. This design is not certified for high voltage isolation, more like if a 120v or less AC or DC voltage got on one side it wouldn't cascade to the other. If you need a specific isolation number above that, read the TI page on design criteria for their tolerances.

To get you going fast, we spun up a custom made PCB in the STEMMA QT form factor, making it easy to interface with. The STEMMA QT connectors on either side are compatible with the SparkFun Qwiic I2C connectors. This allows you to make solderless connections between your development board and the ISO1540 or to chain it with a wide range of other sensors and accessories using a compatible cableQT Cable is not included, but we have a variety in the shop

There are TWO SETS of power and data lines that are ELECTRICALLY ISOLATED! Each set is on one half of the isolation barrier.

Power Pins:

  • VCC - this is the power pin for each side of the isolator. Each side must be powered, provide (separated) 3 to 5 VDC on both sides!
  • GND - this is the ground pin for each side of the isolator. Each side must be powered, connect the reference ground on either side.

I2C Logic pins:

  • SCL - the I2C clock pin, connect to your I2C clock line on either side. There is a 10K pullup to the side's VCC
  • SDA - the I2C data pin, connect to your I2C data line on either side. There is a 10K pullup to the side's VCC
  • STEMMA QT - These connectors allow you to connectors to dev boards with STEMMA QT connectors or to other things with various associated accessories

This guide was first published on Feb 09, 2021. It was last updated on May 15, 2024.