分类: 树莓派Raspberry Pi

  • 树莓派Raspbian如何安装Home Assistant 非img刷卡安装

    树莓派Raspbian如何安装Home Assistant 非img刷卡安装

    Home Assistant 是一款基于Python语言的智能家居开源系统,支持很多品牌的智能家居设备,包括国内的小米、天猫精灵、小度语音等,可以实现设备的语音控制、自动化控制等等。

    本文讲的是手动安装不是刷Home Assistant的img,技术奇客试了很多次和多个官方的rom,都未能成功。

    by itgeeker.net

    树莓派系统实践环境

    • Raspbian Lite (buster)
    • Python 3.7 or later
    • Python 3 虚拟环境 Virtual Environment
    • pip3工具

    安装Home Assistant过程

    1. 安装python3及依赖

    sudo apt-get update
    sudo apt-get upgrade -y
    sudo apt-get install python3 python3-dev python3-venv python3-pip libffi-dev libssl-dev libjpeg-dev

    关于python3.8的编译安装,请参看Ubuntu/Debian/Raspbian源码编译安装Python3.8 及默认版本选择配置

    by itgeeker.net

    update@2020-1-14 增加依赖包libjpeg-dev的安装,否则在使用百度TTS时,模块baidu-aip==1.6.6需要Pillow,然后需要jpeg这个依赖包。错误内容:

    by itgeeker.net
    The headers or library files could not be found for jpeg,
    a required dependency when compiling Pillow from source.

    2. pip国内镜像配置

    很多安装Home Assistant未成功的,往往都是因为python依赖模块无法成功安装,而其中由于网络不通也占比不少。

    关于pip镜像配置,请参看:python模块管理 pip临时使用及永久镜像配置

    3. 添加Home Assistant账号及安装目录

    Home Assistant不能使用root运行,建个专用用户吧,然后顺便把GPIO的权限都给它,方便以后连接其它传感器。

    sudo useradd -rm homeassistant -G dialout,gpio,i2c
    cd /opt && sudo mkdir homeassistant
    sudo chown homeassistant:homeassistant homeassistant

    4. python虚拟容器创建及Home Assistant安装

    sudo -u homeassistant -H -s 
    cd /opt/homeassistant
    python3 -m venv .
    source bin/activate
    python3 -m pip install wheel
    cd /opt/homeassistant && pip3 install homeassistant

    请在homeassistant用户并激活venv情况下安装。如果未配置pip国内镜像源,可以使用一下临时镜像命令

    by itgeeker.net
    pip3 install homeassistant -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

    4. Home Assistant运行

    sudo -u homeassistant -H -s
    source /opt/homeassistant/bin/activate
    hass

    首次多给些时间让Home Assistant自动配置一下, 根据你网络的情况大概10-30分钟吧。 然后就可以使用你的浏览器打开树莓派ip地址的8123端口了:

    http://192.168.xxx.xxx:8123

    by itgeeker.net

    5. Home Assistant更新

    sudo -u homeassistant -H -s
    source /opt/homeassistant/bin/activate
    pip3 install --upgrade homeassistant

    6. Home Assistant日志log

    tail -f -n 55 /home/homeassistant/.homeassistant/home-assistant.log

    7. Home Assistant配置文件

    /home/homeassistant/.homeassistant/configuration.yaml

    关于配置树莓派使用systemd配置Home Assistant自动启动,下篇介绍。

    by itgeeker.net
  • 刷了OpenWRT的路由器+旁路由配置方法+无缝漫游配置(树莓派3B/3B+/4B使用OpenWRT系统做旁路由)

    刷了OpenWRT的路由器+旁路由配置方法+无缝漫游配置(树莓派3B/3B+/4B使用OpenWRT系统做旁路由)

    2020年3月10日 增加树莓派配置旁路由网络拓扑图

    2020年3月10日 增加多个房间的路由器配置,可实现无缝漫游,也就是有线中继

    by itgeeker.net

    技术奇客ITGeeker配置了两套主路由+旁路由方案,并且配置了无缝漫游的方案。

    主路由旁路由
    Linksys WRT1200AC, Raspberry 3B
    Netgear WNDR4300 Raspberry 3B+
    华为路由WS5200 四核版主卧
    小米路由器3(R3)儿童房

    OpenWRT img采用的是 https://mlapp.cn/369.html 的第八版,作者在该页面的介绍非常详细,编译的OpenWRT可同时适用Raspberry 3B及3B+,甚至尝试性支持了Raspberry 4B。最新的版本是 20191007 日常跟进更新(第八版) ,请大家多多支持该作者。

    如果去官方下载最新版OpenWRT18.06.4,Raspberry 3B可以正常运行,但是Raspberry 3B+不管用snapshots还是其它版本,官方的还没有成功过。

    具体刷机和配置,请查看该作者的详细介绍,这里不重复了。

    该链接介绍的是Raspberry做软路由的方法,ITGeeker技术奇客这次介绍的是旁路由设置,所以在“网口设置”部分不要配置和添加wan口啦!

    旁路由和软路由配置的区别

    技术奇客ITGeeker的Netgear WNDR4300和Linksys WRT1200AC都刷了OpenWRT官方的18.06.4,如果是官方的rom其实也没关系,尽管Linksys官方rom设置非常简单,甚至无法设置自己的网关(据说挺多官方路由器都不让设置网关),也不影响旁路由设置。一开始ITGeeker也是看到网上说的要主旁要互设网关,实践结果其实不需要的。

    主路由设置

    1. 假设ip地址为192.168.1.1
    2. 进入网络-接口-LAN,关闭DHCP(不关可能也可以,旁路由设置强制也行),英文 Ignore interface
    3. 在IPv6设置里禁止IPv6的前三个选项
    4. 不需要设置网关Gateway和自定义DNS

    旁路由设置

    1. 同样进入 进入网络-接口-LAN,选择固定网址,ip地址配置为何主路由同一地址段例如:192.168.1.2(如果不是同一地址段,自行配置子网掩码)
    2. 网关Gateway为主路由ip地址:192.168.1.1
    3. 自定义dns服务器:114.114.114.114 换行添加:202.96.209.133或者使用你当地最快的公共DNS
    4. 开启DHCP,高级设置里面开启强制选项。即使检测到另一台服务器,也要强制使用此网络上的DHCP
    5. 同样,禁止IPv6, 在IPv6设置里禁止IPv6的前三个选项

    建议重启主和旁路由,重启电脑,然后查看网络连接,看看自动获取的网关和DNS是否都为旁路由ip地址: 192.168.1.2

    技术奇客提醒

    如果有酸酸乳服务器,在旁路由配置并启用后,在服务-酸酸乳-状态里可以测试是否可以连接谷歌和百度,然后直接打开网站看看是否设置成功了。

    问题

    ITGeeker有发现网络时而有断续的问题,发生在Raspberry 3B+做旁路由的时候,不知道是否OpenWRT对Raspberry 3B+支持不好的问题。

    后来ITGeeker把Raspberry 3B+的LAN口桥接关闭并把无线关闭后似乎好多了。

    好处

    • 可以突破主路由的CPU和RAM的限制,油管可以看更高清的视频,速度也更快,酸酸乳的本质就是加密算法。
    • Raspberry Pi 3作为软路由的话,自带的WIFI太弱,加个无线网卡又要破费,作为旁路由仍然可以使用主路由的无线功能。

    无缝漫游配置

    原本家里一个路由器也凑合着用,谁知在首批买了华为智慧屏之后,华为送了一个路由器WS5200 四核版,加上手里还有一个几年前买的小米路由器3(R3),干脆每个房间都放一个,然后全部通过树莓派旁路由实现网络自由访问,也无需为WIFI的信号强弱而担忧了。还能实现华为路由器的HiLink功能。

    由于我的两个房间都布有网线,所以我的设置主要是“有线桥接“网络有线连接路由器并配置固定IP及固定网关(也就是旁路由树莓派的网关)

    无缝漫游时切换的速度取决于您的设备对WIFI型号的灵敏度,我的iPad切换就比较慢,甚至信号很弱网都不大能连得上了也不会切换,但是华为Mate30 Pro自动切换强信号网络就顺利的多了。这个方案比买品牌的漫游路由套件便宜了许多!WIFI的名称也不是一个,而是每个路由器都要独自设定,所以无缝漫游的描述未必很准确。

    by itgeeker.net
    主卧配置-华为路由器WS5200 四核版

    华为路由器配置固定IP地址和固定网关需要在电脑端打开路由器配置页面 http://192.168.3.1 ,手机端不支持上网方式配置。

    先不要连接网线到华为路由器WS5200四核版,否则无法配置路由器IP地址和上级路由器在同一网段。

    by itgeeker.net

    进入我要上网页面再修改为桥接方式。选择上网方式为桥接(Bridge),点击保存。

    点击更多功能 > 网络设置 > 局域网。在路由器局域网 IP 地址中输入 IP 地址192.168.1.3,网关为旁路由IP地址192.168.1.2,关闭“DHCP服务器”开关 ,点击保存。再次登录 Web 配置界面的时候,您需要输入修改后的 IP 地址 http://192.168.1.3

    如果选择桥接后无法配置网关的话,可以选择上网方式为“手动输入IP”试试看。

    配置好之后插入主路由过来的网线到WAN口,华为路由器WS5200四核版支持网口盲插,不一定非要把网线插入WAN口,任意网卡即可。

    by itgeeker.net

    最后一步配置华为路由器WS5200四核版的WIFI名称和密码,用手机连接进行测试。

    儿童房配置-小米路由器3(R3)

    小米R3路由器升级到新版固件,采用有线中继的配置会简单的多。

    首先把主路由的网线插入小米路由器的WAN。

    在浏览器中输入 192.168.31.1 或者 miwifi.com 打开登录界面——>输入“管理密码”,登录到小米路由器的设置页面。

    “常用设置”——>“上网设置”,然后在页面最下方找到“工作模式切换”选项,点击:切换

    在弹出的页面中,找到、选择“有线中继工作模式(扩展现有的网络)”——>点击“下一步”,再 下一步” , 点击“确定”,完成设置。

    配置好之后,小米会自动获取IP地址,并且网关为旁路由IP地址192.168.1.2。

    小米路由器完成有线中继模式设置后,无法用192.168.31.1 或者 miwifi.com来管理小米路由器了,需要使用上面最后一步页面中提示的IP地址192.168.1.xxx。由于这里的上一级的路由器(旁路由器)不是小米这个牌子的,最后一步页面中提示的IP地址是根据DHCP自动分配的,如果想使用固定的IP地址,可以在旁路由里面使用小米路由器3(R3)的MAC地址绑定IP地址192.168.1.5

    by itgeeker.net

    最后一步配置小米路由器3(R3)的WIFI名称和密码,用手机连接进行测试。

奇客罗方公众号 奇客罗方小程序 奇客罗方客服 ITGeeker Telegram

网站由ITGeeker技术奇客开发并管理;隶属于GeekerCloud奇客罗方智能科技
Site designed and developed by ITGeekerwhich is a sub-website of GeekerCloud
网站地图 | 沪ICP备2021031434号-4