Project AKO


Main Controller



last updated 22jul2001

The AKOI2C is an I/O coprocessor that provides master and slave I2C functionallity to virtually any computing device.  Since the AKOI2C is a smart I/O coprocessor unit, very little computational power is required by the main processor to access an I2C bus.  The AKOI2C includes 80 byte send and receive buffers, further reducing the time constraints on the host processor.  The AKOI2C was developed when we grew increasingly frustated with the PCF8584 I2C coprocessor from Philips.  Although developed specifically for Project AKO, the AKOI2C is a good candidate for any I2C interface application.

The AKOI2C is currently implemented as firmware running on a Microchip PIC16F877.  Currently, master write and slave read functionallity are implemented, as these are the two I2C modes used by Project AKO.  However, master read and slave write functionallity are planned, allowing the AKOI2C to be used in any application requiring I2C connectivity.  The host processor interface to the AKOI2C is an 8-bit bus.  However, adding a serial interface would be trivial. 

AKOI2C Interface Document v1.5 (04 Feb 2000)
The above text file documents the hardware level interface to the AKOI2C, as well as the protocol used to communicate between the host processor and the AKOI2C.  Some features discussed in the document, notably master read and slave write functionallity, are not implemented.  A revised version noting which features are currently implemented will be available soon.


The AKOI2C firmware and Linux device drivers are available from the AKO SourceForge page.  Note that the device driver is currently being rewritten, so the one in the current package is badly broken.


The AKOI2C firmware and device driver source code is available from the cvs server.  Use the following commands to check it out:
cvs login 
cvs -z3 co akoi2c