added timeouts to i2c to avoid hangs
updated doc