Hi all
This is my first post so please be kind! I'm completely new to programming but trying my best to learn
Apologies if this is in the wrong section, I'll move the post if an admin can advise.
I'm currently designing a watch using the TinyDuino LED Matrix and the 1339 RTC module connected via I2C. In short I'm concerned with the reliability of I2C (purely due to seeing other posts on various forums claiming lost data packets etc.) which has set my paranoia going!
I am using the wire.h library, in combination with the DSRTCLib.h RTC library. I have programmed my board and it works really well (much better then I expected in fact). However it concerns me that if the I2C does lose communication or data packets somewhere down the line I'm not going to know. I've read up on I2C and have a reasonable grasp of it's functioning but I'm by no means an expert in it's operation.
I suppose what I'm looking for is some way of knowing that the I2C has successfully transmitted all data packets so the time displayed on the LED Matrix is accurate.
In addition if the I2C did suddenly lose connection mid way through sending data what would the 328P processor do? does it simply hang waiting for the ACK and the STOP command or does it just take whatever data it has received and assume the rest is value 0 and ends communication?
Sorry for the long post, I'm really close to finishing my project but I'm concerned that I'll never know if the time displayed on my watch is accurate - obviously a pretty important thing for a watch!
Many thanks
Luke