buenas fidel, ok vamos por pasos, niple cuando tiene un dispositivo i2c genera el código para ese dispositivo ya con todas sus características por ejemplo una memoria eeprom externa, los relojes de tiempo real o con algunos sensores el detalle esta que el código es genérico a que me refiero si checas el código de algunos dispositivos que menciono veras que niple hace los registros para ese fin como comentas, como son las banderas o donde se guarda las tramas a enviar y bueno, lo malo a mi parecer es que hay pics que tienen ese modulo integrado y niple no lo utiliza a comparación de el modulo serie que si genera el código para el puerto y aparte un código genérico para que puedas usar, entonces al querer trabajar con el modulo genérico de dispositivos pues pasa lo mismo genera registros para usar que lo ideal seria que usara el modulo interno, tal vez lo hace asi por que no todos los pics tienen el modulo pero igual no todos tienen el modulo serial y hay si lo usa o hace un código genérico a como el usuario lo necesite, aquí lo único que se me ocurre es usar a mano el modulo y asi si podrías generar un código funcional que sirva con la brújula seria la manera como lo haría y esa es a mano.