没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

2017-05-16 16:30:23 196点赞 1694收藏 202评论

起因

在大妈上闲逛,看到这个智能家庭的文章。虽然租住的小地方里一件智能家居设备都没有没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢,不过看了下感兴趣的人还是挺多的。

树莓派打造家庭中枢教程(完整版)追加修改(2017-05-0123:38:35):实话讲,不知道按着教程实操的人有多少,但是我还是尽量完善、更新这份教程。首先,Hassbian系统自带了Home-assistant,因此请使用Hassbian系统的值友跳过3.1,直接前往3.1.1。其次,3.1.1步骤如果执行失败,可以手动安装。武没娘和狄胖胖| 144 评论98 收藏1k查看详情

首先声明,本文并不能教会一个小白如何安装使用 HomeAssistant,内容方面也仅仅是如何在安卓设备上安装,没有详细的配置方法。选择 DIY 就要有足够的技能和细心来解决问题,吐槽难度的话,大可鼠标右上角点 x,然后掏钱买买买就行了。

虽然手上有树莓派,不过考虑到很多有兴趣的值友手上是没有的,所以弄个利用闲置安卓设备的解决方法分享出来。本篇涉及的命令还是比较多的,不过按照步骤一步一步来应该没有问题。

大概吧没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

准备工作

条件是必须已经 root,手机,平板,安卓盒子都是可行的。不过考虑到运行内存的问题,最好是单独运行,不要兼用其他用途。

我使用的设备是刷了 LineageOS 14 的 ZUK Z2,但基本只要 Linux Deploy 支持都是可以的。Linux Deploy 对硬件的要求是最小 512MB 运行内存,推荐 1GB。

另外,由于Linux Deploy 实现功能的方式,不当操作可能会损坏手机本身系统,造成无法正常进入系统,可能需要重新刷机才能正常工作,所以一定要做好好重新刷机的准备。

推荐刷成 CM,LineageOS,魔趣等原生系统 ROM,如果使用原厂 ROM 最好重置一下出厂设置,避免运存不足杀死关键进程造成不稳定。如果 ROM 里面有各种清理内存或省电的功能,请设置好白名单,避免 Linux Deploy 被杀掉进程。

供电方面,只要不是比较老的设备,电源供电足够的话是不会经过电池的,所以这方面还是可以放心的。

理论上x86的安卓设备也行,不过手头上并没有设备可以测试,所以不保证按本教程操作可以正常运行,还请见谅。

首先需要需要下载以下两个 APP :

部署Linux系统:Linux Deploy(ru.meefik.linuxdeploy)_2.0.2_Android应用_酷安网部署Linux系统:Linux Deploy(ru.meefik.linuxdeploy) 2.0.2:部署Linux系统是个在安卓上安装其他Linux发行版的工具,对于喜欢折腾的酷友来说这自然又是一个不可多得的好物。需要注意有时候有的稍微冷门一点的发行版可能没有国内的镜像,安装起来会耗费更多的时间coolapk.com直达链接BusyBox installer(ru.meefik.busybox)_1.26.2_Android应用_酷安网BusyBox installer(ru.meefik.busybox) 1.26.2:BusyBox installer酷友说是很好,漂亮稳定,需要busybox的可以试试,咱一般的用户貌似都用不上这个。coolapk.com直达链接

基本环境

Linux Deploy 使用了类似容器的技术,可以在安卓设备上运行 linux 发行版,比如:Ubuntu、Debian。不过由于内核还是要看宿主设备的内核,所以有些应用如果需要最新内核就没法用了(比如 Docker),Android 7.1.1 使用的 Linux 内核还是 3.18 版本。

HomeAssistant 是基于 Python 开发的,而 Homebridge 是基于Nodejs,两者都是可以跨平台运行的。所以只需要先使用 Linux Deploy 安装好 Linux ,然后再安装它们就能解决掉问题了没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

本文还附带了修改安装源来提高安装速度的方法,在树莓派上安装慢的问题也可以用一样的方法解决,希望能帮助有兴趣的同学。

安装 BusyBox

这里也可以选择自己喜欢的 BusyBox,没有特别要求。安装好BusyBox 之后需要打开 APP,再点击一下 Install 安装,安装路径默认为 /system/xbin 即可。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

然后在 Linux Deploy 的 设置 中点击一下 更新环境, 这样准备工作就完成了。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

如何确认环境是否满足条件?

这里需要确定 su 是可用的,由于需要准备刷机,所以 adb 肯定是有的,而且驱动也是安装好的。至于 adb 和 驱动问题请自行解决,如果这些都解决不了的话建议还是别继续了,因为后面的更复杂没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

按图所示,如果最后执行 su 命令之后命令行那里变成 # 就说明满足继续的条件了,如果报错,请自行百度解决,毕竟怎么刷机这个估计都可以单独写一篇了没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

安装 Linux Deploy

首先必须给 Root 权限,而且已经安装了 BusyBox。对于 Android 6.0以上的设备,需要在应用权限设置中给 Linux Deploy 访问存储设备的权限。

打开 Linux Deploy 后就会有个默认配置,这里需要修改一下配置。点击右下角那个看起来像下载的按钮没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

首先是发行版,这里为了后面省事将默认的 Debian 改为 Ubuntu。(Debian 的 Python 版本过低,HomeAssistant 使用了异步库需要 Python3.5+才支持。)

架构默认就行,也可以像我这样改成 arm64。这个需要根据实际设备来设置,建议默认即可(再次重申——手头没有x86的安卓设备测试)。

源地址可以修改为国内镜像源,这里我用了中科大的源。

https://mirrors.ustc.edu.cn/ubuntu-ports/

往下的需要注意的是用户名和密码,默认即可,后面如果忘记用户和密码还可以来这里查看。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

勾选 "允许 SSH 服务器启动"。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

设置完成之后回到主界面,点击右上角的三个点,选择 安装,剩下的就是等待了。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

如果一切顺利,可以看到 <<< deploy 字样,说明镜像已经构建完成了。这个时间会稍久一些,大概10-30分钟。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

点击 启动 按钮,看到 <<< start 字样就说明 OK 了。如果 Starting extra/ssh 那里有 找不到 su 命令的字样,请先回到上面的 BusyBox 安装部分,更新一下 环境设置,用 adb 测试一下 su 是否存在。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

剩下的操作就需要用到终端了,虽然也可以安装一个 APP 解决,不过还是建议在电脑上操作,复制粘贴命令比较方便。没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

终端软件

Windows 上的话我用的是 XShell 和 XFtp,对于家庭和学校授权是免费的。另外推荐安装一个文本编辑器 Notepad++,因为 Windows 上的默认文件编码与 Linux 不同,如果使用自带的记事本很可能会造成 Linux 下识别不正常。以上软件的下载地址请自行搜索,或者使用熟悉的工具替代。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

链接的地址在 Linux Deploy 上有显示,就是顶端显示的 IP。这里接受保存密钥继续,然后就是用属性里面的用户名和密码登陆就可以了,如果忘记的话,就在 App 上查看一下。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

使用 XFTP 可以直接管理文件,不过链接地址那里需要指明一下协议 sftp,完整示例:

sftp://192.168.8.59

连接成功之后就对有权限的文件就可以直接编辑了。

其他

这里提供一下三个配置文件,可以使用 SFTP 上传到 /home/android 目录,方便后面使用

https://pan.baidu.com/s/1slVplDF

由于发行版默认没有安装 nano 所以需要手动安装一下

sudo apt-get install nano

nano 的基本操作就是 Ctrl+O 是保存,会提示是否写入,回车确认即可,Ctrl+X 是退出

HomeAssistant

运行环境

前面说过需要安装的 Python3 已经自带了,版本是 3.5.1,可以输入下面的命令查看版本

python3 -V

需要安装一下Python 的包管理器

sudo apt-get install -y python3-pip

这里为了解决安装慢的问题,需要修改一下 Python 包管理器(pip)的安装源

sudo mkdir /root/.pip

sudo sh -c "echo '[global]nindex-url = https://mirrors.ustc.edu.cn/pypi/web/simple/' > /root/.pip/pip.conf"

更新一下 pip 试试安装速度

sudo pip3 install -U pip

安装需要用到的 python 虚拟环境工具

sudo pip3 install virtualenv

安装 HomeAssistant

首先要添加一个用户

sudo useradd -rm homeassistant

在 /srv 目录下面添加 python 运行环境,

sudo mkdir /srv/homeassistant
sudo chown homeassistant:homeassistant /srv/homeassistant

之前修改过的 pip 安装源是针对 root 用户的,由于要使用 homeassistant 这个用户运行,而首次运行过程中又需要安装一些 python 包,所以这里还得来一次。

sudo mkdir /home/homeassistant/.pip
sudo sh -c "echo '[global]nindex-url = https://mirrors.ustc.edu.cn/pypi/web/simple/' > /home/homeassistant/.pip/pip.conf"

需要把新建的文件权限给 homeassistant 用户

sudo chown -R homeassistant:homeassistant /home/homeassistant/.pip

然后切换到新建的用户

sudo su -s /bin/bash homeassistant

创建 Python 虚拟运行环境并切换

virtualenv -p python3 /srv/homeassistant
source ./homeassistant/bin/activate

成功的话终端命令行应该会显示为:

(homeassistant) homeassistant@localhost:/$

终于可以安装 homeassistant 了没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

pip3 install -U homeassistant

启动 homeassistant 之前还需要在 Linux Deploy 上设置一下,否则会因为用户没有网络访权限而启动失败。
在配置中 Privileged users 里添加 homeassistant,需要用空格和默认的 root 隔开(英文半角空格)

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

然后到主界面的右上角菜单里点击一下配置,等待完成后就可以继续了。

尝试启动 homeassistant,需要注意的是启动过程中其实也有安装一些 Python 包,所以需要等一下才可以.

hass

在终端中看到:

INFO:homeassistant.bootstrap:Home Assistant initialized in 108.88s


表示启动成功,然后就可以在浏览器中打开 https://ip_address:8123 来看看成果了

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

按 Ctrl+C 退出 homeassistant,方便下面的操作。

这里启动只是为了看一下是否能正常运行,配置好开机运行之后再进行 homeassistant 的配置。

开机运行

注意:如果是接着上面操作,请先用 exit 命令退出 homeassistant 用户

由于 Linux Deploy 运行的方式无法使用 systemctl 的方式来做开机运行。只能使用 init.d 脚本的方式添加。

先参考项目文档 https://home-assistant.io/docs/autostart/init.d/ 添加好启动脚本。

或者直接下载我提供的配置文件 hass-daemon (注意,没有后缀,可以用 Notepad++ 打开编辑。)

如果是使用我提供的文件

sudo cp /home/android/hass-daemon /etc/init.d/hass-daemon

如果是从文档中复制的话,则需要自己创建文件后编辑

sudo touch /etc/init.d/hass-daemon
sudo nano /etc/init.d/hass-daemon

需要修改 RUN_AS 和 PRE_EXEC 这两个值

RUN_AS="homeassistant"
PRE_EXEC="source /srv/homeassistant/bin/activate;"

保存配置文件之后接着执行下面的命令

sudo chmod +x /etc/init.d/hass-daemon
sudo update-rc.d hass-daemon defaults
sudo service hass-daemon install

最后可以手动尝试启动服务

sudo /etc/init.d/hass-daemon start

启动脚本中定义了日志输出,可以通过下面的命令查看日志

tail /var/opt/homeassistant/home-assistant.log

另外需要注意的是,官方文档中的启动脚本是指定了配置文件的路径的

CONFIG_DIR="/var/opt/homeassistant"

如果需要编辑配置文件需要到该目录下编辑。

当然也可以修改会默认的目录下面

CONFIG_DIR="/home/homeassistant/.homeassistant

接着需要在 Linux Deploy 中设置一下,点击右下角那个像下载图标的按钮。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

启用 INIT 下的自定义脚本执行,然后确认 Init setting 里的 init path 是 /etc/rc.local

接着在终端中编辑这个文件

sudo nano /etc/rc.local

在 exit 0 上面添加一行

sudo /etc/init.d/hass-daemon start

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

这样镜像启动时就会启动 homeassistant 了。

由于手上没有任何智能家居设备,所以后续就没法测试了没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

理论上讲是可行的,当然如果有好心人捐赠个灯泡什么的给我测试就最好不过了没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

Homebridge

运行环境

默认是没有安装 curl 的,手动安装一下

sudo apt-get install -y curl

使用官方脚本先添加好安装源

curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -

修改安装源

sudo nano /etc/apt/sources.list.d/nodesource.list

这次用的是清华大学的 NodeSource 源。这里需要注意,如果是树莓派,请不要修改 xenial main 这段,保留原来的值。

deb https://mirrors.tuna.tsinghua.edu.cn/nodesource/deb_7.x xenial main
deb-src https://mirrors.tuna.tsinghua.edu.cn/nodesource/deb_7.x xenial main

安装 nodejs

sudo apt-get update
sudo apt-get install -y nodejs

然后是几个编译用到的依赖包

sudo apt-get install -y python git libavahi-compat-libdnssd-dev

npm 安装一样是慢如蜗牛。也可以通过修改源来解决。老是撸大学的羊毛不好意思没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢 ,这次换成阿里爸爸的。

sudo npm install -g --unsafe-perm homebridge --registry=https://registry.npm.taobao.org

我这里是可以直接安装 HomeBridge 的,如果安装失败的话,就按原贴的步骤操作一下,应该也能解决。

继续安装那个打通 HomeAssistant 的插件

sudo npm install -g homebridge-homeassistant --registry=https://registry.npm.taobao.org

在运行 HomeBridge 之前还需要解决一个问题,简单来说就是由于 Linux Deploy 的运行方式,有个依赖的服务无法正常启动,会造成 HomeBridge 无法启动没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

编辑一下这个服务的配置文件

sudo nano /etc/avahi/avahi-daemon.conf

需要将 publish 中的所有参数都注释掉,在对应的配置项之前加 # 号即可(.....表示省略的内容,实际是没有的)。

......
[publish]
#disable-publishing=yes
#disable-user-service-publishing=no
#add-service-cookie=no
#publish-addresses=yes
#publish-hinfo=no
#publish-workstation=no
#publish-domain=yes
#publish-dns-servers=192.168.50.1, 192.168.50.2
#publish-resolv-conf-dns-servers=yes
#publish-aaaa-on-ipv4=yes
#publish-a-on-ipv6=no
......

然后需要修改服务的启动参数

sudo nano /etc/init.d/avahi-daemon

找到启动服务的地方 d_start() 这一段,在 $DAEMON 后面添加上 --no-drop-root 参数

d_start() {
$DAEMON --no-drop-root -c && return 0

if [ -e $DISABLE_TAG -a "$AVAHI_DAEMON_DETECT_LOCAL" != "0" ]; then
# Disabled because of the existance of an unicast .local domain
log_warning_msg "avahi-daemon disabled because there is a unicast .local domain"
exit 0;
fi;

$DAEMON --no-drop-root -D
}

这里首先试试手动启动相关服务

sudo /etc/init.d/dbus start
sudo /etc/init.d/avahi-daemon start

两个服务都启动成功的话,就可以尝试手动启动 HomeBridge 了

Homebridge is running on port 51826.

如果看到上面的字样就表示 HomeBridge 在运行了,可以到 ios 家庭应用中查看是否能找到了。

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

同样的,由于手上没有任何智能家居设备,所以后面的功能无法测试没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

开机启动

仍然只能以 init.d 脚本的方式启动,而且这次需要先启动两个依赖的服务没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

跟 HomeAssistant 一样,需要在 Privileged users 中添加 homebridge,然后重新配置。

同样参考项目文档 https://github.com/nfarina/homebridge/wiki/Homebridge-autostart-at-boot-(init.d)-on-Ubuntu-(linux)

这次就不详细说明命令了,可以参考上面 HomeAssistant 中的说明,基本上意思差不多。

sudo useradd -r homebridge
sudo mkdir /var/opt/homebridge
sudo cp -R ~/.homebridge/* /var/opt/homebridge
sudo chown -R homebridge:homebridge /var/opt/homebridge
sudo chmod -R +x /var/opt/homebridge
sudo cp ~/homebridge /etc/init.d/homebridge
sudo chmod +x /etc/init.d/homebridge
sudo update-rc.d homebridge defaults

然后尝试手动启动 homebridge

sudo /etc/init.d/dbus start
sudo /etc/init.d/avahi-daemon start
sudo /etc/init.d/homebridge start

通过查看运行日志可以知道运行的情况

tail /var/log/homebridge.log
tail /var/log/homebridge.err

同样的,服务文件也指定了配置文件的路径,配置需要到在 /var/opt/homebridge 中修改。

修改完配置需要重启 homebridge 生效

sudo /etc/init.d/homebridge restart

需要再次编辑 /etc/rc.local 文件添加启动命令,最终的文件内容如下(.....表示省略的内容,实际是没有的)

......
sudo /etc/init.d/hass-daemon start
sudo /etc/init.d/dbus start
sudo /etc/init.d/avahi-daemon start
sudo /etc/init.d/homebridge start
exit 0

其他

查看 MAC 地址

直接用命令就可以看了

ifconfig

应该是 wlan0 网卡的 MAC 地址,就是HWaddr 后面那一段

wlan0 Link encap:Ethernet HWaddr d8:9a:34:0d:89:95

要注意,在配置文件中填写时字母部分必须是大写。

MQTT

说实话,看不明白这个 MQTT 安装的目的是什么没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢,不过看了下安装脚本,应该是有用的没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

这里使用包管理器直接安装,版本是 1.4.8 与脚本中的 1.4.11 很接近应该没有什么问题。

sudo apt-get install -y mosquitto mosquitto-clients

安装好之后就是配置

cd /etc/mosquitto
sudo cp /home/android/mosquitto.conf /etc/mosquitto/mosquitto.conf
sudo chown mosquitto:mosquitto mosquitto.conf
sudo touch pwfile
sudo mosquitto_passwd -b pwfile "pi" "raspberry"
sudo chown mosquitto:mosquitto pwfile
sudo chmod 0600 pwfile
sudo /etc/init.d/mosquitto restart

配置文件、账号和密码使用了树莓派安装脚本的方式,另外 MQTT 应该是没有随镜像启动的,照着前面的方式到 rc.local 中添加就可以了。

SMB

从引用的几个教程并没有提到必须安装共享功能,原帖里也仅仅是用来修改配置文件。由于上传修改文件可以使用 XFtp 来解决,所以这里就省去了。
如果确实要安装的话步骤是和原帖一致的,唯一需要注意的就是启动服务要用 /etc/init.d 中的脚本启动。看大家反馈情况,如果确实是必须安装的话,就后续补充起来。(不排除挖坑不填没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

FAQ

Q:为啥不安装 KODI?
A:运行内存不足的时候系统会自动杀后台,如果 Linux Deploy 被杀掉就都挂了。而且 KODI 有 android 版本,直接下载 apk 安装就是了,没必要自己手动安装.。

Kodi(原XBMC)(org.xbmc.kodi)_17.1_Android应用_酷安网Kodi(原XBMC)(org.xbmc.kodi) 17.1:小编一直不明白为啥有这么好烧包的播放器,看两个毛片也不至于啊,一般的播放器都看的清楚,也有声音,这XBMC小编之前是真没怎么接触过,看样子是个狠货,而且这体积够大,看样子解码器很强大。coolapk.com直达链接

Q:你这贴没讲怎么设置啊?而且没看到你有什么灯,传感器之类的,是不是来骗积分的啊?
A:讲道理基于 TCP/IP 协议的话应该是都没问题的。至于其他外部设备购买的话投入比较大,加上我自己本身并没这方面的需求,所以懒得弄没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢

Q:稳定性怎么样?
A:稳定性还是取决与设备本身的稳定性,目前看,除了因为操作配置不当引起直接手机挂掉之外,没有遇到正常运行中出现问题的情况。不过以上仅代表我手上的机器以及系统的情况,总的来说还是推荐刷成 CM 之类的原生 ROM。

Q:还能干嘛?
A:由于基本上就是一台运行 Linux 的服务器,抛开内核版本限制,软件方面基本上树莓派这些能做的都能做到。不过树莓派的优势在于 GPIO,这点无法替代,虽然手机的感应器也是能被识别的,不过继续折腾需要有 Linux 的技术能力。

展开 收起
202评论

  • 精彩
  • 最新
  • 看到你写的几篇文章都是偏技术性的 感觉自己动起手来乐趣也蛮多的 100碎银全部送上了。。。

    校验提示文案

    提交
    [献花] 过奖了,都是瞎折腾

    校验提示文案

    提交
    收起所有回复
  • 我感觉这么多麻烦的事都是因为HomeAssistant没有安卓版的,绕一大圈装Linux其实还是在安卓设备上运行这个,如果有安卓版的根本不用部署linux啊,楼主去github看过有相关项目么?

    校验提示文案

    提交
    其实这篇原创只是一个副产品 [喜极而泣] ,真正的原因是待的某个群里的一位苦逼安卓开发吐槽项目要求在安卓设备上跑 tomcat 做 web server [偷笑]

    校验提示文案

    提交
    没错,安卓装不了

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • zuk z2秒杀我的主力机器红米note3了吧。。。。壕无止境

    校验提示文案

    提交
    用zuk z2是因为手头只有这个,主力机,其他安卓设备都可以的。

    校验提示文案

    提交
    收起所有回复
  • 支持小米的设备么

    校验提示文案

    提交
    有1G运存就可以尝试了,不过x86的CPU的话没测试,应该可以,但是一些参数肯定有变化。

    校验提示文案

    提交
    收起所有回复
  • 关键是我在想如果做bridge整天开着手机是不是意味着电池一直充放电?过不了几天老手机就挂了。。。实用性不强啊,linux代码网上大量的帖子。。。感觉就是来骗金币哒 [傻笑]

    校验提示文案

    提交
    现在的智能手机电源管理模式,只要充电器供电足够,电池充满的话是不走电池,而是直接从充电器取电的,文章前面部分也有提到,不过估计你没看到 [邪恶]

    Linux 资料网上很多——不好意思,还有个朋友说“讲得不够好,不能让小白看懂” [尴尬]

    是不是骗金币,嗯,其实这个末尾的 FAQ 也有稍微提到。总的来说,就算我写了,别人看不看我真没办法 [偷笑]

    校验提示文案

    提交
    收起所有回复
  • 把家里的机子刷好了能不能拿出去卖?

    校验提示文案

    提交
    你真想靠这个点子盈利的话建议卖服务而非硬件本身。

    校验提示文案

    提交
    收起所有回复
  • 按照作者的步骤成功在电视盒子上安装了Debian,盒子本身有蓝牙,但是Debian里显示没,麻烦问下怎么调用蓝牙设备?

    校验提示文案

    提交
    你是想装图形界面把盒子当成 Linux 桌面主机来用么?
    手上没有蓝牙键盘没办法测试。查看了一下 Linux Deploy 的项目地址,有使用蓝牙键盘/鼠标的问题都是有安装 XWindow ,估计在 Android 中链接好设备,然后操作 XWindow 里的蓝牙链接就应该可以了吧(可能需要勾选挂载 Android 上的资源)。

    校验提示文案

    提交
    我又尝试了一下,发现根本没有找到蓝牙适配器 (dmesg | grep Blue),恐怕没办法给你提供有效的帮助。

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 所以想问下楼主,最后你买了智能家居设备测试了木有?能用不

    校验提示文案

    提交
    房子都不是自己的完全没心思弄这个 [偷笑]
    个人认为目前的智能家居顶多是自动家居,还算不上智能,而且就算是自动,也得再装修阶段就开始规划,否则这个自动都做得比较鸡肋或者麻烦。所以个人目前没什么兴趣折腾这些,写这篇文章完全是因为自己学习 Linux 的副产品(然后顺便骗点金币)。

    讲道理,基于 TCP/IP 协议的话是没问题的,mqtt 协议已经是应用层了,更加没问题。我个人只有测试过跑过自己写的一些 python 代码来用,没有发现问题。

    如果你是手上有现成的闲置设备利用,那么其他智能家居设备你总是要买的——就算我这个方案不行,你还是可以再入个树莓派嘛 [喜极而泣]

    校验提示文案

    提交
    收起所有回复
  • 安装到pip3 install -U homeassistant的时候,其中的Collecting aiohttp==2.2.5 (from homeassistant)报错。虚拟环境中的Python版本是3.4,而这个包的需求是3.4.2+。。。好奇怪,明明Ubuntu刚装好时显示的是3.5+

    校验提示文案

    提交
    如果系统python版本确定是3.5+的话,可以尝试先重启,然后删除掉虚拟环境目录重新创建试试,创建虚拟环境时可以去掉-p python3 试试,也可能是环境变量的问题。

    校验提示文案

    提交
    收起所有回复
  • 创建 Python 虚拟运行环境并切换
    source ./homeassistant/bin/activate
    提示bash: ./homeassistant/bin/activate:No such file or directory
    怎么弄啊

    校验提示文案

    提交
    这里我把路径写错了,如果你是用 virtualenv -p python3 /srv/homeassistant 创建的,那么该用 source /srv/homeassistant/bin/activate

    校验提示文案

    提交
    收起所有回复
  • 关于创建 Python 虚拟运行环境并切换
    执行到source这条命令的时候会报错,提示权限不足,经过反复确认,命令没有复制错误,而权限不足的原因是第二条命令的问题,查看文件系统后发现执行第二条命令所需的文件夹并不在根目录,而是在/srv目录中,如果直接输入./homeassistant,会无法找到目录。更改為source srv/homeassistant/bin/activate后命令得以顺利执行,并会返回(homeassistant) homeassistant@localhost:/$

    校验提示文案

    提交
    是,写错了,在 152 楼有回复过这个问题。
    大妈这边修改只能添加,不能修改原文,所以这就这样了 [狂汗]

    校验提示文案

    提交
    。。大妈就是喜欢吞回复。。
    长话短说了。。这个问题是小问题。
    两个大坑,一个是python版本过低,上面我发了的,另一个是hassdaemon,你提供的文件无法运行,后来去看文档页面,发现有两个,复制了下面一个的内容,清空文件,粘贴进去,保存,顺利运行。

    校验提示文案

    提交
    还有4条回复
    收起所有回复
  • 昨天折腾了一下午花了六个多小时装好了。用的是一台闲置的魅蓝note2,刷的是lineageOS 14.1
    中途碰到不少坑。。最坑的就是因为py版本太低导致重装做了一次环境。。第二次直接下3.6.5的py的tgr,解包,编译,安装。然后才没什么问题了。
    目前的状况是yeelight的吸顶灯正常工作。iphone自动发现了网关,自动发现了yeelight的吸顶灯。支持亮度控制和颜色控制,但支持不太好。亮度控制无法切换到月光模式。
    设置了自动启动。开始之后会加载rc.local,服务应该也是启动了的,但还是必须要用一个ssh连接上去之后手动打开homebridge,否则就是配件无响应。。。还好家里有一台WIN的NAS常年开机。。挂了个ssh常驻了。叫siri开关灯没问题。几个小时不用的话,会卡一会。。要过一分钟左右才能重新连接上配件。。
    yeelight的开放协议有点问题。。偶尔会失效,要在软件里重新开关一次。

    校验提示文案

    提交
    大佬 我现在安装ha就说版本太低 怎么升级啊 不会

    校验提示文案

    提交
    手工下载python的tgz包。版本随你,hass需求最低3.5.3.我下了3.6.5。
    下好之后sftp拷贝到任意目录,我放在tmp。
    然后是四条命令大概,解包,检查,编译,安装。
    具体你找找编译安装python,或者编译升级python。
    编译时间要很久,十分钟可能。
    安装完成后什么都不用做,直接输入python3 -V,如果版本显示3.6.5就是成功。如果还是3.5.1+就是失败。
    命令有大小写注意。

    校验提示文案

    提交
    还有6条回复
    收起所有回复
  • 文章缺少目的导向…看似高玩炫技,但看完还不知道能做什么解决了什么问题节省了什么时间。美化了什么生活

    校验提示文案

    提交
    第一段就说了这个写的是怎么在安卓手机上装HomeAssistant。 看不懂就看不懂呗,何必找理由喷呢

    校验提示文案

    提交
    你用一个喷字,精妙地把我讲道理的姿态严重地抹黑

    校验提示文案

    提交
    还有13条回复
    收起所有回复
  • 从头翻到尾(不是看),不知道这货干什么鸟用。

    校验提示文案

    提交
  • 开始点了收藏,看到一半取消了

    校验提示文案

    提交
  • 说真的写的太深奥了,几乎看不懂,而且不知道这有什么作用

    校验提示文案

    提交
  • 看完一脸懵逼

    校验提示文案

    提交
  • 如果说只想用webserver还用这些乱码七糟的东西干嘛,直接一个Termux就搞定了。服务器用node 代码直接git clone [邪恶] [邪恶] [邪恶]

    校验提示文案

    提交
    JS 大法好, 但是我选 GO. 直接一个二进制.

    校验提示文案

    提交
    收起所有回复
  • 全文就看到 没设备无法测试 请自行百度 这个可以另外开篇讲...以上云云最后结果是什么?哪怕我们围观群众连拍手叫好的点都没发现哪

    校验提示文案

    提交
    我能怎么办?我也很绝望啊! [尴尬]

    手机型号品牌那么多,可以刷的话随便搜一下也很多教程了吧,不能刷的话,要我怎么写 [内伤] ;至于那些智能设备,随便买几样就是大几百块,租房屌丝没办法啊 [哭泣] .

    讲正经的,IoT设备如果是使用 TCP/IP 协议作为基础,比如 MQTT 这些,即使出现问题,也应该是应用支持的问题,我也没法解决.至于 ZigBee 或者其他低功耗蓝牙之类的,也是得靠专门的网关设备支持才行,跟我这个无关.

    网关设备能不能接入,怎么接入,如果有人送一套给我试试,还是愿意写个分享出来的 [抠鼻] .

    校验提示文案

    提交
    收起所有回复
  • 手机是有的,然而不知道我家啥玩意儿需要它控制

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
1.6K
扫一下,分享更方便,购买更轻松