MPU9250 9 axes

72-58=14 Donc non, et en plus il faudrait dimensionner le tableau aussi à 15... ;)

Mince alors :D

Je viens de penser à quelque chose... Au début, quand j'avais teste le programme pour la première fois, les valeurs gx, gy, gz et aussi celles de l'accéléromètre étaient "décalées" donc peut être que le tableau ne lit juste pas au bon emplacement pour gz

Non le code semble correct. Sauf s'ils ont interverti les octets, mais si tu dis que gx et gy sont corrects, ça devrait aller bien

Bon, changement de plan. J'ai tout repris et donné les bons bits pour chaques valeurs et maintenant pour l'accélération, j'ai -1 en z quand je retourne le capteur et des valeurs cohérentes à la gravité donc je vais essayer de trouver l'angle avec ça vu que c'est linéaire

J'ai réussi avec l'angle en x et y, mais en z à mon avis il faudrait faire une association des deux angles x et y. Le problème est que lorsque les deux angles sont nuls, on a aucune inclinaison en z

Édit: Non, c'est complètement indépendant

Ou sinon le magnétomètre ...

Avec ça:

 uint8_t BufMag[6];
I2Cread(MPU9250_ADDRESS,0x03,6,BufMag);
mz = (BufMag[4]<<8 | BufMag[5]);

J’ai ça en sortie:

 -13309.00
-13309.00
-13309.00
-13309.00
-13309.00

Ca ne varie pas en fonction de l’inclinaison de l’axe z

mz est bien défini en int16_t ?

lesept: mz est bien défini en int16_t ?

Je l'avais défini en double, mais maintenant j'ai ça:

-13309 -13309 -13309 -13309 -13309 -13309

Bonsoir,

I2Cread(MPU9250_ADDRESS,0x03,6,BufMag);

T'es sûr de l'adresse du gyroscope (0x03)?

Voir mon premier message avec le lien vers la datasheet

Zlika: Bonsoir,

I2Cread(MPU9250_ADDRESS,0x03,6,BufMag);

T'es sûr de l'adresse du gyroscope (0x03)?

Non c'est 0x3B

Effectivement, 03 c'est le magnetomètre

Eh bien je n'ai pas réussi à lire les valeurs du magnétomètre, même avec la bonne adresse

Peut-être des infos utiles et un code à tester ici...

lesept: Peut-être des infos utiles et un code à tester ici...

Pareil, l'axe z du gyro ne fonctionne pas et les magnétomètres sont bloqués aux mêmes valeurs ... J'ai voulu tester le logiciel d'un certain Fabio sur la page, mais sa page n'existe plus Apparemment, le magnétomètre est super dur à calibrer

Ma puce n'est pas celle que l'on retrouve sur beaucoup de MPU j'ai l'impression, c'est celle-là: https://fr.aliexpress.com/item/32946686399.html?spm=a2g0w.search0204.3.238.756ceef31dMfHL&ws_ab_test=searchweb0_0%2Csearchweb201602_10_10065_10068_319_317_10696_10084_453_10083_454_10618_10304_10307_10820_10821_537_10302_536_10843_10059_10884_10887_321_322_10103%2Csearchweb201603_52%2CppcSwitch_0&algo_expid=af729e21-abcc-4d98-a31e-f47f0f6c9ca1-38&algo_pvid=af729e21-abcc-4d98-a31e-f47f0f6c9ca1

C’est pareil je pense. QFN 24 c’est un type de boîtier pour la puce, avec 6 pads de connexion sur les 4 côtés

Sur Github, un certain "Kriswiner" a dit

Yes, this is uncharacteristically noisy. I was going to suggest calibration
since this would at least give you more or less consistent heading but the
accel values are all over the map and the mag data is just wrong. Looks
like either the MPU9250 is not configured properly or you are using one of
those $3 special boards from aliexpress.

C'est mon cas (Le module à 4 euros :D)

Si j'achète par exemple celui-là qui vient de France: https://www.ebay.fr/itm/5284-1-a-5pcs-GY-9250-MPU-9250-Module-9-Axis-Sensor-Module-I2C-SPI/172806337097?hash=item283c0f7249:m:mNo9imMfZf2-UNcBnYO7Phw

Ou même celui là: https://www.ebay.fr/itm/Capteur-accelerometre-module-champ-magnetique-gyroscope-MPU-9250-GY-9250-outil/202639688590?hash=item2f2e44438e:g:V08AAOSw3g5cnupc

Ca vaudrait le coup ?

A la limite je préfère dépenser un peu plus car là vraiment c'est une galère ... Comme ça j'ai juste à utiliser la bibliothèque borderflight