I2C software implementation for Arduino

Start with Nick Gammon's page on I2C