@@ -0,0 +1,705 @@
+package com.easternedgerobotics.rov.io;%0A%0Aimport com.pi4j.io.i2c.I2CDevice;%0A%0Aimport java.io.IOException;%0A%0Apublic class I2C implements Device %7B%0A    private I2CDevice i2cDevice;%0A%0A    public I2C(final I2CDevice device) %7B%0A        i2cDevice = device;%0A    %7D%0A%0A    @Override%0A    public final void write(final byte writeAddress, final byte%5B%5D buffer) throws IOException %7B%0A        i2cDevice.write(writeAddress, buffer, 0, buffer.length);%0A    %7D%0A%0A    @Override%0A    public final byte%5B%5D read(final byte readAddress, final int readLength) throws IOException %7B%0A        final byte%5B%5D readBuffer = new byte%5BreadLength%5D;%0A        i2cDevice.read(readAddress, readBuffer, 0, readBuffer.length);%0A        return readBuffer;%0A    %7D%0A%7D%0A

Allow basic I2C communication to read/write blocks of bytes