i2c final library