分类
Home Assistant 树莓派Raspberry

树莓派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
分类
python

Ubuntu/Debian/Raspbian源码编译安装Python3.8 及默认版本选择配置

Python 2 即将退出历史舞台,赶紧熟悉python 3的安装及配置吧。

1. 安装编译依赖包

sudo apt update
sudo apt-get install -y build-essential tk-dev libncurses5-dev libncursesw5-dev libreadline6-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libffi-dev tar wget vim

2.下载python3.8源代码

cd /tmp && wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz
tar -zxf Python-3.8.0.tgz
cd Python-3.8.0

3.编译及安装python3.8

./configure --enable-optimizations
make -j 4 #如果你的系统有8核,可以使用-j 8
make altinstall

不要使用标准make来安装,否则会覆盖系统默认的python版本

by ITGeeker

4.python3.8版本确认

python3.8 --version

5.设置python3.8版本为默认版本

python -V #查看当前默认版本
echo "alias python='/usr/local/bin/python3.8'" >> ~/.bashrc #刚刚编译安装目录
source ~/.bashrc
python -V #确认是否已切换成功

echo “alias python=’/usr/bin/python3.7′” >> ~/.bashrc #切换到python3.7 apt安装版本

by ITGeeker
分类
python 技术奇客

python模块管理 pip临时使用及永久镜像配置

pip安装依赖包速度很慢,此时您可能需要使用国内镜像来加速,特别是配置Home Assistant时,可能就是因为无法获取依赖包而配置失败。

pip临时使用镜像安装python依赖包

可以在使用pip的时候,加上参数-i和镜像地址,如果讨厌安全提示,添加 –trusted-host. 例如临时使用清华镜像安装python模块:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pandas --trusted-host tuna.tsinghua.edu.cn

pip永久使用镜像安装python依赖包

首先查看当前用户是否有pip配置文件:

cat ~/.pip/pip.conf

Windows的pip配置文件位于:

%HOME%\pip\pip.ini

by ITGeeker

如果没有该文件,手动创建一个

mkdir -p ~/.pip
vi ~/.pip/pip.conf

如果想使用阿里云镜像,请添加:

[global]
index-url = https://mirrors.aliyun.com/pypi/simple
[install]
trusted-host = mirrors.aliyun.com

注意:新版ubuntu要求使用https源

by ITGeeker

如果你有root权限,那么就全局更改吧:

echo -e "
[global]
index-url = https://mirrors.aliyun.com/pypi/simple
[install]
trusted-host = mirrors.aliyun.com
extra-index-url=https://www.piwheels.org/simple">/etc/pip.conf
cat /etc/pip.conf

国内常用pip镜像包括:

  1. 阿里云 http://mirrors.aliyun.com/pypi/simple/
  2. 豆瓣http://pypi.douban.com/simple/
  3. 清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
  4. 中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
  5. 华中科技大学http://pypi.hustunique.com/
分类
android

scrcpy通过wifi把手机无线投屏到电脑上 并通过键盘和鼠标直接操作手机

最近华为更新EMUI之后,使用华为的有些笔记本或者平板,通过自带的“多屏互动”可以直接把华为手机投屏到笔记本电脑或者平板,而且可以直接操作,这样就不用在两个设备之间频繁的切换使用了。而且可以在电脑里刷抖音啦!

screenshot
scrcpy是开源的画面投屏项目 :https://github.com/Genymobile/scrcpy

如果没有使用华为设备,那么我们可以通过scrcpy这个开源程序实现相通功能。当然这个是只针对android手机的,不需要Root.

开启手机USB调试功能

不管有线连接或者无线连接,首先都要开启手机的USB调试 ,具体路径一般雷同,不同手机品牌路径和表述有所不同。开启方法是:

  1. “设置”->”关于手机”-> 连续点击版本号5次左右就会开启 “开发者选项”。
  2. 然后在 “设置”->” 系统和更新”->” 开发人员选项” 中同时开启 USB调试 和 USB调试(安全设置)。

也可以用adb usb命令来测试连接是否成功显示restarting in USB mode

手机画面有线投屏

很简单,从 https://github.com/Genymobile/scrcpy下载zip文件,解压缩,然后双击scrcpy.exe就会在电脑屏幕打开你的手机屏幕。

手机画面无线投屏 WIFI

  1. 手机打开调试模式,先有线连接到电脑
  2. 将手机与电脑连接到同一个网络中(也可以打开手机热点,电脑使用手机热点连接)
  3. 通过ADB设置手机打开tcpip监听端口,在CMD命令下输入:adb tcpip 8888
  4. 查看手机的ip地址,设置 -> 关于手机 -> 状态消息;也可通过ADB查看adb shell ifconfig
  5. 无线连接到手机 adb connect 192.168.1.177:8888(替换自己的ip地址)
  6. 提示成功之后,就可以拔掉数据线了
  7. 双击scrcpy.exe开启无线投屏,手机出现在电脑里啦

注意:如果没有adb命令,可以去android官网看看https://developer.android.com/studio/run/win-usb

也可以直接在scrcpy目录运行cmd,有自带的adb可用

by 技术奇客

Wifi相比USB连接存在速度问题,scrcpy默认是8Mbps,如果延迟严重,可以考虑降低速率:
scrcpy –bit-rate 2M –max-size 800
# 缩写:scrcpy -b2M -m800
同样对于视频流播放来说可能不会太理想。

by ITGeeker

scrcpy快捷键

直接分享一个快捷键图片吧,更多帮助可通过 scrcpy –help 来获取。

scrcpy快捷键

手机录屏: 

scrcpy –record mobile_scr_record.mp4

by 技术奇客