M5StackでHat Mini JoyC を使う

Using the Hat Mini JoyC ・ 使用 Hat Mini JoyC

M5StackのHat Mini JoyCをコントローラーに接続する最小構成。配線とBOMつき。

この構成をエディタで開く・編集する →

部品リスト(BOM)

部品役割ポートリンク・価格
AtomS3 LiteControllergrove_i2c, gpio, usb_cofficial page — $7.5
Hat Mini JoyChatgrove_i2cofficial page — $8.5

配線

作り方

M5Stack AtomS3 LiteとHat Mini JoyCをI2Cで接続し、ジョイスティックの操作を読み取る最小構成のガイドです。ジョイスティックのX軸・Y軸の値と中央ボタンの状態を取得できます。

  1. 部品を用意する — 用意するもの:M5Stack AtomS3 Lite(コントローラー)、Hat Mini JoyC(ジョイスティックユニット)、Groveケーブル(4ピン、I2C用)、AtomS3 LiteとパソコンをつなぐUSB-Cケーブル。
  2. Groveケーブルで接続する — Hat Mini JoyCはI2C通信(Port.A、赤色)を使います。Groveケーブルの一端をHat Mini JoyCのGroveポートに、もう一端をAtomS3 LiteのGroveポート(赤色のPort.A)に差し込みます。コネクタは一方向にしか入らないので、無理に押し込まないでください。
  3. パソコンにつないでMicroPythonを書き込む — USB-CケーブルでAtomS3 Liteをパソコンにつなぎます。UIFlowやThonnyなどのツールで、AtomS3 LiteにMicroPythonファームウェアが入っていることを確認し、下のコードをデバイスにコピーして実行します。
  4. ジョイスティックの値を確認する — コードを実行すると、AtomS3 Liteの画面(またはシリアルモニター)にジョイスティックのX軸・Y軸の値とボタンの状態が表示されます。ジョイスティックを動かしたり、中央ボタンを押したりして、値が変化することを確認してください。

サンプルコード(micropython)

# M5Stack AtomS3 Lite + Hat Mini JoyC (I2C joystick)
# Wiring: Hat Mini JoyC -> AtomS3 Lite Grove Port (Port.A, I2C)
import time
from machine import Pin, I2C

# AtomS3 Lite I2C pins: SDA=Grove pin (GPIO 1), SCL=Grove pin (GPIO 2)
i2c = I2C(0, scl=Pin(2), sda=Pin(1), freq=100000)

# Hat Mini JoyC I2C address (default 0x52, 7-bit)
JOYSTICK_ADDR = 0x52

# Register addresses (from datasheet)
REG_X_L = 0x00
REG_Y_L = 0x02
REG_BUTTON = 0x04

def read_joystick():
    # Read X axis (2 bytes, little-endian)
    data = i2c.readfrom_mem(JOYSTICK_ADDR, REG_X_L, 2)
    x = data[0] | (data[1] << 8)
    # Read Y axis (2 bytes, little-endian)
    data = i2c.readfrom_mem(JOYSTICK_ADDR, REG_Y_L, 2)
    y = data[0] | (data[1] << 8)
    # Read button (1 byte, 0 = pressed, 1 = released)
    btn = i2c.readfrom_mem(JOYSTICK_ADDR, REG_BUTTON, 1)[0]
    return x, y, btn

while True:
    x, y, btn = read_joystick()
    print("X:{:4d} Y:{:4d} Button:{}".format(x, y, "Pressed" if btn == 0 else "Released"))
    time.sleep(0.1)

コツ・安全上の注意

この作り方はAIが構成から生成したものです(未検証)。通電前に配線とコードをご確認ください。

この構成はAIが実在するM5Stack部品から設計し、ポート互換をサーバで検証したものです。編集・共有できます。

エディタで開く →

UnitKit は M5Stack® 製品向けの非公式ツール。作りたいものを書くと、部品リストと配線図が出ます。