Closed mfassler closed 6 years ago
Hey @mfassler, thanks for the pull request! I'm interested in understanding this issue a bit more. Could you share the dataset of the sensor you are using and the version of your Raspberry Pi?
Also, did you have to enable repeated start or combined read/write mode? This was necessary for me, though I neglected to properly document it here, and it would be interesting if it wasn't for you.
I couldn't find a pdf online of the datasheet.
You can see on this page that the "block" bits of the status register (0x02) are in a different location than what's listed in your datasheet.
On my Jetson, I only needed to move the two "block" bits, and everything worked fine. (Also worth noting that the Jetson's version of i2cdetect didn't show anything at address 0x1a, so that confused me for quite a few hours... but it wasn't an actual problem.)
The Raspberry Pi that I'm using might be older, or it might have some other software running on it, I don't know. But it kept timing out on the eeprom read, so I had to make that hack.
Okay, that 2018-02-07 datasheet is definitely newer than the parts I was using. I think what we should do is add a configuration option to the initializer of the HTPA module that lets the user set the part version number, and changes where it reads the block bits based on that. It doesn't seem like reading the EEPROM in parts is an issue at all, so we can make that standard if its safer.
I might have time to implement the HTPA part version configuration option this week, or if you modify your pull request to include it, I'll merge it into the main project.
I've implemented a revision
argument to HTPA
in 0573bd1ea076d13027f11768085f9b269b6e1df7, so I'm going to close this.
Hello,
I don't know if this is compatible with your plans or not. But I had to make these changes to get the sensor to work correctly on my Raspberry Pi.