YOSHIMITSU · API リファレンス
ライブラリとしてのヘルメティック・シノビ:気楽なスケッチ1つ、ターゲット2種、構え6つ、そして王座を統べる極光ゲートのコンソール。
アーキテクチャ
YOSHIMITSU は薄いスケッチを上に載せたライブラリです。核はすべて src/Yoshimitsu.h に、すべてのデフォルトは src/Yoshimitsu_Loadout.h に _DEFAULT 値(ピン・タイミング・ゲートレベル)として生きています。スケッチ(yoshimitsu.ino または examples/Yoshimitsu_Default/ のコピー)は、あなたの*設定と include の前に定義した上書きだけを持ちます。スケッチを触り直さずにライブラリを更新できます。
ターゲット検出は自動です。ARDUINO_ARCH_RP2040 なら RP2040-Tiny 経路(Servo.h、RESET タップで構え切替)、ARDUINO_ARCH_ESP32/ARDUINO_ARCH_ESP32S3 なら ESP32-S3 経路(ESP32Servo.h、ネイティブ USB)を選びます。それ以外は明快な #error でコンパイル時に失敗します。
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
六つの構え
どの構えも Stance 列挙型の値(0–5)で、実行時に選ばれます — USB コマンド、GPIO0 ボタン(ESP32-S3)、RESET タップ(RP2040-Tiny)のいずれかで。
| 構え | 役割 |
|---|---|
KINCHO
|
受け流し — CRSF→PWM 変換器。無線チャンネルがサーボのマイクロ秒になります。 |
MANJI_DRAGONFLY
|
浮揚 — 変換器に加えて、冠羽(クレスト)のローカル Zephyrus ジャイロ PID。 |
FLEA
|
持ち上げ — 受信機をブートローダーへ落とし、その後 MEDITATION へ移す電源サイクルの治具。 |
MEDITATION
|
スポンジ頭 — ポケットフラッシャー。USB↔UART は esptool のための純粋な透過ブリッジです。 |
NSS
|
無刀の台 — サーボ直接駆動( |
BACK_TURNED
|
鏡 — 惑わす静寂。UART のこだまは決して振り返りません。 |
コンパイル時ゲート
オプションは無効にすればきれいにコンパイルから外れます — 死んだバイトも、ぶら下がった参照もなし。include の前のスケッチで、これらのどれでも上書きできます。
JIGUANG— 語り手 / 管理者(1= 常駐、0= 極光バイトを一切コンパイルしない)。YOSHI_GYRO— Zephyrus MPU6050 ジャイロ経路。YOSHI_RGB— オンボード WS2812B のオーロラ(常時点灯の構えの色)。JIGUANG_PROMPT— 管理コンソールのプロンプト文字列(デフォルト"極光")。スケッチで名前を変えられます。BOARD_CUSTOM— 独自のCUSTOM_RP2040_*_DEFAULT/CUSTOM_S3_*_DEFAULTピンを用意します。
コンソール API
構えコマンドは開いたままです: KINCHO、MANJI、FLEA、MEDITATION、NSS、BACK、POSE n、加えて STATUS、SERVO i us、HELP。管理者コマンドはプロンプトの後ろに施錠されています。まず 極光 を打ち、それから DOC、SETUP、JIGUANG、MUTE、CRSF、SCORE、ELRS、LEGEND、BRIDGE、ADMIN、MUSHIN を打ちます。
極光 DOC はチートコード一覧を、極光 SETUP は瞑想ウィザード(構え・声のレベル・MUSHIN 状態・受信機電源)を印字します。プロンプトなしの行が施錠コマンドに当たると 「王座は守られている」 と答え、戻ります。
MUSHIN 無心 — 無心のプロトコル
筋記憶の橋(精神→筋肉)は、フラッシャーと同じ2本のワイヤで4フィールドのフレームを話します。装填状態で起動し、フラッシュに永続化されます。
[0x9B][len][type][payload][xor]
0x01 INTENT n × uint16 µs per servo
0x02 ANNOUNCE 1 Hz keepalive
0x03 TELEMETRY gyro rate + correction
導入
sketches/yoshimitsu フォルダを Arduino ライブラリとしてインストールし、ファイル → スケッチ例 → Yoshimitsu → Yoshimitsu_Default を開きます。一度書き込めば、以後の更新は git pull または新リリースで、スケッチはそのまま残ります。
トラブルシューティング
YOSHIMITSU targets ESP32-S3 or RP2040 only— ボードがどちらでもありません。ツール → ボードを確認するか、BOARD_CUSTOMを定義してください。コマンドが 「王座は守られている」 と答えるなら — それは管理者コマンドです。まず
極光を打ってください。MEDITATION で esptool がタイムアウトします — ブリッジ UART ピン(
BRIDGE_RX_PIN/BRIDGE_TX_PIN)が配線と一致するか確認してください。