M5Stack ATOM Matrix体验以及使用esphome接入homeassistant模板
前言:
最近购入了一个ATOM Matrix,挺喜欢。模块化设计,方便使用的同时也很迷你。买入它的原因是为了使用他自带的mpu6886陀螺仪模块,同时他使用的esp32,方便我使用esphome进行接入。

产品细节:
东西到手后发现做工一般般,总体上说的过去,但是略有瑕疵。提供的资料也有限。自带有测试程序,按键会自动变换显示内容。灯珠如果长时间处于高亮状态会略微发烫。背后以及低端有io口,可以和其他模组直接插接组合使用,非常方便。
官方说支持Arduino,以及他们提供的图形化编程软件UIFlow,看起来挺有意思。不过既然核心是esp32,那么应该也支持esphome。所以我决定用esphome把他接入homeassistant。
UIFlow接入homeassistant:
花了一点时间尝试使用esphome接入,大部分成功。包括:按钮,加速度仪、角速度仪,5*5灯板,均可在homeassistant中进行操作。
以下为提供模板:
注意:由于zdm不支持代码块,粘贴yaml代码会导致缩进错误 ,我将yaml代码转换成了json代码。如需使用则将json代码转换为yaml代码即可粘贴进esphome。
=================================代码=================
{ "esphome": { "name": "gradienter", "friendly_name": "gradienter" }, "esp32": { "board": "esp32dev", "framework": { "type": "arduino" } }, "logger": null, "api": { "encryption": { "key": "" } }, "ota": { "password": "homeassistant" }, "wifi": { "ssid": null, "password": null, "ap": { "ssid": "Gradienter", "password": "homeassistant" } }, "captive_portal": null, "i2c": { "sda": 25, "scl": 21, "scan": true, "id": "bus_a" }, "sensor": [ { "platform": "mpu6886", "i2c_id": "bus_a", "id": "gradienter_info", "address": 104, "update_interval": "1s", "accel_x": { "name": "MPU6886 Accel X" }, "accel_y": { "name": "MPU6886 Accel Y" }, "accel_z": { "name": "MPU6886 Accel z" }, "gyro_x": { "name": "MPU6886 Gyro X" }, "gyro_y": { "name": "MPU6886 Gyro Y" }, "gyro_z": { "name": "MPU6886 Gyro z" }, "temperature": { "name": "MPU6886 Temperature" } } ], "binary_sensor": [ { "platform": "gpio", "pin": 39, "name": "user_button" } ], "light": [ { "platform": "esp32_rmt_led_strip", "rgb_order": "GRB", "pin": 27, "num_leds": 25, "rmt_channel": 1, "chipset": "ws2812", "name": "My Light", "effects": [ { "random": { "name": "My Slow Random Effect", "transition_length": "30s", "update_interval": "30s" } }, { "random": { "name": "My Fast Random Effect", "transition_length": "4s", "update_interval": "5s" } }, { "pulse": { "name": "Fast Pulse", "transition_length": "0.5s", "update_interval": "0.5s", "min_brightness": "0%", "max_brightness": "100%" } }, { "pulse": { "name": "Slow Pulse", "update_interval": "2s" } }, { "random": { "name": "Random Effect With Custom Values", "transition_length": "5s", "update_interval": "7s" } }, { "strobe": { "name": "Strobe Effect With Custom Values", "colors": [ { "state": true, "brightness": "100%", "red": "100%", "green": "90%", "blue": "0%", "duration": "500ms" }, { "state": false, "duration": "250ms" }, { "state": true, "brightness": "100%", "red": "0%", "green": "100%", "blue": "0%", "duration": "500ms" } ] } }, { "flicker": { "name": "Flicker Effect With Custom Values", "alpha": "95%", "intensity": "1.5%" } }, { "addressable_rainbow": { "name": "Rainbow Effect With Custom Values", "speed": 10, "width": 50 } }, { "addressable_color_wipe": null }, { "addressable_scan": { "name": "Scan Effect With Custom Values", "move_interval": "100ms", "scan_width": 1 } }, { "addressable_twinkle": { "name": "Twinkle Effect With Custom Values", "twinkle_probability": "5%", "progress_interval": "4ms" } }, { "addressable_random_twinkle": { "name": "Random Twinkle Effect With Custom Values", "twinkle_probability": "5%", "progress_interval": "32ms" } }, { "addressable_fireworks": { "name": "Fireworks Effect With Custom Values", "update_interval": "32ms", "spark_probability": "10%", "use_random_color": false, "fade_out_rate": 120 } } ] } ], "remote_transmitter": { "pin": "GPIO12", "carrier_duty_percent": "50%" } }
============================代码结束===============
接入成功后效果:按钮以及灯光控制。
总结:
使用中的个人主观感受。
优点:
设备整体小巧,集成度高,造型还算美观,不需要再弄个外壳。配合其他零件插接方便,很喜欢这种模块化设计。
缺点:
使用中任务重的时候发热较大,灯光不建议长时间工作在高亮度,红外范围较小,io接口相对较少。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

AI购物管家-电脑数码
校验提示文案
AI购物管家-电脑数码
校验提示文案