Library

ATOM S3 ピン配置と比較

倒立振子ミニ③で使う M5Stack ATOM S3 のピンと、試験機の StickC Plus2 からの乗り換えポイントをまとめます。 詳細・最新仕様は必ず公式ドキュメントを確認してください。

関連: ミニ③ A(小型化)/ PlatformIO + M5Unified / SKU: C123

なにが違うの?(超ざっくり)

Chocofon(B):
StickC Plus2 だと筐体からはみ出す……ATOM S3 って指先サイズ? ピンはどこに出るの?
AIチューター:
はい。約 24×24×13 mm の立方体で、画面・ボタン・IMU(MPU6886)まで内蔵です。 外部配線は PORT.A(Grove 4ピン) と背面の Ext.GPIO(6本+電源) が主役。 Stick の HAT 8ピンとは並びも番号も別物です。
このラボでの使い分け(倒立振子 L1)
  • ATOM S3(RX): 最終筐体側 — IMU+モータ PWM+ESP-NOW 受信(ミニ③ A)
  • StickC Plus(TX): ジョイスティック側 — 当面そのまま可
  • StickC Plus2: ミニ②試験機(はみ出し解消のため ATOM へ移行)

① ピンアサイン(実務メモ)

AIチューター:
外に出る信号は大きく PORT.AExt.GPIOs の2系統です。 画面・IMU・メインボタンは内部配線済みなので、Grove/ヘッダをいじる前に「内蔵で埋まっているピン」を覚えましょう。

公式イメージ(外観)

M5 ATOM S3 外観・仕様の公式イメージ

ESP32-S3FN8/0.85" 128×128(GC9107)/MPU6886/IR/PORT.A/Ext.GPIOs

背面ピンマップ(実機ステッカー)

M5 ATOM S3 背面ピン配置ステッカー

PORT.A・Ext.GPIO・LCD/BTN/IR/IMU の割り当てが1枚にまとまっています。

Ext.GPIOs — 背面ヘッダ(左右)

公式 GPIO 一覧: G5 / G6 / G7 / G8 / G38 / G39(+ 3V3・5V・GND)

Ext.GPIOs 早見(上→下)
ピン 入出力 このラボでの用途候補 注意
3V3 電源出力 センサ 3.3V 給電 ロジックは 3.3V 前提
G5 入出力 DRV8833 AIN1(+BIN1 共有可) モータ PWM 第一候補。パラレル時は BIN1 にも同じ線
G6 入出力 DRV8833 AIN2(+BIN2 共有可) 同上。パラレル時は BIN2 にも同じ線
G7 入出力 予備 パラレル専用ではない(別用途・別モータ用)
G8 入出力 予備 同上
G39 入出力 (内蔵 IMU の SCL) 外部ヘッダに出ているが IMU I2C と共有
G38 入出力 (内蔵 IMU の SDA) 同上。モータ PWM に使わない
5V 電源 外部モジュール/参考配線 大電流モータは別電源+共通 GND
G(GND) 共通 GND LiPo/DRV8833 と必ず共有
2ch パラレルは G5/G6 の共有で足りる
  • 入力: G5 → AIN1+BIN1、G6 → AIN2+BIN2(同じ信号を2入力へ分岐)
  • 出力: AOUT1+BOUT1、AOUT2+BOUT2 をそれぞれ束ねてモータへ
  • ソフトは今までどおり 2ピン PWM のまま(G7/G8 は不要)
  • 極性を左右で食い違わせないこと。要否はミニ③ B の電流実測後に判断

PORT.A — HY2.0-4P(Grove)

底面コネクタ。公式: GND / 5V / G2 / G1(黒 / 赤 / 黄 / 白)

PORT.A 4ピン早見
ピン 色(公式) 入出力 メモ
GND 共通 GND
5V 電源 Unit 給電用。モータ直取りは避ける
G2 入出力 Stick の GROVE(G32/G33)とは番号が違う
G1 入出力 同上。UART/I2C/ADC など用途次第

内蔵機能(画面・IMU・ボタン・IR)

内部ピン(配線済み・外部ヘッダに出さない想定)
機能 GPIO メモ
LCD MOSI / SCK / CS G21 / G17 / G15 SPI。GC9107・128×128
LCD RS(DC) / RST / BL G33 / G34 / G16 バックライト PWM は公式推奨 約 500 Hz
IMU MPU6886(0x68) SDA G38/SCL G39 背面ヘッダと同バス。外付け I2C を足すときは共有に注意
メインボタン(画面下) G41 M5Unified では M5.BtnA 相当
IR LED G4 倒立振子では未使用想定
リセット (側面) 短押し=RESET/約2秒長押しでダウンロードモード(G0=LOW)
ハマりポイント(ATOM 特有)
  • G38 / G39 は IMU I2C — Ext.GPIO に出ているが、倒立用に IMU を使うなら PWM 出力に流用しない
  • 内蔵バッテリなし — Plus2 のような LiPo 内蔵ではない。MCU は USB か外部 5V、モータ VM は当面 LiPo 1S+共通 GND
  • HOLD ピン不要 — Plus2 の G4=HIGH 維持は ATOM では不要(IR が G4)
  • 書き込み — リセット約2秒長押し→緑LED点灯でダウンロードモード。PlatformIO では USB CDC フラグが定番

② StickC Plus2 との比較(乗り換え)

Chocofon(B):
ミニ②は Plus2 の G26/G25 でモータ回してた。ATOM だとどこに付け替える?
スペック比較(要約)
項目 StickC Plus2(試験機) ATOM S3(最終筐体)
SoC ESP32-PICO-V3-02 ESP32-S3FN8
Flash / PSRAM 8MB / 2MB 8MB / —(オンチップ Flash)
外形 棒状(はみ出しやすい) 約 24×24×13 mm
LCD 1.14" 135×240(ST7789) 0.85" 128×128(GC9107)
IMU MPU6886 MPU6886(同じ系統)
バッテリ 内蔵 約 200 mAh なし(外部給電)
電源クセ HOLD(G4)=HIGH 必須 HOLD なし/USB-C or 外部 5V
外部ピン系統 HAT 8p + GROVE(G32/G33) Ext.GPIO + PORT.A(G1/G2)
モータ PWM(このラボ) AIN1=G26/AIN2=G25 候補 G5 / G6(確定は③ A で配線後)
移植チェックリスト(ミニ③ A)
  • DRV8833 AIN1/AIN2 を G26/G25 → G5/G6(案) へ付け替え
  • HOLD_PIN=4 の処理を削除(ATOM では IR)
  • IMU は M5Unified のまま使えることが多いが、軸向きは筐体に合わせて再確認
  • LCD 解像度が変わる → ピーク表示レイアウトの調整
  • ESP-NOW の MAC はボード固有 → 新 ATOM の MAC を読み直して TX 側を更新
  • PlatformIO の board / USB CDC フラグを ATOM 用に変更
AIチューター:
「同じ MPU6886 だから安心」は半分正解です。チップは似ていても、 取り付け向き・ピン・電源・画面が変わるので、③ A ではまず配線と軸を通しましょう。

③ PlatformIO の入口(公式ベース)

公式ドキュメント由来の env 例
[env:m5stack-atoms3]
platform = espressif32
board = esp32-s3-devkitc-1
framework = arduino
upload_speed = 1500000
monitor_speed = 115200
build_flags =
    -DESP32S3
    -DARDUINO_USB_CDC_ON_BOOT=1
    -DARDUINO_USB_MODE=1
lib_deps =
    m5stack/M5Unified

書き込めないときはリセット約2秒長押しでダウンロードモードへ。詳細は PlatformIO ガイドも参照。

④ 公式ドキュメント

AIチューター:
ピン番号・改訂履歴は公式が正です。このページはラボ用の早見表として使ってください。
m5-docs

関連ページ