Using the Unit ToF4M ・ 使用 Unit ToF4M
M5StackのUnit ToF4Mをコントローラーに接続する最小構成。配線とBOMつき。
この構成をエディタで開く・編集する →| 部品 | 役割 | ポート | リンク・価格 |
|---|---|---|---|
| ATOM Lite | Controller | grove_i2c, i2c, gpio | official page — $7.5 |
| Unit ToF4M | unit | grove_i2c | official page — $8.95 |
M5Stack ATOM LiteとUnit ToF4M(4m測距センサー)で作る、かんたんな距離測定装置です。ToF4Mがレーザーで最大4m先までの距離を測り、ATOM Liteがその値を読み取って表示します。I2C接続なので配線はたった1本。
# M5Stack ATOM Lite + Unit ToF4M (VL53L1X distance sensor)
# Wiring: Unit ToF4M -> ATOM Lite Grove Port (I2C)
import time
from machine import Pin, I2C
from neopixel import NeoPixel
# I2C setup for ATOM Lite (Grove port: SDA=26, SCL=32)
i2c = I2C(0, scl=Pin(32), sda=Pin(26), freq=400000)
# VL53L1X default I2C address is 0x29
TOF_ADDR = 0x29
# Initialize sensor (simplified - assumes sensor is ready)
# For full init, use a library like vl53l1x.py
# Here we just read the distance register (0x00-0x01)
def read_distance():
# Read 2 bytes from register 0x00 (distance in mm)
data = i2c.readfrom_mem(TOF_ADDR, 0x00, 2)
dist = (data[0] << 8) | data[1]
return dist
# Setup RGB LED (on ATOM Lite, GPIO 27)
neo = NeoPixel(Pin(27), 1)
while True:
try:
dist = read_distance()
print("Distance: %d mm" % dist)
# Change LED color based on distance
if dist < 200:
neo[0] = (255, 0, 0) # red for close
elif dist < 1000:
neo[0] = (0, 255, 0) # green for medium
else:
neo[0] = (0, 0, 255) # blue for far
neo.write()
except Exception as e:
print("Error:", e)
neo[0] = (0, 0, 0)
neo.write()
time.sleep(0.5)
この作り方はAIが構成から生成したものです(未検証)。通電前に配線とコードをご確認ください。
この構成はAIが実在するM5Stack部品から設計し、ポート互換をサーバで検証したものです。編集・共有できます。
エディタで開く →UnitKit は M5Stack® 製品向けの非公式ツール。作りたいものを書くと、部品リストと配線図が出ます。