hass工控
home assistant (用haos占内存少)
下载地址 https://github.com/home-assistant/operating-system/releases
下载 haos_generic-aarch64-14.0.qcow2.xz 解压后导入kvm/pve虚拟机运行
虚拟机部署
haos需要uefi方式启动
haos_generic-x86-64-14.0.img
导入镜像
qm importdisk 201 /home/jack/upfile/haos_generic-x86-64-14.0.img local --format=qcow2
修改IP
login #进入终端
nano /etc/NetworkManager/NetworkManager.conf # 配置管理的网卡
ls -l /etc/NetworkManager/system-connections/*.nmconnection #配置网卡的IP设置
nmcli dev status # NetworkManager 命令行工具
nmcli con show #查看网口
nmcli dev #查看网口
空配置
nmcli con add type ethernet ifname enp6s18 con-name static-enp6s18 ipv4.addresses 192.168.11.118/24 ipv4.gateway 192.168.11.111 ipv4.dns 114.114.114.114 ipv4.method manual
排除故障
nmcli con delete static-enp6s18
nmcli device set enp6s18 managed yes
nmcli con modify static-enp6s18 connection.interface-name enp6s18
nmcli con up static-enp6s18
配置
nmcli con edit "Supervisor enp0s18"
print ipv4
set ipv4.dns 8.8.8.8
set ipv4.addresses 192.168.11.221/24
set ipv4.gateway 192.168.11.1
save
quit
生效
systemctl restart NetworkManager #重启系统生效
systemctl disable systemd-networkd #免得互相抢网卡
systemctl enable NetworkManager #重启系统生效
注解掉 /etc/network/interfaces #内网卡占用
ping 192.168.11.1
fping -lt 1000 192.168.11.1
http://192.168.11.221:8123/
Supervisor部署
haio 必须使用debian12 不可以lxc容器部署
不建议装 portainer 管理docker
timedatectl set-timezone Asia/Shanghai
hostname --ip-address
apt install apparmor apparmor-utils cifs-utils wget curl dbus jq libglib2.0-bin \
lsb-release network-manager nfs-common systemd-journal-remote \
systemd-resolved udisks2 avahi-daemon dbus software-properties-common -y
ls -lh /etc/NetworkManager/system-connections/
systemctl restart networking.service
sup实现包
- os-agent 与主机系统通信
- homeassistant-supervised 协调docker安装其他服务
https://github.com/home-assistant/os-agent/releases/latest #下载deb包
https://github.com/home-assistant/os-agent/releases/download/1.6.0/os-agent_1.6.0_linux_x86_64.deb
dpkg -i os-agent_1.6.0_linux_x86_64.deb
gdbus introspect --system --dest io.hass.os --object-path /io/hass/os #检查安装成功与否
wget -O homeassistant-supervised.deb https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb
mv homeassistant-supervised.deb /mnt/homeassistant-supervised.deb
chmod 777 /mnt/homeassistant-supervised.deb
apt install /mnt/homeassistant-supervised.deb #自动安装器
systemctl status hassio-supervisor #开始部署docker应用
timedatectl
curl 127.0.0.1:8123 -v
检查
aa-status
ha supervisor info | grep healthy
ha jobs options --ignore-conditions healthy # 忽略健康检查
ha jobs options --ignore-conditions none # 恢复
nano /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="splash verbose apparmor=1 security=apparmor"
update-grub
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=boot
查看启动项
lsblk -f
efibootmgr --create --disk /dev/sda --part 1 --label "haos" --loader "\EFI\DEBIAN\GRUBX64.EFI"
efibootmgr --create --disk /dev/sda --part 1 --label "deb12" --loader "\EFI\DEBIAN\SHIMX64.EFI"
efibootmgr -v
设置IP
网卡会被修改成 "Supervisor ens18"
立马生效
nmcli con modify "Supervisor ens18" +ipv4.addresses 192.168.11.118/24
nmcli con modify "Supervisor ens18" +ipv4.dns 8.8.8.8
nmcli con show "Supervisor enp0s18"
nmcli con down "Supervisor enp0s18"
nmcli con up "Supervisor enp0s18"
ha命令
ha info
ha addons install core_ssh # Terminal & SSH
总配置文件
/config/configuration.yaml
HACS商店
在线装
wget -O - https://get.hacs.xyz | bash -
docker exec -it hass /bin/bash
mkdir -p www
mkdir -p custom_components/hacs
unzip hacs.zip -d /opt/hass/config/custom_components/hacs
开发者工具.重启
配置.设备与服务
输入 hacs
git 设备认证
加载项
本质是docker服务
需要魔法环境很多安装 需要访问 registry-1.docker.io,可以借助旁路由
建议开启高级模式
重启:设置.右上角三个点.重启ha
Mosquitto网关
Mosquitto broker
配置.加载项.Mosquitto
加载项+集成都有 mqtt相关
设置中Logins
- username: umqtt
password: passwd
-
File editor
-
Terminal & SSH
samba
设置用户名,密码
Node-RED
配置中设置账号密码,再启动
设置 ssl为否
集成📦
智能家居
涂鸦
集成中 搜 tuya
小米
xiaomi_home 搜github 安装到smb//xxx/config/custom_components
Node-RED Companion
在hacs商店集成 Release v3.1.7
hacs->Node-RED Companion 功能 打通hass与nodeRed
通过企微群机器人
https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=4485185b-9a03-42ad-8c69-a5dbb9e69fa0
例如 post请求发信息到群里
MQTT集成
需要配置 连接上加载项上的Mosquitto broker服务
MQTT 设置->重新配置 MQTT (一般默认即可监听收到消息)
代理 127.0.0.1
端口 1883
用户名 umqtt
密码 passwd
mqtt
apt install mosquitto-clients
#//当前连接数
mosquitto_sub -h mqtt02.oq.17121.top -p 1883 -u mqtt -P pass -v -t \$SYS/broker/clients/connected
mosquitto_sub -h mqtt02.oq.17121.top -p 1883 -u mqtt -P pass -v -t \$SYS/broker/subscriptions/count
ESP
ESPHome
ha内构建.烧入到设备.集成中添加
通过 ip:6053管理
加入mqtt
mqtt web客户端
# MQTT 配置
mqtt:
broker: 192.168.11.221
port: 1883
username: mqtt
password: passwd
discovery: true
discovery_prefix: homeassistant
在集成mqtt模块中发现实体
编译参数
# GPIO2 LED 配置
light:
- platform: monochromatic
name: "Board LED"
output: led_output
output:
- platform: ledc
pin: GPIO2
id: led_output
frequency: 1000 Hz
二次可用ota云升级
写入固件
建议web方式写入
下载bin
到: https://web.esphome.io/
选中文件
开始 Erasing 擦写
连入wifi设置 192.168.4.1
tasmota固件
tasmota + node-red
通过web https://tasmota.github.io/install/
写入bin文件
终端开启发现
setOption19 0
设置功能
设置.模块.GPIO02=Relay #//即开关
分类型
固件名称 | 适用场景 |
---|---|
tasmota32.bin | 通用版本,适用于大多数 ESP32 开发板,提供基本 WiFi 和 MQTT 功能。 |
tasmota32-sensors.bin | 包含更多传感器支持(如温湿度、光照、气体传感器等),适合需要额外传感器集成的应用。 |
tasmota32-bluetooth.bin | 添加了蓝牙支持(BLE),适用于需要蓝牙功能的场景。 |
tasmota32-knx.bin | 支持 KNX 协议,适合特定智能家居系统的需求。 |
tasmota32-display.bin | 包含显示屏支持(如 OLED、TFT 显示屏),适用于带屏幕的项目。 |
编译环境
https://tasmota.github.io/docs/Gitpod/
Master Release: https://gitpod.io#https://github.com/arendst/Tasmota/tree/master
micropython
Thonny菜单.运行.配置解释器.选micropython解释器.安装和更新micropython
选串口和文件(*.factory.bin).安装
模拟器 https://wokwi.com/projects/305568836183130690
传感器外设
G -- GND ; 接地
V -- VCC ; 供电
S -- I/O口 信号
opc-ua网关
python-opcua
node-red-contrib-opcua
本地访问
播放声音
apt install alsa-utils alsa-tools -y
aplay -l
arecord -l
cat /proc/asound/cards
lsmod | grep snd
lspci -nn | grep Audio
ls -l /dev/snd/*
fuser --all --verbose /dev/snd/*
speaker-test -c 8
apt install mopidy-mpd mopidy-http
version: '3.8'
services:
mopidy:
image: mopidy/mopidy:latest
container_name: mopidy
volumes:
- ./config:/var/lib/mopidy/config
- ./media:/var/lib/mopidy/media
- ./data:/var/lib/mopidy/cache
ports:
- "6680:6680" # Web 界面端口
- "6600:6600" # MPD 端口
environment:
- PULSE_SERVER=unix:/run/user/1000/pulse/native
restart: always
重置密码
ha authentication reset --username "JohnDoe" --password "123SuperSecret!"
ESP32-S3-cam开发板跟ESP32-S3核心板资料包
链接:https://pan.baidu.com/s/1Vid5yvQBuNgaCaKLUE0yEA
提取码:Qj97
micropython教程:https://blog.csdn.net/m0_60853221/article/details/143649019
扩展板资料:https://pan.baidu.com/s/1YjGtnvHj3FrLQnUXJPRyxg?pwd=64N1
提取码:64N1
最丝滑的AI实时语音 听声辨人 多人互动 (开源ESP32)
https://www.bilibili.com/video/BV1G4pweCERX
ESP32-S3-WROOM-1-N16R8 内置sram512K,内置ROM384K,模组外挂16M字节的SPI Flash,外挂8M psram(psram需要程序配置启用)