讨论群: 810581215
- 外观精致
- 支持磁吸底座
- 多功能:人体存在,距离调节,呼吸检测,环境亮度,红外遥控(支持收发,自定义功能),蓝牙网关(测试过米家低功耗)
- 方便二次开发:
TYPE-C
接口,支持串口调试(USB Serial/JTAG) - 成本低廉(总体硬件成本
60
左右) - 稳定性极好
- 主控
ESP32C3
!!!单排母一定要选5.0塑高的 !!!
用剪刀减去针脚1mm左右方便插入底座,为什么要这么折腾,实验出来的,否则雷达和壳贴的太近会影响雷达工作
名称 | 型号 | 数量 | PCB 标注 | 链接 |
---|---|---|---|---|
X-RA2413MT 毫米波雷达模块 | 1 | X-RA2413MT | 购买 | |
VS/HX1838/PC638 红外接收头 | 1 | HX1838 | 购买 | |
3MM 940nm 红外发射管 | 2 | LA / LB | 购买 | |
光敏电阻 5516 | 1 | GL5516 | 购买 | |
ME1117A33B3G 线性稳压器 | 1 | 1117-3 | 购买 | |
ESP32-C3-WROOM-02-H4 模块 | 1 | ESP32-C3-WROOM-02-H4 | 购买 | |
贴片 S8050 J3Y 贴片三极管 500MA SOT-23 | 1 | J3Y | 购买 | |
0603 贴片电阻 1MΩ 1 兆欧 1/10W 精度 ±1% | 1 | R1 | 购买 | |
0603 贴片电阻 10KΩ 10 千欧 1/10W 精度 ±1% | 3 | R2 / R3 / R4 | 购买 | |
直插固态电解电容 1000uF 6.3V 6.3*11.5mm | 1 | C1 | 购买 | |
1206 贴片电容 4.7UF | 1 | C2 | 购买 | |
2.54mm 间距 单排母 | 2.54mm-1*5P 单排母5.0塑高!!! | 1 | X-RA2413MT | 购买 |
贴片 USB-3.1 插座 Type-C 母座 16P | 1 | TYPE-C | 购买 | |
直插 6*6 轻触开关 | 5、0 高 | 1 | BUTTON | 购买 |
红外转发器外壳 | 1 | - | 购买 | |
304 不锈钢平头自攻螺丝 | M1.7*6 | 3 | 外壳商家也会送 | 购买 |
车载磁吸出风口手机支架 | 1 | - | 购买 |
打板(板厚选1mm
)-->焊接-->组装-->刷机
- 支持运动、静止状态显示
- 检测距离显示
- 动静距离显示,能量显示
- 动静灵敏度调节
- 动静距离调节
ESP32
状态显示(IP、MAC、CPU
温度,运行时间)- 蓝牙代理
- 红外收发
- OTA
GPIO | 功能 |
---|---|
0 | 红外接收 |
1 | 红外发射 |
2 | 背部自定义按键 |
3 | 光敏电阻电压 |
4 | 毫米波状态 |
5、6 | 毫米波串口 |
组件 | 含义 |
---|---|
espmmw_brightness | 环境亮度 |
espmmw_button | 毫米波背后按钮 |
espmmw_cpu_temprature | CPU 温度 |
espmmw_get_conf | 获取当前毫米波配置 |
espmmw_ip | IP |
espmmw_mac | MAC |
espmmw_max_move_distance | 最大移动距离调节(最大距离=n*0.75 米) |
espmmw_max_static_distance | 最大静止距离调节 (最大距离=n*0.75 米) |
espmmw_mmw | 毫米波状态(ON-有人,OFF-无人)态 |
espmmw_mmw_status | 毫米波状态(OFF-关闭,MOVE-运动,STATIC-静止,ON 运动或静止) |
espmmw_move_distance | 当前运动距离 |
espmmw_move_energy | 当前运动能量值 |
espmmw_move_sensitivity | 移动灵敏度调节 |
espmmw_reboot | 重启 esp |
espmmw_reset_mmw | 重置毫米波设置 |
espmmw_rr_b_1 | 红外接收 demo |
espmmw_signal | WiFi 信号强度 |
espmmw_static_distance | 当前静止距离 |
espmmw_static_energy | 当前静止能量值 |
espmmw_static_sensitivity | 静止灵敏度调节 |
espmmw_tv_on_off | 红外发送 demo |
espmmw_unattended_duration | 无人持续时间调节 |
espmmw_uptime | 运行时间 |
-
编译和刷机接入
HASS
esphome
安装的根据自己环境来,以下是我自己安装方式,尽量装最新版本Linux
( 以下是在x86
的Ubuntu
下操作的,其他Linux
类似)2、
docker-compose.yml
文件增加如下内容version: "3" services: esphome: image: esphome/esphome:latest container_name: esphome volumes: - /etc/localtime:/etc/localtime:ro - /opt/esphome/conf:/config - /dev:/dev environment: - TZ=Asia/Shanghai network_mode: host restart: always privileged: true
3、安装
esphome
的docker
docker-compose -f docker-compose.yml up -d
4、打开
esphome
的页面http://IP:6052
,新增espmmw
的配置文件,编辑配置文件删除全部,将文件夹esphme的配置粘贴上去,按需修改后保存,mini
文件夹内是自用精简版本,去除了一些无用的距离信息,只保留参数调节5、
docker
服务器执行如下命令进入esphome
的docker
内部docker exec -it esphome bash
6、设置 https 代理(这部比较重要,编译需要从
git
下载依赖)export https_proxy=http://IP:PORT
7、将毫米波通过数据线插入服务器
8、执行编译并刷入
esphome run espmmw.yaml
Windows
将编译的固件放入flash_tool,按说明操作
7、接入
HASS
-
有人无人触发过程
组件 含义 espmmw_mmw 毫米波状态(ON-有人,OFF-无人) espmmw_move_energy 当前运动能量值 espmmw_move_sensitivity 移动灵敏度调节 espmmw_static_energy 当前静止能量值 espmmw_static_sensitivity 静止灵敏度调节 espmmw_unattended_duration 无人持续时间调节 1、当
espmmw_move_energy
超大于设定的espmmw_move_sensitivity
时espmmw_mmw
触发ON
2、当
espmmw_static_energy
小于设定的espmmw_static_sensitivity
时espmmw_mmw
触发OFF
3、
espmmw_mmw
触发ON
之前都是通过espmmw_move_energy
的值判断的,一旦触发ON
后,后面的检测都是通过espmmw_static_energy
来判断是否OFF
的4、我把
espmmw_move_sensitivity
设置成99
是为了防止一些轻微的动作误触有人,比如阳台的衣服或者窗帘微动5、我把
espmmw_static_sensitivity
设置成15
是为了更好的检测呼吸,防止误触无人6、实际使用中大家可以根据环境内的
espmmw_static_energy
值来设置,因为有些环境espmmw_static_energy
就是高于15
的,我自己家用15
是没啥问题的,但有些地方调高一点比如阳台,防止衣服微动导致无法触发espmmw_mmw
的OFF
-
红外收发
红外接收一般用来学习遥控器后模拟,或者接收指定代码后,执行特定操作
remote_receiver: pin: number: 0 inverted: true rmt_channel: 2 dump: all
发 RAW 码
将学习到的
RAW
码填入remote_transmitter: pin: 1 carrier_duty_percent: 50% button: - platform: template name: ${device_name}_tv_on_off on_press: - remote_transmitter.transmit_raw: carrier_frequency: 38kHz code: [#这里放入日志中打印的RAW码]
-
蓝牙网关
目前蓝牙网关相关功能还有问题不建议用, 蓝牙的
2.4G
和WiFi
的2.4G
有会干扰,建议长期测试再使用直接采集
esp32_ble_tracker: - platform: xiaomi_lywsd03mmc mac_address: #mac bindkey: #bindkey temperature: name: ${device_name}_mi_temperature humidity: name: ${device_name}_mi_humidity battery_level: name: ${device_name}_mi_battery
ESPHOME
代理ESPHOME
和HA
添加配置后重启,HA
集成里就会出现支持的设备,配置如下HA
的configuration.yaml
添加# Bluetooth bluetooth:
ESPHOME
配置添加esphome: name: ${device_name} on_boot: - priority: 600 then: - esp32_ble_tracker.stop_scan: esp32_ble_tracker: scan_parameters: interval: 1100ms window: 1100ms bluetooth_proxy: active: true time: - platform: sntp on_time: # Every 1 minutes - seconds: 0 minutes: /1 then: - esp32_ble_tracker.start_scan:
- 安装尽量选择墙上安装,不建议吸顶安装
- 尽量将电源口对地或天,使天线平行地面获得最大范围
- 安装及雷达范围参考X-RA2413MT.pdf
- 无法
api
调用红外发射(软件BUG
等待ESPHOME
修复) - You tell me