Changer l'adresse d'un capteur à effet Hall MLX90393

Bonjour à tous,

Nous avons un projet qui consiste à faire une cartographie 3D du champ magnétique générer par des bobines de Helmoltz.
Nous utilisons un capteur CJMCU-90393, pour ce faire nous avons besoin de brancher plusieurs capteurs en même temps pour avoir les composantes du champ à plusieurs endroits.
Nous débutons et la Datasheet du capteur est relativement complexe et peu compréhensible pour des débutants ^^'.
De ce que nous avons compris nous de ne pouvons pas utiliser plusieurs capteurs en même temps si ils ont la même adresse. Nous avons alors pensez à changer l'adresse des autres capteurs pour ensuite récupérer les données. Mais sans succès. Peut-être pourriez vous nous aiguiller :slight_smile:

Merci d'avance ! :slight_smile:

lien pour la data constructeur du capteur:
https://www.melexis.com/en/documents/documentation/datasheets/datasheet-mlx90393

Premièrement il faut savoir qu'il existe une librairie :

Deuxio, le MLX90393 fonctionne sur I2C, mais aussi sur bus SPI.

En mode SPI, il faut une broches CS par composant.

En mode I2C, l'adresse est déterminée d'une part par le modèle du composant (voir datasheet 4. Ordering Information), d'autre part par le niveau sur les broches A0 et A1 (ce qui autorisera 4 composants mais pas plus).
Donc pour connaître l'adresse I2C d'un composant, il faut lire la référence exacte sur le boîtier.
Mais on peut aussi brancher SDA SCL sur un ARDUINO, et utiliser un logiciel I2cScanner.

Bonjour,

Nous avons déjà trouver les adresses des capteurs elles sont: 0x0C, en effet nous avions que à la page 23 (Ordering information) il y avait 4 adresses disponibles.
Nous nous demandions comment changer pour une de ces adresses.

hello
vous n'avez pas lu votre doc
page 25/43
MLX90393 Triaxis® Magnetic Node
Datasheet

Page 25 of 43

REVISION 007 – JAN 14, 2021
3901090393
7-bit I2C address R/W bit
7 6 5 4 3 2 1 0
0 0 0 1 1 0 if A1 shorted to ground
1 if A1 shorted to supply
0 if A0 shorted to ground
1 if A0 shorted to supply
0 for I2C write
1 for I2C read

puis page 36, en haut à gauche du shéma
MLX90393 Triaxis® Magnetic Node
Datasheet

Page 36 /43

MLX90393

A1 A0 I2C Address

Vss Vss 0001100R/W
Vss Vdd 0001101R/W
Vdd Vss 0001110R/W
Vdd Vdd 0001111R/W

edit: ne suis pas assez rapide :grinning:

Comme j'ai dit, dfgh,nous débutons, donc la doc est difficile à comprendre c'est pourquoi je poste ici. Pour aussi avoir des explications.
Donc nous avons lu ces pages, on ne les a pas comprises, donc ton poste nous aides pas plus ^^.
Merci quand même

Relier A0 et A1 à 3.3V ou GND.
Si A0 et A1 à 0 -> adresse = 0x0C
Si A0 à 1 et A1 à 0 -> adresse = 0x0D
Si A0 à 0 et A1 à 1 -> adresse = 0x0E
Si A0 et A1 à 1 -> adresse = 0x0F

Sur le schéma AdaFruit, on voit deux résistances sur les entrées A0 et A1.
Donc l'adresse par défaut est 0x0C.
Laisser le premier module tel qu'il est.
Sur le 2ième module, relier A0 à 3.3V pour obtenir l'adresse 0x0D.
Sur le 3ième module, relier A1 à 3.3V pour obtenir l'adresse 0x0E.
Sur le 4ième module, relier A0 et A1 à 3.3V pour obtenir l'adresse 0x0F.

Pour la suite il manque une information essentielle : QUEL ARDUINO, ou ESP8266 ou ESP32 ?
Si c'est un ARDUINO , relier :

  • toutes les broches SDA ensemble à A4 de l'ARDUINO
  • toutes les broches SCL ensemble à A5 de l'ARDUINO
  • toutes les broches 3.3V à la broche 3.3V de l'ARDUINO
  • toutes les broches GND à la broche GND de l'ARDUINO

Ensuite faire un test avec I2cScanner. Les 4 modules doivent être visibles.

Par contre si le module est comme celui-ci :

Il n'y a pas de broches A0 et A1.
A vous de voir s'il y a quelque chose de prévu sous la carte.

EDIT : voici le dessous de la carte :

La suite est évidente ...