Tout ce que je dois faire, de zéro au robot terminé. Chaque étape cochée = un pas de plus vers le tournoi.
VCC → rail 3.3V (le module a son propre régulateur si tu le branches en 5V, mais 3.3V direct est plus propre)GND → rail GNDSDA → GPIO21 de l'ESP32 (même bus I2C que les ToF)SCL → GPIO22 de l'ESP32 (même bus I2C que les ToF)AD0 → GND (fixe l'adresse I2C à 0x68). Si AD0 = 3.3V, l'adresse devient 0x69.GPIO14 → ENA (PWM vitesse gauche, 0-255)GPIO32 → ENB (PWM vitesse droite, 0-255)GPIO26 → IN1 (direction gauche +)GPIO27 → IN2 (direction gauche −)GPIO25 → IN3 (direction droite +)GPIO33 → IN4 (direction droite −)config.hattachInterrupt) sur ces pins pour compter chaque impulsion0x29 → conflit si on les branche tous en même temps0x300x310x320x33GPIO15, adresse finale = 0x30GPIO4, adresse finale = 0x31GPIO5, adresse finale = 0x32GPIO16, adresse finale = 0x33arduino.cc/en/softwarehttps://dl.espressif.com/dl/package_esp32_index.jsonmaze_robot_v3/ sur ton PCmaze_robot_v3)driveForward(), turnLeft(), turnRight()config.h et lis les commentaires — tu comprendras comment tout est connecté. Ne modifie rien tant que tu n'as pas calibré (Phase 6).0x29 → un VL53L0X (adresse par défaut — normal si tu n'as pas encore changé les adresses)0x30, 0x31, 0x32, 0x330x68 → MPU9250maze_robot_v3.ino dans Arduino IDE[INIT] Configuring ToF sensors...[INIT] ToF Front OK at 0x30[INIT] ToF Left OK at 0x31[INIT] ToF Right OK at 0x32[INIT] ToF Rear OK at 0x33[INIT] Encoders ready[INIT] Flood fill grid initialized (16x16)[READY] Waiting for start...turnLeft() et turnRight(), utiliser le gyroscope pour vérifier que le virage fait exactement 90°PULSES_PER_MM = moyenne_pulses / 1000config.h dit 2.94 — la différence vient du ratio exact du réducteur et de la taille réelle de la roue (les roues chinoises ne font pas exactement 65mm)new_value = old_value × 360 / measured_anglenew = 277 × 360/350 = 285100mmconfig.h : #define CELL_SIZE_MM 180CELL_SIZE_MM × PULSES_PER_MMSPEED_RETURN = 220 (sur 255 max) — c'est rapide mais stable