I've been having problems with interfacing the ASDX I2C pressure sensor from Honeywell with the arduino. I connected the VDD, GND, SDA, and SCL to their respective pins on the arduino. I pulled the SDA and SCL lines up to +5v using 10k resistors.
the code most of the time does not reach the "print('b')" line, ie, it gets stuck at Wire.requestfrom(). but sometimes it randomly does reach checkpoint b, but does not raech checkpoint c.
I also tried both address 0x78 and 0x78>>1 (which i read from this forum that it might help).
What do i do!!! what did i do wrong!! this seems like a simple problem.
The problem was I got the wrong VDD pin... the ASDX sensor's pin layout is so weird, not the conventional counter-clockwise numbering.
It's ordered like this:
1 5
2 6
3 7
4 8
I swapped the pins and it was okay. [solved]
but this is curiously odd. firstly, why did the wire library hang? shouldn't there be a timeout of some sort? secondly, why is the sensor ordered like this? why did honeywell go out of its way to go against convention?