Andy Kunz wrote: > > Carmacon has a thing called Chippey that programs EEPROM on the parallel > port. No extra power needed, just a little PCB with a D25 on the end. >Yes, the hardware is no problem. Two 2N7000 transistors and a pair of pull-ups is all you need for any LPT port to become an I2C master. Many (maybe most) LPT ports have open-collector control signal outputs (e.g. STB, ACK) that you can directly drive SCL and SDA with, and do away with the components. I've written MSDOS programs to bit bang the I2C bus, talking as a master to a single-chip teletext receiver (GEC Plessey MV1815) and a Philips TV Tuner (FQ916). That was fun, and relatively easy. Rather than polish up the MSDOS user interface, I thought a Windows program would be much more worthwhile to learn and implement. This is why I shelved the project - no time! What I was looking for was some I2C software that would allow me to enter I2C bus messages in ASCII hex on my PC then send them to my I2C slave PICs, and read messages back. Making the PC act as an I2C slave to listen to PICs acting as I2C masters is harder. To avoid full-time polling, you can add wait-state generation by adding an 74LS125 gate (or equivalent). With the input and output wired to the SCL line, the SCL line will lock low if anything pulls SCL low. This would hold it until the PC notices it, and takes over as a slave. The PC can release SCL by raising the /OE pin. I could get such code ready written, that would save time. But I expect I'll have to write it myself eventually. >:o