Communication serie avec un inclinometre

Vous avez réalisé ou vous voulez réaliser un truc impensable avec votre Raspberry Pi ? Cet endroit est pour vous...

Modérateur : Francois

Répondre
JBaill
Messages : 24
Enregistré le : jeu. 14 juil. 2016 10:36

Communication serie avec un inclinometre

Message par JBaill » ven. 2 févr. 2024 18:34

Bonjour à toutes et tous
Je reviens encore vous embeter
Je seche sur une conversation avec un inclinometre .
cette conversation se fait en serie mais uniquement avec de l exadecimal (il me semble que beaucoup de module causent ce langage les gps notament)
Si je decode avec facilité (j'ai pas mal galèré tout de même ) ce que le module diffuse
Impossible de lui parler ( j ai besoin d'etalonner et de definir les zero)
j'ai essayé beaucoup de chose et nada .
j 'envisage de snifer le port serie du programme windows qui est donné avec le module et qui permet de faire ce qui m intéresse .
c'est un module witmotion JY60 inclinometre accelerometre magnetometre 3 axes
witmotion a un protocole spécifique à ses modules et exige des trames en hexadecimal
je sais que je peux converser en i2c ou en spi mais j ai deja un circuit avec une liaison serie et un raspico
quelqu'un a t il deja utilisé ces modules?? et rencontré ces problemes
merci de vos lumieres

Cordialement
Jacques BAILLARGEAT

piper
Raspinaute
Messages : 651
Enregistré le : sam. 5 juin 2021 18:57

Re: Communication serie avec un inclinometre

Message par piper » sam. 3 févr. 2024 17:19

Bonjour,
Visiblement inutile de réécrire le pilote ( ce qui exige d'analyser le contenu des trames)
Une bibliothèque en python est disponible pour communiquer avec via son port série
https://witmotion.readthedocs.io/en/lat ... start.html

Pour info, rien n'interdit d'avoir plusieurs modules en I2C ni plusieurs modules en SPI
Ce qui est important c'est qu'ils utilisent tous la même tension de niveaux logiques (5V ou 3.3 V, pour les Raspberry, c'est 5V), sinon, il faut un module de transformation des niveaux logiques.
3 Pi4 : Emby / Samba , Librelec, Android TV
3 Pi3 : Hifiberry /OSMC, Games station, Samba / VPN / HotSpot Wifi
2 Pi2 : RFID, radio reveil (PiReveil)
1 Pi0 : traker GPS et acquisitions
1 Pi0 2W : tests divers
5 Arduinos dont 4 nanos et 1 Mega
1 ESP32

JBaill
Messages : 24
Enregistré le : jeu. 14 juil. 2016 10:36

Re: Communication serie avec un inclinometre

Message par JBaill » mar. 13 févr. 2024 18:10

Bonjour
Merci de votre prompte réponse et désolé de ma réponse tardive j'ai un peu laissé de coté ce problème (pour faire autre chose bien sur )
Je teste cela très vite et vous tiens informé.
Cordialement
Jacques

JBaill
Messages : 24
Enregistré le : jeu. 14 juil. 2016 10:36

Re: Communication serie avec un inclinometre

Message par JBaill » mar. 13 févr. 2024 19:01

J avais oublié de preciser .....
Je voulais converser avec l inclinometre en micropython avec un pico
Evidement le problème est très different ....
alors toute suggestion est bienvenue...

merci
Jacques Baillargeat

piper
Raspinaute
Messages : 651
Enregistré le : sam. 5 juin 2021 18:57

Re: Communication serie avec un inclinometre

Message par piper » ven. 16 févr. 2024 01:52

Ah, là, il faut la bibliothèque écrite pour micro-python
Bon courage avec les picos :
15 ans que je fais du raspberry pi, 8 ans de l'arduino et des ESP32
Le seul de mes MCU qui ait jamais manqué plusieurs fois de passer par la fenêtre ..... c'est mon pico d'ailleurs hier encore, il a faillit finir à la poubelle.
Il va surement finir par y aller pour de bon d'ailleurs.
3 Pi4 : Emby / Samba , Librelec, Android TV
3 Pi3 : Hifiberry /OSMC, Games station, Samba / VPN / HotSpot Wifi
2 Pi2 : RFID, radio reveil (PiReveil)
1 Pi0 : traker GPS et acquisitions
1 Pi0 2W : tests divers
5 Arduinos dont 4 nanos et 1 Mega
1 ESP32

JBaill
Messages : 24
Enregistré le : jeu. 14 juil. 2016 10:36

Re: Communication serie avec un inclinometre

Message par JBaill » lun. 19 févr. 2024 15:18

bonjour,

Je viens des pics et du PDP11 le pico est un vrai régal à coté.
Et bien je vais faire le bète et méchant j ai le programme de calibrations des inclinometres sous windows.
Je vais snifer le port série et je saurai ce qu'ils se racontent pour la calibration
et tacher de le reproduire....
il y a tt de même des trucs un peu curieux avec l' uart
par exemple l écriture d'une chaine ascii le port rebouclé me donne du binaire au retour
uart.write "salut"
donne avec print (uart.read()) b'salut'
ecris en binaire quelquesoit la façon donne toujours b'salut' y compris si je limite le nombre de caractère ou que je prend la ligne complete
et je n'ai pas trouvé d option dans la bibliotheque uart (j ai surement mal regardé) y quelque chose qui cloche la dedant j'y retourne immediatement comme disait l'oncle de Boris VIAN
donc ou l'émission se fait sytematiquement en binaire ou bien la réception
en tout cas le module ne reçois pas ce qu'il faut puisqu'il continue à débiter ses paramètres
je vais voir tout ça en sniffant l interface usb ttl 3,3v et je vous donnerai la méthode pour l étalonnage en µpython avec l'uart
je suis un peu stupide c'etait surement plus facile en I2C mais le CI est fait et ça fonctionne très bien dans l'autre sens
il n existe hélas pas de bibliotheque pour le µpython et celle du python est beaucoup trop lourde pour la transformer.
bref ya du taff
à bientot et merci de vos reponses
Jacques Baillargeat

JBaill
Messages : 24
Enregistré le : jeu. 14 juil. 2016 10:36

Re: Communication serie avec un inclinometre

Message par JBaill » sam. 24 févr. 2024 09:25

bonjour,
Finalement snifer le port serie etait la bonne solution .
ce qui m a permis de voir que le JY60 n'utilisait pas le protocole de la doc witmotion protocol
finalement c est tres simple il suffit d'envoyer ff aa 67 en exa
donc uart.write(binascii.unhexlify(ffaa67) et le tour est jouer pour recaler les x et y
le seul code qui change pour les autres ordres est le dernier
60 pour mettre en veille et le reveiller
61 pour selectionner le port serie
62 selection de l' IIC
63 vitesse 115200 Baud
64 vitesse 9600 baud
65 installation horizontale (du module)
66 installation verticale

c est tt de meme plus simple
à bientot pour de nouveau problemes
cordialement
Jacques Baillargeat

Répondre

Retourner vers « Utilisateurs avancés »