initial non-working support for i2c
resolve merge conflicts