I've written a class for Arduino that reads the compass data of the HiTechnic LEGO Mindstorms compass sensor.
Using the Wire-library, I can very well fetch the data from the respective registers. In my library for Arduino I address the sensor by 0x01
which someone has done already on the Arduino forums. But everywhere else on the web (RobotC-forums for LEGO Mindstorms or in the code example at the very bottom of this document) it says, the I2C address of that sensor was 0x02
.
So why do I have to use the address 0x01
in order to communicate with my sensor while it seems to be 0x02
for other programming languages?