I2C Terminal

I2C Term, short for i2c terminal is simple command line utility for interfacing i2c bus devices. It is written in .net using C#, it works on PC computers that have parallel port – lpt. It is able to emulate i2c protocol and also to read and program some i2c eeproms like 24cxx. You can use it to study how i2c protocol work, to interface or debug some device, or for reading and writing eeproms.

I2C-Terminal
I2C-Terminal

Supported commands are:

  • h – help
  • q – exit application / close

i2c commands:

  • rst – reset SDA and SCL lines to idle
  • st – i2c start condition
  • stre – i2c repeated start condition
  • sp – i2c stop condition
  • c – i2c cycle SCL
  • ch – i2c set SCL high
  • cl – i2c set SCL low
  • s xx – send the xx byte (hex) to i2c device
  • r n – receive n bits from i2c device
  • ack – send ack
  • nack – send nack
  • scan – scan i2c bus for devices

i2c eeprom programming:

  • eeprom xx – select eeprom
  • re xx – read eeprom, the switches can be:
    – next , read next byte
    – all , read all bytes
    – all dump filepath , read all bytes and dump to file
    – rand addrh addrl , (rand 00 0f) random
  • i path – import eeprom file dump, switches can be:
    – w , also write eeprom

To interface your hardware you need to build this simple interface.

All the parts are easily available online or in your local electronics shop, or maybe even you can get all required parts from your scrap electronics.

Here is the schematic

Simple-i2c
Simple i2c interface

 

You can omit the eeprom holder on the right side if you want only interface with i2c bus device. The interface works with 3V and 5V systems, like also with low voltage 1,8V systems.

The binary executor you can download from here.

On older windows like XP you need to have .NET 2.0 installed.

Please leave the feedback in the comments below!

Leave a Reply