Man sollte nur eine Lib verwenden und nicht 2 oder noch mehr. Es könnte sein das sich die beiden Libs beeinflussen. Z.B. Lib 1 stellt in der Init die I2C Frequenz auf 100kHz und Lib 2 stellt es dann auf 400kHz.
Das Problem ist das ich nicht herausgefunden habe welche Adresse das NDS3 hat. Dadurch benötigst du die originale I2C Lib.
Das Problem das du aber mit dem Sensor hast ist ein anderes, du hast die falsche Adresse.
Die Grundadresse ist die 0D, das ist aber nicht Bit 0-Bit 6 sondern Bit 1-Bit 7.
Du musst die Adresse zuerst um 1 nach links schieben und dann 0 oder 1 an Bit 0 hinzufügen (vergleiche es mit der Makrofunktion im 1ten Post). Das geht entweder mit einer Addition oder einer Oder Verknüpfung. Achte auf die Adresse die ich im Post 4 geschrieben habe.
Ich empfehle dir die Rechnung mit dem Windowsrechner zu prüfen, dort gibt es einen Punkt "Programmierer".
Was mir auch noch aufgefallen ist, die Bytes sind verdreht.
Im Arduinocode und auch in deinem steht im 1ten Byte das MSB und im 2ten Byte das LSB, laut Datenblatt ist aber im 1ten Byte das LSB und im 2ten Byte das MSB.
Um das kann man sich aber dann später kümmern, wichtig ist aber das du erst einmal Daten bekommst.
MfG Hannes
Lesezeichen