translation missing: en.general.accessibility.skip_to_content

I2C Driver

SKU 3080
£26.99 inc VAT
£22.49 ex VAT
16 in stock.

The I2CDriver is an easy-to-use, open source tool for controlling I2C devices. It works with Windows, Mac, and Linux, and has a built-in colour screen that shows a live “dashboard” of all the I2C activity. It uses a standard FTDI USB serial chip to talk to the PC, so no special drivers need to be installed. The board includes a separate 3.3 V supply with voltage and current monitoring.

While other I2C tools might offer a couple of LEDs, I2CDriver has a clear logic-analyser display of the signal lines plus graphical decoding of the I2C traffic.

I2C Driver

In addition, it continuously displays an address map of all attached I2C devices, so as you connect a device, it lights up on the map. You’ll never have to ask “is this thing even switched on?” again.

I2C Driver

The current and voltage monitoring let you catch electrical problems early. The included colour-coded wires make hookup a cinch; no pinout diagram is required. It includes a separate 3.3 V supply for your devices, a high-side current meter, and programmable pull-up resistors for both I2C lines.

There are three I2C ports, so you can hook up multiple devices without any fuss.

I2CDriver comes with free (as in freedom) software to control it from:

  • a GUI
  • the command-line
  • C and C++ using a single source file
  • Python 2 and 3, using a module
  • Open hardware: the design, firmware and all tools are under the BSD license
  • Live display: shows you exactly what it’s doing all the time
  • Fast transfer: sustained I2C transfers at 400 and 100 kHz
  • USB power monitoring: USB line voltage monitor to detect supply problems, to 0.01 V
  • Target power monitoring: target device high-side current measurement, to 5 mA
  • I2C pull-ups: programmable I2C pull-up resistors, with automatic tuning
  • Three I2C ports: three identical I2C ports, each with power and I2C signals
  • Jumpers: colour-coded jumpers included in each pledge level
  • 3.3 output: output levels are 3.3 V, all are 5 V tolerant
  • Supports all I2C features: 7- and 10-bit I2C addressing, clock stretching, bus arbitration
  • Sturdy componentry: uses an FTDI USB serial adapter and Silicon Labs automotive-grade EFM8 controller
  • Usage reporting: reports uptime, temperature, and running CRC of all traffic
  • Flexible control: GUI, command-line, C/C++, and Python 2/3 host software provided for Windows, Mac, and Linux


  • Maximum power out current: up to 470 mA
  • Device current: up to 25 mA
  • Dimensions: 61 mm x 49 mm x 6 mm
  • Computer interface: USB 2.0, micro USB connector

Customer Reviews

5 Based on 3 Reviews
5 ★
4 ★
3 ★
2 ★
1 ★
Write a Review Ask a Question
  • Reviews
  • Questions

Thank you for submitting a review!

Your input is very much appreciated. Share it with your friends so they can enjoy it too!

  • service
  • sensors
  • data
  • tools
  • library
  • Linux
  • software
  • version
  • controller
  • couple
United Kingdom

I2C Driver

Only tested it so far, looking to reverse engineer an I2C application in the near future, so just collecting the tools.

Andrea B.

Good product excellent service

Good product excellent service, thank you very much!

A Cool Components Customer
Martyn D.
United Kingdom

Neat tester/monitor for I2C

I've been looking for a device for a while that I could use to monitor what's happening between I2C devices, so this turns out to be a good buy. You can operate this in a couple of modes, either as an active controller (so that you can directly interact with sensors, memories, displays etc) or as a passive monitor (so an external master such as the micro:bit can control the I2C slaves). In both modes you have the on-board display showing which devices are active, and the data flowing between them. The software supplied has a Windows driver (so you can control from Windows), and an open-source repository for Linux and Mac. I didn't try Linux, but the Mac software looks similar to the Windows version. There is also a Python library layered on top, opening the possibility of creating your own scripts and tools to control I2C devices. I think this is a neat device, and there's still quite a bit more for me to explore here.