To high level I2C

I am using Si7020. I am using write in order to ex a measurement. But then I need to send the device address with the read bit and only that, no reading address or anything… how can I do that with the Imp? are there any low level i2c function for the imp?

There is code for the Si7021 from Joel of MakeDeck at https://github.com/MakeDeck/C3V0-Plus. I don’t know how different this chip is from the 7020 part, but it might help.

Looking at the Si7020, you should use it in “hold master mode” and not the alternative “no hold” mode, which doesn’t look to me much like proper I2C. The datasheet says it stretches the clock by 10us max, which the imp should certainly deal with.

Peter

Thanks for the answers
I am using the “hold master mode” but I need to send the device address again after the write command… How do I do that?

Ok the read need to have “” as no address, I was trying with null :slight_smile:

Yes, the imp i2c does the write then readdress for read automatically.