Lecture simple via I2C de données IMU/COMPAS

Bonjour à tous,

J'ai un petit probléme avec le module pololu altimu-10 v4. Je souhaite récupérer les données du compas (LMS303) via l'I2C. J'ai suivi plusieurs tutos mais j'ai toujours un probléme de valeurs.

D'aprés la datasheet du LMS 303, son adresse du compas est 0x1D (adresse vérifiée avec I2C_scanner).
Les adresses des registres sont :

OUT_Z_L_M : 0C
OUT_Z_H_M : 0D

Et correspond à cette description.

Z-axis magnetic data. The value is expressed in 16-bit as 2’s complement.

Voici ensuite le code que j'utilise :

#include <Wire.h>

int sensorAddress = 0x1D;
int ZL, ZH;

#define out_z_l 0x0C
#define out_z_h 0x0D

void setup() {
Wire.begin();
Serial.begin(9600);
delay(100);
}

void loop(){
Wire.beginTransmission(sensorAddress);
Wire.write(out_z_l);
Wire.write(out_z_h);
Wire.endTransmission(sensorAddress);

Wire.requestFrom(sensorAddress,2);

if(Wire.available()<=2) {
ZL = Wire.read();
ZH = Wire.read();
}

Serial.println(ZL);
Serial.println(ZH);
delay(20);

}

Sur mon serial je n'obtiens que 254 quelque soit l'orientation de mon compas.
Je dois passer à coté de quelquechose mais je n'arrive pas à trouver quoi.

Une réponse serait la bienvenue :slight_smile:

Matthieu

bonjour,
les fils sont bien connectés où il le faut?
A4-A5

Merci pour cette réponse, mais non ca ne fonctionne pas mieux dans l'autre sens

mattMGN:
Merci pour cette réponse, mais non ca ne fonctionne pas mieux dans l'autre sens

vraiment vague comme réponse.

fais un schéma de ton branchement
lien du produit

Alors voila plus de détails :

La carte utilisée est la pololu AltIMU-10 v4 Gyro, Accelerometer, Compass, and Altimeter (L3GD20H, LSM303D, and LPS25H Carrier) Pololu - AltIMU-10 v4 Gyro, Accelerometer, Compass, and Altimeter (L3GD20H, LSM303D, and LPS25H Carrier)
Je souhaite pour l'instant utiliser seulement le compas LMS03D dont la data sheet est : https://www.pololu.com/file/download/LSM303D.pdf?file_id=0J703

J'utilise une carte Arduino Uno. Et le branchement est le suivant :

ARDUINO | AltIMU-10 v4
A4 (SDA)-------SDA
A5 (SCL)------- SCL
5V ---------------Vin
GND -------------GND

Bonsoir,

Pas d'idée pour ce petit script ?