智能家庭改造计划

目标

序号 内容 状态
1. 了解当前温湿度,提前准备是否使用空调暖气 CHECK
2. 床头灯的远程控制,via手机、遥控器联动 CHECK
3. ios 安卓 电脑多平台通用,同时hb ha CHECK
4. lg g pad旧物利用,作为控制终端使用 CHECK
5. 室内机apk 部署于lg g pad上 CHECK
6. 树莓派作为主控隐藏化 CHECK
7. 改造家庭局域网络,分析mesh网络与电力猫差别 CHECK
8. 修复电力猫dns错误 CHECK //Newifi问题
9. 路由器多功能 CHECK
10. 目前的灯光控制优化,增加射频遥控器控制已有射频开关 需购博联rm pro POSTPONED

现状

  1. 已有树莓派,安装stretch后docker下安装hassio+homebridge插件

  2. 智能装备有

米家:

  • 网关二代 * 1
  • 温湿度传感器 * 2
  • 开关 //20180325购入
  • zigbee版插座 //20180325购入

yeelight:

  • 床头灯蓝牙版

射频遥控开关:

  • 单火线版 * 2 (不同品牌)

射频电源插座:

  • 单品牌 * 2 (遥控器不灵,需要配对,//已修复、原因为电池导片生锈导致接触不良,铲掉即可,但其中一个插座配对无效)

控制终端:

  • intel nuc 6i5syh
  • lg g pad v500 android
  • iphone7、 iphone6p、ipad mini4
  • maybe galaxy s7 and iphone7p

输入输出设备:

  • 罗技k380、thinkpad蓝牙鼠标、magic mouse2、magic keyboard(g6)、罗技mk270
  • dell u2415h 23.8寸显示器
  • sharp 47寸电视
  1. 网络架构
  • 主路由器: 电信光猫、 Tenda千兆电力猫(pw3)
  • 从路由器:Tenda千兆电力猫(pa3)*2
    -- 设备均下挂于Tenda下
  • 外网访问: TeamViewer(nuc, raspberry pi3b, yoga book, iPad mini 4) 、Ngrok内网穿透(natapp)用于DiskStation( File, Video, Audio)、Nat123(备用访问) 、FRP、域名
  • 内网访问: ds-nuc( DiskStation), Desktop-nuc( NUC)

规划

计划

1. 总体计划

2. 待购清单

设备 参考价格
broadlink rm pro 140
米家空调伴侣升级版 199
客厅柜式空调 3p ???
mesh路由器 1000以内
墙内火线开关 68一个

3. 下一步目标

  1. 树莓派备份 DONE!

  2. 树莓派wifi固定ip DONE!

  3. 树莓派yeelightbt整合入HA PARTIALLY DONE! yeelightbt整合入PYTHON,且可被HA识别。运行出错。

  4. Homebridge插件yeelight 链接床头灯 DONE!

  5. 开关控制温奶器电源 DONE!

  6. 备案 done!20180404

  7. FRP双开 done!

  8. 续费cvm done! //2019-04-04 10:02 到期

  9. HA、HB重复识别问题配置解决 DONE!

  10. 验证开关HB可用 DONE!

  11. 修正rsync文件较大问题 目前可用,4g仅多80mb。可能是docker问题 DONE!

  12. 开搞平板电脑,刷机。弄台能刷机的电脑Done x81s

  13. 部署lg驱动,备份win7 DONE!

  14. 研究降级及root done!

  15. 刷第三方rom,选择aosp还是第三方 lineageOS 7.1.2 done!

  16. 尝试安装室内机 done!

  17. 研究室内机是否可用

  18. nuc远程开机 done!

  19. HA接入yeelightbt,使用custom_components,自己开发

  20. 学习nodejs编程方法,本地编译及调试yeelight_ble

3.2 操作记录

20180327

  • 购买腾讯cvm7天试用

  • 购买1年域名

  • 小米插座zigbee版、小米无线开关到货并连接上网关。触发可用。距离网关较远(卧室-客厅)//20180329, 改为卧室-小房间,经两日验证,关门后信号无法识别。需要稳定性还是放在一个房间或者仅隔一面墙。

  • 新增设备对HA识别需要重启HA服务,HB可自动识别

  • 新购入的micro hdmi、thinkpad 蓝牙鼠标、罗技k380已经部署在yogabook上。蓝牙鼠标有较明显延迟 //经x220 mac os验证为yogabook问题。//20180329 经yogabook驱动自动加载后修复该问题。

  • 部署frp 成功映射部分端口,提供服务有dsm、rdp、photo、ssh

参考:十分钟配置frp
简要步骤:

  1. 登陆64位linux服务器ssh
  2. 获取frp,最新版本
    参考语句

wget https://github.com/fatedier/frp/releases/download/v0.16.1/frp_0.16.1_linux_amd64.tar.gz

  1. 解压

tar -zxvf frp_0.16.1_linux_amd64.tar.gz

  1. 进入解压目录cd frp_0.16.1_linux_amd64
  2. 配置服务端(公网服务器)

[common]
bind_port = xxxx #与客户端绑定的进行通信的端口
vhost_http_port = xxxx #访问客户端web服务自定义的端口号

  1. 后台启动

nohup ./frps -c ./frps.ini &

  1. 配置客户端(略)
  2. 在客户端启动frpc -c ./frpc.ini

20180327

  1. frp双开、cvm1年
  2. 备份rpi,挂载ftp,策略:
  • 本地img镜像
  • 备份完成后复制到ftp目录中(nas上)

20180329

  1. 备份脚本验证后得出结论:所需空间比df -P大得多。(实际恢复出来没那么多)
  2. 正在尝试恢复。恢复成功! 实际占用空间比原计划多一些
  3. 验证脚本成功,修订脚本完成!脚本地址:rpi-bk.sh
    先执行sudo apt-get -y install rsync dosfstools parted kpartx exfat-fuse
    使用前确定挂载路径(U盘、移动硬盘、本地)、再重启后运行脚本

经验:

  • 使用curlftpfs无法加载ftp 上img文件,不能加载为读写,仅只读
  • 备份实际空间变化出入较大,比率由1.2->1.5

20180330

  1. 树莓派上设置静态ip成功(备用镜像,待运行镜像设置),设置方法:
  • 右键无线图标选择wireless and wired network settings
  • 设置ssid以及wlan0的固定ip,其他留空。勾选Automatically configure empty options
  • 重启树莓派
    注: 实际修改的文件为/etc/dhcpcd.conf , 末尾增加了如下内容

interface wlan0
inform 192.168.x.xx
SSID xxxx
inform 192.168.x.xx

  1. HA、HB重复识别问题配置解决
  • 使用HB的话,在HA的customize.yaml中将状态中的设备id的homebridge_hidden设为true:

group.all_switches:
  homebridge_hidden: true

  • 使用HA的话, 在HB的config.json 中"MiAqaraPlatform"下的defaultValue进行修改:

"defaultValue": {
#这个序列号在HOMEKIT中可查询到
  "xxx": {
     "PlugBase_Outlet": {
       "disable": true
     }
   }

  1. 验证HB可以控制小米插座,并可模拟出单击、双击(未验证)

  2. 小米插座使用HA,在HB中识别为开关,改为插座的方法:

switch.plug_xxx:
  homebridge_switch_type: outlet

20180402

  1. yeelight床头灯接入ha尝试(python-yeelightbt)。目前支持HA的yeelight插件仅发现 python-yeelightbt。测试后命令行可用。docker下不知道该如何安装,目前在pyhton虚拟环境成功安装。步骤如下:
  • 基于mossbian 0.3.1安装
  • 修改homeassistant密码及添加sudoers权限

sudo su
visudo
homeassistant ALL=(ALL:ALL) ALL
保存退出
passwd homeassistant
exit

  • 进入虚拟环境

sudo su -s /bin/bash homeassistant
cd /srv/homeassistant
source bin/activate

  • 安装yeelightbt

sudo apt-get install python-pip libglib2.0-dev git build-essential
sudo pip3 install construct==2.9.25
pip3 install --no-binary :all: bluepy
cd ~
git clone https://github.com/rytilahti/python-yeelightbt
cd python-yeelightbt
python3 setup.py build
sudo python3 setup.py install
cd /usr/local/lib/python3.5/dist-packages/
寻找bluepy目录,在目录下有bluepy-helper
sudo setcap cap_net_admin,cap_net_raw+eip bluepy-helper

  • 测试是否安装正常

yeelightbt scan或者sudo yeelightbt scan
以上步骤可以获取mac地址

  • 将yeelightbt添加入HA
  • sudo mkdir -p /home/homeassistant/.homeassistant/custom_components/light
  • sudo cp ~/python-yeelightbt/custom_components/light/yeelight_bt.py /home/homeassistant/.homeassistant/custom_components/light
  • 设置HA下的configuration.yaml

light:
  - platform: yeelight_bt
    devices:
      Bedside:
        mac: 'f8:24:41:xx:xx:xx'

20180403

  • 安装nodejs 使用国内源
  • 更换apt-get源

sudo leafpad /etc/apt/sources.list
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
sudo leafpad /etc/apt/sources.list.d/raspi.list
deb http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
deb-src http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui

  • 添加nodesource配置

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

  • 替换源

sudo leafpad /etc/apt/sources.list.d/nodesource.list
https://deb.nodesource.com/node/替换为https://mirrors.tuna.tsinghua.edu.cn/nodesource/deb_9.x/
sudo apt-get update

  • 安装nodejs

sudo apt-get install -y nodejs

  • 替换npm源

npm config set registry https://registry.npm.taobao.org

  • mossbian 下使用hassbian-config安装homebridge

sudo hassbian-config install homebridge

20180404

  • 挂载ntfs
  • 安装ntgs-3g

sudo apt-get install ntfs-3g

  • 查看移动硬盘

sudo fdisk -l

  • 创建挂载点

sudo mkdir -p /mnt/ntfs

  • 挂载硬盘

sudo mount -t ntfs-3g /dev/sda1 /mnt/ntfs

  • 查看系统版本

lsb_release -a

hassbian-config安装的homebridge相关配置

Running as: homebridge
Configuration dir: /home/homebridge/.homebridge/
Start service: sudo systemctl start homebridge.service
Stop service: sudo systemctl stop homebridge.service

Restart service: sudo systemctl restart homebridge.service - You have to do this when changing configuration.
Service status: sudo systemctl status homebridge.service
View Log: sudo journalctl -f -u homebridge

20180404

  • Yeelight床头灯成功接入HB,步骤:
  • 切换至homebridgey用户并加入sudoer
  • 安装环境

sudo apt-get install libbluetooth-dev libudev-dev
Go to your node_modules folder
(You can find it by using by npm -g root)
sudo npm install -g --unsafe-perm noble
会出现err,可无视optional dependence,usb等
sudo apt-get install libcap2-bin
Run following command:
sudo setcap cap_net_raw+eip $(eval readlink -fwhich node)
Run following command:
sudo hciconfig hci0 up
sudo hciconfig hci0 reset

  • 安装 homebridge-re-yeelight-ble

sudo npm install -g homebridge-re-yeelight-ble

  • 配置config.json

"platforms": [
  {
    "platform": "ReYeelightBLEPlatform",
    "defaultValue": {
      "f8:24:41:e9:xx:xx": "Bedside Lamp"
    }
  }
]

  • 重启Homeassistant

sudo systemctl restart home-assistant@homeassistant.service

20180409

  • 完成部署刷机电脑,win7环境。临时解决接口问题
  • 报废a7jr

20180410

使用systemctl设置服务
在/usr/lib/systemd/system/ 下新建文件frp.service

sudo nano /usr/lib/systemd/system/frp.service

如果目录system不存在,请自行创建:

sudo mkdir /usr/lib/systemd/system/

frp.service文件内容如下:

[Unit]
Description=frp
After=network.target
[Service]
Type=simple
ExecStart=/home/pi/frp/frpc -c /home/pi/frp/frpc.ini
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target

这里直接指定启动文件的路径,无法指定到pi用户执行,所以只能在root用户下执行。

  • 设置服务自启动:

sudo systemctl enable frp.service

  • 查询状态:

sudo systemctl start frp.service

  • root lg g pad 8.3 刷入recovery和android 7.1.2
    具体参见lg g pad文档
  • 室内机apk安装至lg g pad等待测试

20180411

  • nuc成功远程开机
    需将win10的快速启动关闭,关闭方法:设置 -> 系统 -> 电源和睡眠 -> 其他电源设置 -> 选择电源按钮的功能 -> 更改当前不可用设置 -> 取消“启用快速启动”

20180412

  • x81s休眠情况下远程唤醒成功
    方法:在网络适配器中配置以太网卡->电源管理->取消 允许计算机关闭此设备以节约电源、 勾选 允许此设备唤醒计算机、勾选 允许幻数据包唤醒计算机
    高级中 唤醒数据包 启用

  • 增加外网唤醒页面,可远程唤醒网段内所有设备

20180416

  • mesh网络观点:没有ac+ap好。现有状态下可以分步实施。准备部署aimesh。已购入r6300v2,支持刷机成aimesh
    下一步准备根据5g情况分析是否合适aimesh

20180501

  • 手动更新HOMEASSISTANT

sudo systemctl stop home-assistant@homeassistant.service
sudo su -s /bin/bash homeassistant
source /srv/homeassistant/bin/activate
pip3 install --upgrade homeassistant
exit
sudo systemctl start home-assistant@homeassistant.service
查看日志:sudo journalctl -u home-assistant@homeassistant.service -f
重启:sudo systemctl restart home-assistant@homeassistant.service

  • 设备追踪
  1. asus-merlin只开了telnet。所以protocol填telnet,登录成功。参考device_tracker
  2. 更新时间>3分钟
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,711评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,932评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,770评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,799评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,697评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,069评论 1 276
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,535评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,200评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,353评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,290评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,331评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,020评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,610评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,694评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,927评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,330评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,904评论 2 341

推荐阅读更多精彩内容