美文网首页
Domoticz 连接 树莓派 和 天猫精灵

Domoticz 连接 树莓派 和 天猫精灵

作者: Txxxy | 来源:发表于2020-05-22 09:58 被阅读0次

    0x00 起因

    目前使用的 ESP8266 + blinker + 天猫精灵 + 433M 模块控制客厅的灯, 总是出现连接不上的情况. 应该是 blinker 的服务器问题, 没法解决, 所以改造下, 尽量把其中的大部分环节做到自己控制.

    0x01 用到的软件/硬件

    • 树莓派 4B 2GB (安装的ubuntu aarch64)

    ➜ ~ uname -a
    Linux ubuntu 5.4.0-1008-raspi #8-Ubuntu SMP Wed Apr 8 11:13:06 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux

    • Domoticz
    • 花生壳/花生棒
    • 433M 高频接发模块
    • 杜邦线

    流程图

    image.png

    0x02 树莓派安装 Domoticz

    2.1 Docker 方式

    我个人倾向于 Docker 安装, 安装卸载都简单, 尝试之后, 由于需要通过 Domoticz 运行树莓派上的调用 GPIO 的程序, 比较麻烦, 所以暂时放弃.

    2.2 直接树莓派上安装

    网络原因, 把官方的安装脚本 修改了一下
    可以通过以下命令直接安装
    curl -L https://raw.githubusercontent.com/Daoctor/Domoticz_RPI_Install/master/install.sh | sudo bash

    这一步完成后应该可以通过 <树莓派 IP>:<端口> 访问到 Domoticz 的面板

    0x03 433M 高频接发模块 和 树莓派的连接

    3.1 环境配置

    这篇文章很好, 早点看到能省 2 个小时
    这里面用的 433Utils 库 是 fork 修改过的.
    https://www.ibm.com/developerworks/cn/iot/library/iot-smart-home-02/index.html
    其中 WiringPI 会遇到下载地址失效问题
    https://github.com/WiringPi/WiringPi.git 这个地址替代

    3.2 修改脚本

    修改 上一步中 codesend.cpp, 把其中的 code, protocol, pulseLength 变量 用常量代替, 方便运行.
    编译后运行 ./codesend 如果提示
    Unable to open /dev/mem or /dev/gpiomem: Permission denied
    就需要修改一下权限, 比较好的方式是添加一个组
    以我自己的用户 ubuntu 为例

    sudo group add gpio
    sudo usermod -aG gpio ubuntu
    sudo chown root.gpio /dev/mem
    sudo chmod g+rw /dev/mem
    sudo chown root.gpio /dev/gpiomem
    sudo chmod g+rw /dev/gpiomem
    

    再运行, 应该就不需要 sudo 权限了.

    这一步完成后应该 可以通过不需要要 sudo 的命令控制灯光

    0x04 Domoticz 连接 433M 模块

    在 Domoticz 中添加树莓派作为 设备

    Setup -> Hardware 添加设备
    注意 Type

    选择面板顶部的 Switches 选项, 然后选择 Manual Light/Switch
    手动添加一个开关.

    编辑开关的动作

    填写上一部的脚本路径

    测试


    image.png

    这一步完成后应该可以通过点击面板上的灯控制家里灯的开关

    0x5 外网访问 Domoticz

    花生壳软件安装

    aarch64 没有对应的 花生壳 软件, 通过 dpkg --add-architecture armhf 添加架构兼容的方式来安装 花生壳 也遇到了卡死的情况, 暂时不用

    花生棒

    配置 花生壳 访问 Domoticz, 注意这种方式访问相当于通过内网访问, 需要配置 Domoticz对所有登录都要求密码

    这一步完成, 应该做到通过外网可以访问到Domoticz页面

    0x6 Domoticz对接天猫精灵

    配置服务

    进入 https://ali.domoticz.cn/ 按照要求配置
    上面测试连接, 一定要通过才可以
    我用 Sakura frp 测试是不行的 所以上一步用了花生壳的服务.

    天猫精灵 APP 端绑定

    天猫精灵 技能搜索 Domoticz, 绑定账号

    这一步完成, 应该做到 在 天猫精灵 app 中发现了自己在 https://ali.domoticz.cn/ 添加的开关, 并且可以通过天猫精灵开关灯

    相关文章

      网友评论

          本文标题:Domoticz 连接 树莓派 和 天猫精灵

          本文链接:https://www.haomeiwen.com/subject/nuufahtx.html