百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

拒绝树莓派吃灰-USB启动安装hassos玩转智能家居HA

itomcoil 2025-02-13 12:31 10 浏览

在树莓派4B于2019年6月24日发布之后,我就写了一篇文章《智能家居中枢及媒体中心的理想选择-开源单板计算机树莓派4来啦》,时隔一年之后,我终于买了一块树莓派4B,我们再来看一下树莓派4的配置吧。

上图就是树莓派4B的配置卖点。下面我们一个一个来说。

1、作为一台单板计算机,我们首先看一下它的CPU部分吧。树莓派4B的核心处理器(SoC)为博通BCM2711,这款芯片采用了四核心64 位 Cortex-A72,主频为1.5GHz,官方称性能相比此前有3倍提升(树莓派3是四核A53)。

2、内存(RAM)终于从万年不变的1GB升级为1GB、2GB、4GB、8GB LPDDR4可选。

3、GPU为VideoCore VI 显卡,支持 OpenGL ES 3.x,可以支持HEVC 视频 4Kp60 硬解码,双显示器支持,分辨率高达 4K。

4、无线WiFi升级为双频 802.11ac 无线网络,蓝牙从4.2升级蓝牙 5.0。

5、接口部分,网口为全吞吐量千兆以太网,两个 USB 3.0 和两个 USB 2.0 接口,两个micro HDMI接口。为了优化布线,新版本将网卡接口和USB接口位置进行了互换。主 SoC 上的以太网控制器通过专用的 RGMII 连接到 Broadcom PHY,从而提供全吞吐量。USB 由外部 VLI 控制器提供支持,通过单个 PCI Express Gen 2 通道连接,提供总共 4Gbps 的带宽并分配给 4 个 USB 接口共享。

6、电源部分树莓派4B已经用 USB-C 接口替换了之前的 USB micro-B 电源接口,这将支持更大的功率,而且新增了 USB OTG Boot 功能。

在文章的最后我说到“看完了树莓派4B的配置,我感觉树莓派4B真香,国内上市时,我省吃俭用也要买一个回来玩玩,到时给大家带来更多有意思的玩法。”今天我终于兑现了曾经的诺言,给大家带来树莓派4B的玩法之一——树莓派4 USB启动HassOS安装homeassistant,让树莓派4B变身智能家居中枢。

树莓派 Pi 4B 架构中不仅将网络适配器与USB总线分离,而且开始支持USB 3.0,其理论上可以比USB 2.0快10倍,如果可以从USB存储启动,将很大程度上改善sd卡启动速度慢、稳定性差的问题;但是树莓派4B却无法像之前的树莓派那样从USB启动系统。树莓派基金会官方在2020-05-15发布了一个4B的beta版EEPROM固件更新,这次更新终于增加了期待已久的USB引导功能。今天给大家带来的是树莓派4B USB启动安装开源智能家居平台homeassistant官方系统hassOS的方法,让树莓派4变身成为mini而强大的智能家居中枢。

一、更新树莓派EEPROM

要想让树莓派4B可以从USB启动,首先就需要更新树莓派4EEPROM至最新版本。更新树莓派4eeprom最简单的方法就是用树莓派官方刷系统的工具Raspberry Pi Imager。

1、下载安装树莓派刷机工具Raspberry Pi Imager

在树莓派官网
https://www.raspberrypi.org/software/中找到你系统对应的Raspberry Pi Imager下载链接,点击进行下载安装。


2、用Raspberry Pi Imager把最新EEPROM写入SD卡。

①在电脑联网的前提下,打开Raspberry Pi Imager,点击“CHOOSE OS”

选择“Misc utility images”

然后选择“Raspberry PI 4 EEPROM boot recovery”

②把你的树莓派TF卡通过读卡器插入电脑,然后点击“CHOOSE SD”选择你的SD卡

③最后点击“WRITE”,开始写入。写入完成后,把卡拔下待用。


3、树莓派4更新EEPROM

把上面写入完成的SD卡插入树莓派4,然后给树莓派4上电。等到绿灯快速闪烁,HDMI屏幕变绿(也就几分钟的事,不接显示器,为了保险你等上五分钟也行)即可断电,拔下sd卡了,此时树莓派4的EEPROM已经更新到最新了。

二、安装homeassistant官方HassOS系统

homeassistant的安装方式有很多种,以下是各种安装方式对比。OS就是home assistant OS,是homeassistant为home assistant智能家居平台系统官方定制的系统,它的功能最全,使用最方便。最重要的是它升级很简单,只要点击下升级按钮就可以升级系统和homeassistant版本了,这也是我选择它的原因(之前我一直都是在斐讯N1中用core的方式安装的,最近HA的版本python需求又升级到python 3.8了,总是手动升级,实在太麻烦了。决定弃暗投明,买个树莓派4B装hassOS)。container就是docker方式安装home assistant的方式,这种安装方式升级也是需要删掉旧docker,重新下载新docker版本,然后重启docker,也是比较麻烦的。core的方式其实就是在python中直接下载安装homeassistant,可以直接升级,但是就像前面说的python需要总是升级版本,很多时候软件库中没有新版本python,就需要自己编译新版本,十分麻烦。supervised其实就是之前的hass.io,相当于docker安装方式的超级版和OS的非定制系统版本。

1、下载HassOS系统

目前只有hassOS最新版本都是支持树莓派4 USB启动。

①打开网址
https://github.com/home-assistant/operating-system/releases。

②如果看不到系统列表,请点击页面下方的“Assets”按钮,打开下载连接列表

③选择
hassos_rpi4-64-5.13.img.xz进行下载(32位版本USB个人测试无法USB启动)如果不是树莓派4B,请选择其他对应系统镜像。

2、把hassos系统写入USB存储。下面以较早的hassos5.4版本为例,其他版本操作完全一样,我就不更新图片了。

USB存储可以是USB3.0的U盘或者SSD固态硬盘。我用的是据说是固态U盘的闪迪CZ880。

①把下载hassos文件解压缩


②用Raspberry Pi Imager把hassos写入U盘

点击“CHOOSE OS”

选择“Use custom”

选择你刚才解压后的hassOS文件

选择你的U盘

最后点击“WRITE”进行写入


3、把U盘插入树莓派4 3.0接口,并插上网线,给树莓派4上电。等待十分钟半小时,home assistant就自动安装启动完毕了。下图进入homeassistant系统后查看到的系统信息。可以看到这是最新的homeassistant版本,hassOS版本为5.5


总结

树莓派4B小巧的机身,强大的性能,低功耗省电,适合24h运转,搭配上开源组件众多的homeassistant插件(目前国内的小米智能家居、易微联、涂鸦智能、yeelight等厂商的产品都可接入),树莓派搭配hassos真的十分适合作为智能家居的控制中枢,快点把你吃灰的树莓派拿出来充分利用吧。后面会给大家介绍更多智能家居的玩法,敬请期待。

相关推荐

MySql安装与使用

介绍mysql是目前最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem:关系数据库管理系统)应用软件...

使用AI来搭建一个用户系统,步骤应该是怎样的呢?

我给AI的第一个问题是这样的:创建一个java21+springboot3.4+mysql21的一个用户系统,需要使用JWT,支持多语言,使用swagger,这个用户系统都应该包含哪...

Mysql 8.4数据库安装、新建用户和数据库、表单

1、下载MySQL数据库yuminstall-ywgetperlnet-toolslibtirpc#安装wget和perl、net-tools、libtirpcwgethtt...

介绍如何在 MySQL 中创建新用户并授予权限?

MySQL是一个开源的关系型数据库管理系统,常用于存储和管理大量的结构化数据。在使用MySQL进行数据管理时,为了安全和方便管理,通常需要创建新用户并授予相应的权限。本文将介绍如何在MySQL...

Mysql创建用户和权限管理

MySQL是一个多用户的数据库,最高权限管理者是root用户,它拥有着最高的权限操作。包括select、update、delete、update、grant等操作。如果有其他用户想使用MySQL,那么...

Mysql:创建用户详解

1、创建并授权用户--创建可从任何主机连接的用户CREATEUSER'myuser'@'%'IDENTIFIEDBY'mypassword'...

Python 实现【字符匹配】

defis_match(s,pattern):m,n=len(s),len(pattern)dp=[[False]*(n+1)for_inrange...

Python自动化:openpyxl工作簿、工作表相关操作

新建工作簿、工作表importopenpyxl#创建空白工作簿,会自动生成一个工作表:Sheetwb=openpyxl.Workbook()#新建工作表#create_sheet...

python每日一练之三数排序

概述今天主要分享一个三树排序的实例,大家可以自己测试玩一下~需求输入三个整数x,y,z,请把这三个数由小到大输出。方法一:如果是要练练手就随便找个排序算法实现一下#usr/bin/python#...

Python输出语句print()

Python中的输出语句主要通过内置函数print()实现,它可以灵活输出文本、变量、表达式结果等内容到控制台或其他文件。以下是详细介绍及示例:一、print()基本语法print(*object...

Python设置excel表格格式,这3个属性6个模块,要表格好看

前言:通过前面两篇文章,我们用Python处理excel数据得到了结果并保存了文件。打开文件会发现,文件里表格是没有设置格式的,还需手动调整行高列宽等样式,很麻烦。其实,通过Python库模块,能轻松...

python入门-day5-循环语句

以下是为“Day5:循环语句”设计的详细学习任务计划。这个任务旨在帮助初学者掌握Python中的循环语句(for和while),并通过实践理解它们的应用场景。Day5:循环语句学习目标...

Python基础编程必备!涵盖常见语法与操作的代码示例合集

以下是一份Python基础代码示例合集,涵盖了常见的语法和操作,适合初学者快速掌握基本编程概念:1.基础语法python#打印输出print("Hello,World!")#变...

Python循环语句实用教程

一、循环基础1.while循环基本语法:while条件表达式:循环体代码while循环流程图:应用示例:#简单计数器count=0whilecount<5:...

在 Python 中如何向一个已排序的数组(列表) 中插入一个数呢

在Python中如何向一个已排序的数组(列表)中插入一个数呢?方法有很多种,关键在于原来数组是什么样的排序,用到啥排序方法效率高,就用哪种。我们来练习其中的几种插入方法,另外也掌握下遍历数组的...