YOSHIMITSU · Référence de l'API
Le Shinobi Hermétique en bibliothèque : un sketch détendu, deux cibles, six postures et la console verrouillée par 極光 qui administre le trône.
Architecture
YOSHIMITSU est une bibliothèque surmontée d'un sketch mince. Tout le cœur vit dans src/Yoshimitsu.h ; chaque défaut vit dans src/Yoshimitsu_Loadout.h sous forme de valeurs _DEFAULT (broches, timings, niveaux de portes). Le sketch — yoshimitsu.ino ou la copie examples/Yoshimitsu_Default/ — ne garde que votre* configuration et les surcharges définies avant l'include. Mettez à jour la bibliothèque sans retoucher votre sketch.
La détection de cible est automatique : ARDUINO_ARCH_RP2040 choisit la voie RP2040-Tiny (Servo.h, changement de posture par appuis RESET), ARDUINO_ARCH_ESP32/ARDUINO_ARCH_ESP32S3 choisit la voie ESP32-S3 (ESP32Servo.h, USB natif). Tout le reste échoue à la compilation avec un #error clair.
graph TB SKETCH["yoshimitsu.ino
the relaxed sketch — config only"] LOADOUT["Yoshimitsu_Loadout.h
the starting loadout · *_DEFAULT"] CORE["src/Yoshimitsu.h
the whole core"] STANCES["six stances
KINCHO · MANJI · FLEA
MEDITATION · NSS · BACK"] CONSOLE["USB-serial console
極光-gated admin"] CRSF["CRSF RX"] BRIDGE["MUSHIN bridge
無心 no-mind protocol"] PWM["servo PWM
wing L/R · crest"] SKETCH --> CORE LOADOUT --> CORE CRSF --> CORE BRIDGE --> CORE CONSOLE --> CORE CORE --> STANCES STANCES --> PWM
Les Six Postures
Chaque posture est une valeur de l'enum Stance (0–5) choisie à l'exécution — par commande USB, le bouton GPIO0 (ESP32-S3) ou des appuis RESET (RP2040-Tiny).
| Posture | Rôle |
|---|---|
KINCHO
|
La parade — convertisseur CRSF→PWM ; les canaux radio deviennent des microsecondes de servo. |
MANJI_DRAGONFLY
|
La lévitation — convertisseur plus le PID gyroscopique Zephyrus local sur la crête. |
FLEA
|
L'essor — gabarit de cycle d'alimentation qui fait tomber le récepteur en bootloader, puis MEDITATION. |
MEDITATION
|
La tête-éponge — flasheur de poche ; l'USB↔UART est un pont purement transparent pour esptool. |
NSS
|
Le banc sans épée — pilotage direct du servo ( |
BACK_TURNED
|
Le miroir — repos trompeur ; l'écho UART ne regarde jamais en arrière. |
Portes de Compilation
Tout l'optionnel se compile proprement en moins lorsqu'il est désactivé — aucun octet mort, aucune référence pendante. Surchargez n'importe lequel dans votre sketch avant l'include.
JIGUANG— le conteur / administrateur (1= omniprésent,0= zéro octet de 極光 compilé).YOSHI_GYRO— la voie du gyroscope Zephyrus MPU6050.YOSHI_RGB— l'aurore WS2812B embarquée (la couleur de posture toujours allumée).JIGUANG_PROMPT— la chaîne du prompt de la console d'administration (défaut"極光") ; renommez-la dans le sketch.BOARD_CUSTOM— fournissez vos propres brochesCUSTOM_RP2040_*_DEFAULT/CUSTOM_S3_*_DEFAULT.
API de la Console
Les commandes de posture restent ouvertes : KINCHO, MANJI, FLEA, MEDITATION, NSS, BACK, POSE n, plus STATUS, SERVO i us et HELP. Les commandes d'administration sont verrouillées derrière le prompt : tapez d'abord 極光, puis DOC, SETUP, JIGUANG, MUTE, CRSF, SCORE, ELRS, LEGEND, BRIDGE, ADMIN ou MUSHIN.
極光 DOC imprime le catalogue de cheatcodes ; 極光 SETUP imprime l'assistant de méditation (posture, niveau de voix, état MUSHIN, alimentation du récepteur). Une ligne sans prompt qui touche une commande verrouillée répond « le trône est gardé » et revient.
MUSHIN 無心 — le protocole sans-esprit
Le pont de mémoire musculaire (esprit→muscle) parle une trame à 4 champs sur les deux mêmes fils que le flasheur. Démarre armé, persisté en flash.
[0x9B][len][type][payload][xor]
0x01 INTENT n × uint16 µs per servo
0x02 ANNOUNCE 1 Hz keepalive
0x03 TELEMETRY gyro rate + correction
Déploiement
Installez le dossier sketches/yoshimitsu comme bibliothèque Arduino, puis ouvrez Fichier → Exemples → Yoshimitsu → Yoshimitsu_Default. Flashez une fois ; ensuite, les mises à jour sont git pull ou une nouvelle version — le sketch reste intact.
Dépannage
YOSHIMITSU targets ESP32-S3 or RP2040 only— votre carte n'est ni l'une ni l'autre ; vérifiez Outils → Type de carte ou définissezBOARD_CUSTOM.Une commande répond « le trône est gardé » — c'est une commande d'administration ; tapez d'abord
極光.esptool expire en MEDITATION — confirmez que les broches UART du pont (
BRIDGE_RX_PIN/BRIDGE_TX_PIN) correspondent à votre câblage.