Arduino LiquidCrystal_I2C_ST7032i library

This a modified version of the LiquidCrystal_I2C library to control LCD's based on a ST7032i controller.
This controller has an I2C interface and therefore can be controlled directly from the Arduino without the use of a port expander.
If you are looking for the "regular" I2C version of this library to control HD44780 LCD's using a PCF8574 expander then you should go to the Arduino LiquidCrystal_I2C page.

All functions of the regular LiquidCrystal Library are supported.
The library also has aliases for most of the functions listed in the LCD API 1.0 by Dale Wentz

Warning: This library was tested with only one LCD type: YMFC-G0802D. This is a 2-line, 8 character display with a ST7032 controller in I2C mode.
The datasheets for this display are in the info directory of the zip-file.
Other types of displays using the same controller may work, but this depends on the hardwiring of the controller chip.
To get other hardwired configurations working you may need to change the settings for Bias, Oscillator, Booster and Follower!
So: Use at your own risk!

Special thanks go out to Arduino forum user TESTATO who provided a lot of info on, and test scripts for, this display and helped with testing the library.

This library is still under construction:
The library should also work with ATtiny85, ATtiny2313 and ATMEGA168 AVR's but only has been tested with an ATMEGA328
To use the library with ATtiny85 or ATtiny2313 you also need the TinyWireM library.

Download the LiquidCrystal_I2C_ST7032i library here

If you encounter bugs or have test results for other display types with this library send me an email at