Hi I've changed my code from bit-bang to using the MSSP for the I2C bus. I Implemented the code as attached by others in the pic w-r_i2c.gif, and it works fine. I see, however, that there is no provision for error trapping In the typical snippet below, mov WORD, SSPBUF ;word address write i2cwrite_w btfsc SSPSTAT, r_w bra i2cwrite_w would the strategy be?; - use a timer to track the event for a few ms, then exit if hung? - how does one usually recover an errant I2C bus? send a few 'stop' conditions? or clear the SSPEN Regards Roland Jollivet -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist