M5StackでフルカラーLED制御

Addressable LED strip control ・ 幻彩灯带控制

Core2からUnit RGB(SK6812)をI2Cで制御してフルカラーLEDテープを操作します。

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

部品リスト(BOM)

部品役割ポートリンク・価格
M5Stack Core2Controllergrove_i2c, grove_analog, grove_uart, mbusofficial page — $46.9
Unit RGB (SK6812)Full-color LED unitgrove_i2cofficial page — $3.95

配線

作り方

M5Stack Core2とUnit RGB (SK6812)を使って、フルカラーLEDストリップをI2C経由で制御する方法を説明します。このガイドでは、Core2のPort.A(I2C)にUnit RGBを接続し、MicroPythonで各LEDの色と明るさを個別に制御します。

  1. 部品を用意する — 必要なもの:M5Stack Core2本体、Unit RGB (SK6812)、Groveケーブル(I2C用、赤色)、USB-Cケーブル(Core2とパソコン接続用)。
  2. Groveケーブルで接続する — Unit RGBのGroveポートにGroveケーブルの一端を差し込みます。もう一端をCore2のPort.A(赤色のI2Cポート)に差し込みます。コネクタは一方向にしか入らないので、無理に押し込まないでください。
  3. パソコンに接続してMicroPythonを書き込む — USB-CケーブルでCore2をパソコンに接続します。UIFlowやThonnyなどのツールで、Core2にMicroPythonファームウェアが入っていることを確認し、下のコードをデバイスにコピーして実行します。
  4. コードを実行してLEDをテストする — コードを実行すると、Unit RGBの3つのLEDが順番に赤、緑、青に点灯し、その後虹色に変化します。LEDが正しく光ることを確認してください。

サンプルコード(micropython)

# M5Stack Core2 + Unit RGB (SK6812) via I2C
# Wiring: Unit RGB -> Core2 Port.A (red, I2C)
import time
from machine import Pin, I2C

# I2C configuration for Core2 Port.A
# SDA = GPIO21, SCL = GPIO22
i2c = I2C(0, scl=Pin(22), sda=Pin(21), freq=100000)

# Unit RGB I2C address (default 0x38)
RGB_ADDR = 0x38

# Function to set color of a specific LED (0-2)
def set_led(led_num, r, g, b):
    # Register: 0x10 + led_num (0,1,2)
    # Data: [r, g, b] (0-255)
    i2c.writeto_mem(RGB_ADDR, 0x10 + led_num, bytes([r, g, b]))

# Turn off all LEDs initially
for i in range(3):
    set_led(i, 0, 0, 0)
time.sleep(0.5)

# Test: light each LED in sequence
set_led(0, 255, 0, 0)  # Red
time.sleep(1)
set_led(1, 0, 255, 0)  # Green
time.sleep(1)
set_led(2, 0, 0, 255)  # Blue
time.sleep(1)

# Rainbow cycle
while True:
    for i in range(3):
        set_led(i, 255, 0, 0)
        time.sleep(0.2)
        set_led(i, 0, 255, 0)
        time.sleep(0.2)
        set_led(i, 0, 0, 255)
        time.sleep(0.2)

コツ・安全上の注意

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

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

エディタで開く →

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