赞
踩
pi安装homeassistant
HACS
ubuntu测试有问题,debian10没有问题
supervisor安装
一键安装supervisor脚本地址
homeassistant开发者文档
docker学习
接入电网
安装完了不是立马可以进入,而是要等系统安装一系列依赖等,还有就是addon可能也不会很快出来!!,最好保证网络通畅,让其更新.
教程官网
在gitee上面创建一个同步仓库URL为https://github.com/hassio-addons/repository
https://gitee.com/bingooo/hassio-addons-repository.git
然后
然后添加自己同步的gitee链接即可
64位的可以用vscode等
必须开启高级模式才能够使用ssh等
记住,可以要在Windows凭据里面添加这个密码,homeassistant samba有时候不会询问你的密码
关闭ssl才能够用http访问
安装完后,配置
authorized_keys: ["这里是你的公钥"]
apks: []
password: '这里是你的密码'
server:
tcp_forwarding: false
网络要设置一个端口才可以访问
ssh No supported authentication methods available (server sent:publickey,keyboard-interactive)
如果用mobaxterm登录报ssh No supported authentication methods available (server sent:publickey,keyboard-interactive)
注意:用户名是root!!!
则在编辑栏把私钥地址填入
在插入nodemcu后重新进入一下界面即可显示
turn_on_action 以及 on_turn_on区别一定要分清
显示组件
SSD1306 OLED显示器
DHT温度+湿度传感器
esphome: name: nodemcu platform: ESP8266 board: nodemcuv2 wifi: ssid: "V10" password: "13699689976" # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "Nodemcu Fallback Hotspot" password: "0yKsM7vxVPKr" captive_portal: # Enable logging logger: # Enable Home Assistant API api: password: "1152679377" ota: password: "1152679377" switch: - platform: gpio name: "led" id: led pin: 16 inverted: yes #初始化为off restore_mode: ALWAYS_OFF i2c: sda: D2 scl: D1 sensor: - platform: dht pin: D7 temperature: name: "Living Room Temperature" id: temperature1 humidity: id: humidity1 name: "Living Room Humidity" update_interval: 10s model: DHT11 font: - file: "fonts/SIMYOU.ttf" id: my_font size: 12 display: - platform: ssd1306_i2c model: "SSD1306 128x64" address: 0x3C lambda: |- it.print(0, 0, id(my_font), "WillPower:"); it.printf(0, 15, id(my_font), "Temp: %.1f°C", id(temperature1).state); it.printf(0, 30, id(my_font), "Humidity: %.1f%%", id(humidity1).state); if (id(led).state) { it.print(0, 45, id(my_font), "state: ON"); } else { it.print(0, 45, id(my_font), "state: OFF"); }
首先图片放的位置挨着你的yaml文件就行
然后在image中包含你的文件,不用预处理文件,这点esphome会帮你处理的
ESP8266软件PWM输出
输出组件
高速风扇
pwm灯形式
output:
- platform: esp8266_pwm
id: pwm_output
pin: D4
frequency: 100 Hz
- platform: esp8266_pwm
id: ledpwm
pin: D0
frequency: 100 Hz
inverted: yes
light:
- platform: monochromatic
output: ledpwm
name: "LED"
id: led
output:
- platform: esp8266_pwm
pin: D0
frequency: 1000 Hz
id: pwm_output
inverted: yes
fan:
- platform: speed
output: pwm_output
name: "Living Room Fan"
# 首先要在homeassistant中添加 # Example configuration.yaml entries input_text: text1: name: Text 1 initial: Some Text text2: name: Text 2 min: 8 max: 40 text3: name: Text 3 pattern: "[a-fA-F0-9]*" text4: name: Text 4 mode: password #然后在esphome中调用homeassistant的text_sensor组件 text_sensor: - platform: homeassistant id: ssd1306input entity_id: input_text.text1 #这里调用第一个其实text1就是其id了 # 只要这个文本改变了,那么就会在esphome中也可以用,比如ssd1306中 display: - platform: ssd1306_i2c model: "SSD1306 128x64" address: 0x3C lambda: |- it.printf(0, 0, id(my_font),"Tmp: %s", id(ssd1306input).state.c_str()); it.printf(0, 15, id(my_font), "Temp: %.1f°C", id(temperature1).state); it.printf(0, 30, id(my_font), "Humidity: %.1f%%", id(humidity1).state); if (id(led).state) { it.print(0, 45, id(my_font), "state: ON"); } else { it.print(0, 45, id(my_font), "state: OFF"); }
display:
- platform: ssd1306_i2c
model: "SSD1306 128x64"
address: 0x3C
lambda: |-
it.strftime(0, 0, id(my_font1), "%H:%M:%S", id(homeassistant_time).now());
ESP32蓝牙组件连接itag
ESPHOME舵机控制
可以使用蓝牙调试助手去获取itag的mac地址
esphome: name: nodemcu platform: ESP8266 board: nodemcuv2 on_boot: then: lambda: |- id(door).publish_state(false);#在开机赋值 # Example configuration entry servo: - id: my_servo output: pwm_output # Example output platform # On ESP32, use ledc output output: - platform: esp8266_pwm id: pwm_output pin: D4 frequency: 50 Hz # Example configuration entry binary_sensor: - platform: homeassistant id: blacktag entity_id: binary_sensor.black_itag_button on_click: then: - servo.write: id: my_servo level: !lambda |- if(id(door).state) { id(door).publish_state(false); return 1.0; } else { id(door).publish_state(true); return -1.0; } - platform: template name: "Door" id: door
sensor: # Minimal configuration of the standard time and date sensor - platform: time_date display_options: - 'date_time_iso' - 'time' # Build on the standard sensor to produce one that can be customized - platform: template sensors: time_formatted: friendly_name: "Date and time" value_template: "{{ as_timestamp(states('sensor.date_time_iso')) | timestamp_custom('%A %B-%d %H:%M:%S') }}" icon_template: mdi:calendar-clock # 平台名,不用多说 - platform: command_line name: CPU Temperature # 用于获取温度数据的命令 command: "cat /sys/class/thermal/thermal_zone0/temp" #传感器数据的单位 unit_of_measurement: "°C" # 若未定义模板,则直接将 command 传回的数据作为传感器的值。 value_template: '{{ value | multiply(0.001) | round(1) }}' #(可选)更新间隔,默认为 60s scan_interval: 20 #(可选)命令执行超时设置,默认为 15s command_timeout: 15
usermod -a -G video hass
将用户加入摄像头的使用组中,然后重启
Raspberry Pi Camera
github链接
在上述链接下载最新的hacs.zip
然后在Homeassistant的根目录新建custom_components
和www
两个文件夹,再在custom_components
文件夹中新建hacs文件夹
,将下载的hacs.zip解压到hacs
文件夹中,然后重启homeassistant,然后在集成中搜索hacs安装
然后
打开这个网址,将其中的key填入重启即可
==如果使用了科学上网,hacs
在configuration.yaml中加入
将u盘插入电脑在boot分区建立文件夹\CONFIG\network
然后在network中新建文件为my-network
然后在其中填入一下wifi信息即可
[connection] id=my-network uuid=72111c67-4a5d-4d5c-925e-f8ee26efb3c3 type=802-11-wireless [802-11-wireless] mode=infrastructure ssid=MY_SSID # Uncomment below if your SSID is not broadcasted #hidden=true [802-11-wireless-security] auth-alg=open key-mgmt=wpa-psk psk=MY_WLAN_SECRET_KEY [ipv4] method=auto [ipv6] addr-gen-mode=stable-privacy method=auto
键盘键入ctrl+alt+F2进入tty2
然后输入
nmcli radio
保证wifi已经启用
现在扫描并列出可用的 wifi 访问:
nmcli device wifi rescan
nmcli device wifi
连接到无线网络:
在您的 ssid 和密码周围使用引号:
nmcli device wifi connect "YOUR_SSID" password "YOUR_WIFI_PASSWORD"
这将尝试连接到您的 SSID,如果成功,将为您生成网络配置文件。
输出将类似于
“Device ‘wlan0’ successfully activated with…”
然后再次检查您的连接:
nmcli con show
您应该看到至少两个配置文件并且都是绿色的。
如果您看到一些想要删除的配置文件,可以使用以下方法删除它们:
nmcli connection delete CONNECTION_NAME
这些在您的网络上可能有两个单独的 IP 地址:一个用于以太网,一个用于 wifi。
您可以使用以下方法检查 IP 地址:
ip addr show
您可以从 Supervisor > System > Host card 在 UI 中设置静态 IP 地址,
但以下步骤将向您展示如何使用 nmcli 设置它:
nmcli connection show 列出您的连接
nmcli con show "Your Connection Name" 列出该连接的当前属性
nmcli con edit "Your Connection Name" 进入该连接的编辑模式
nmcli> print ipv4 将向您显示该连接的 ipv4 属性
== 这步开始!==
添加您的静态 IP 地址(手动方法选择“是”);
nmcli> set ipv4.addresses 192.168.1.10/24
Do you also want to set ‘ipv4.method’ to ‘manual’? [yes]:
如果您愿意,您还可以在此处编辑设置 dns 服务器和本地网关。如果您使用 Adguard 附加组件,这很重要:
nmcli> set ipv4.dns 1.1.1.1
nmcli> set ipv4.gateway 192.168.1.1
nmcli> save
nmcli> quit
最后,您应该使用以下方法完全重新启动
hassio ho reboot
使用 nmcli 禁用 ipv6(可选):
nmcli connection show
列出您的连接
nmcli con show "Your Connection Name"
列出该连接的当前属性
nmcli connection modify "Your Connection Name" ipv6.method "disabled"
然后重新启动您的家庭助理实例。
创建接口nmcli con add con-name V10 ifname ens33 type ethernet ip4
修改配置文件执行生效:systemctl restart network 或 nmcli con reload nmcli命令生效:nmclicon down eth0 ; nmclicon up eth0
将镜像通过mobaxterm传入
创建正常的虚拟机,记住id
解压命令 xz -d haos_ova-6.1.qcow2.xz
导入命令
qm importdisk 101 haos_ova-6.1.qcow2 local-lvm
qm importdisk
将bios改成UEFI
需要在ESPHOME设置中打开
注意URL
id
如果你想使用Home Assistant来托管或服务静态文件
那么在配置路径(/config)下创建一个名为www的目录。
例如,www/中的静态文件可以通过以下URL http://your.domain:8123/local/访问
Audio.mp3将以http://your.domain:8123/local/audio.mp3访问
== 如果您必须第一次创建www/文件夹,则需要重新启动Home Assistant。==
== 来自www文件夹(/local/url)的文件不受Home Assistant身份验证的保护。存储在这个文件夹中的文件,如果URL是已知的,任何人都可以在没有身份验证的情况下访问。==
链接
这种相机的特点就是利用网页访问,有的还带验证登录名和密码等
\# Example configuration.yaml entry
camera:
- platform: mjpeg
mjpeg_url: http://192.168.1.92/mjpeg
带密码的:
camera:
- platform: mjpeg
name: Livingroom Camera
mjpeg_url: http://IP:PORT/mjpg/CAMERASHORTNAME/video.mjpeg
username: BLUE_IRIS_USERNAME
password: BLUE_IRIS_PASSWORD
authentication: basic
当不再使用mqtt的时候,要删除mqtt的实体的时候删不掉,应当先禁用其实体,然后点开其关联的实体然后删除即可
eth0:
dc:a6:32:ca:62:38
wlan:
42:a6:4e:05:9a:fa
中间
eth0:
02:42:AC:1E:21:02
wlan:
DC:A6:32:CA:60:53
x86
eth0:
5A:50:63:15:D7:A1
sensor:
- platform: tcp
host: 192.168.3.112
port: 2020
payload: "good"
timeout: 10
value_template: "{{ value.split(';')[0] }}"
unit_of_measurement: Bar
其工作的方式就是,作为tcp客户端连接tcp服务器,然后周期性的给服务器发送payload
有效载荷,服务器接收到这个载荷之后,给出相应值,而value_template
可以对值做出处理提取自己想要的值然后显示
注:只有在发送payload
之后的time_out
时间服务器才能够向其发送值,其他时间,他会主动断开连接
vim /etc/hosts
添加
注意是在本机执行命令
添加add_on仓库 https://github.com/thomasmauerer/hassio-addons
右上角点击更新
配置如下:
host: 192.168.0.144 share: surveillance_ST500 target_dir: backup username: xxxxx password: xxxxx keep_local: all keep_remote: all trigger_time: "00:20" trigger_days: - Mon - Tue - Wed - Thu - Fri - Sat - Sun exclude_addons: - core_mariadb exclude_folders: - media
添加add_on仓库 https://github.com/sabeechen/hassio-google-drive-backup
右上角点击更新
直接打开,然后打开web UI
按照指引在google网盘获取key,填入即可
hacs sonoffLAN项目地址
首先在hacs下载
然后config文件中
然后重启,就可以看到易微联的设备了。
连接后,就可以看到.sonoff.json
这个文件,有了这个文件你就不需要联网了,但是如果有新的设备连入,就删除这个文件,他就会重新update.
摄像头进入还不能直接控制,先添加实体,把代号拿到
然后调用一下服务,这个就可以控制摄像头
device_tracker:
- platform: ping
hosts:
zyjphone: 192.168.10.118
count: 5
interval_seconds: 10
consider_home: 120
然后生成know_devices.yaml文件,里面可以配置图片这些
zyjphone:
name: xxx
mac: 'xx:b6:07:xx:xx:xx'
icon: mdi:account
picture: local/zyj.jpg
track: true
consider_home: 0:02:00
https://www.bilibili.com/read/cv17141953
我也是旁路由不得行,不旁路由就可以了。 自己设置问题…
首先要安装媒体集成:
然后必须要把挂载的文件夹给标出来!!必须
然后需要给一个shellcommand
然后自动化挂载:
alias: mount nas files
description: ""
trigger:
- platform: homeassistant
event: start
condition: []
action:
- service: shell_command.mount_nas_folder
data: {}
mode: single
网站
不过不一样,简体叫zh-Hans,繁体叫zh-Hant
pip3 install pycryptodome pybase64 requests
下载token_extractor.py文件
https://github.com/PiotrMachowski/Xiaomi-cloud-tokens-extractor/blob/master/token_extractor.py
python3 token_extractor.py
然后输入用户名和密码就可以得到了
下载这个插件
记住,登录的时候,如果要验证必须保证你的设备和hass是同一网络并且是同一网关!(否则可能会不通过)
使用这个docker镜像,然后填写用户名和密码以及hass地址和token即可
https://registry.hub.docker.com/r/dscao/sgcc_electricity
注意docker镜像里面的说明配置
首先分配音频给虚拟机
注意不要勾选所有功能,因为还有一个0000:00.1f.4设备.(否则开不了机)
添加仓库
https://github.com/bestlibre/hassio-addons
然后,下载mopidy
然后config.yaml设置
ip设置为homeassistant url
最后就可以使用设备了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。