Esp8266和HomeKit
Summary
没有找到合适的简单解决方案,将Esp8266控制的设备连接到HomeKit.
所以参照EspEasy实现 HomeKit和Esp8266连接。
连接方式:

Raspberry Zero
Raspberry 安装homebridge-mqtt:
https://www.npmjs.com/package/homebridge-mqtt
阿里云服务器
云服务器上跑以下Docker
https://store.docker.com/images/eclipse-mosquitto
Esp8266
Esp8266上使用Arduino烧写本项目的EasyWifi.
测试的设备:
Features
- 可通过浏览器访问192.168.4.1,配置以下信息
- 设备名称
- MQTT服务器
- 需要连接的ssid和密码
- 发布和订阅的主题
- 设备连接后,自动添加到HomeBridge


Quickstart
树莓派安装homebridge
~/.homebridge/config.json
1 |
{
|


8266控制开关


把这些放在一个盒子中:

盖上盖子,接上射灯和插头

8266通过DHT11 获取温度和湿度

红外控制空调
向HomeBridge发送追加传感器的消息
1 |
{"name":"GreeAc","service_name":"IRRemoteAC","service":"Thermostat"}
|
收到HomeBridge设置变更的消息
1 |
{"name":"GreeAc","service_name":"IRRemoteAC","characteristic":"TargetHeatingCoolingState","value":1}
|
需要有两个文件,一个存Accessory的List,另外一个存IR数据库。
Accessory文件格式
1 |
[{"name":"GreeAc","service_name":"IRRemoteAC","service":"Thermostat"},
|
数据库文件格式
1 |
[{“name”:”TVBox”,”feature”:”power_on_off”,”type”:”NEC”,”code”:”80BF3BC4”,”len”:32},
|
Esp8266和HomeKit的更多相关文章
- ESP8266刷AT固件与nodemcu固件
这回是使用的这一款 因为这款默认的是支持AT指令的固件,,所以我们就刷nodemcu的 先看接线 GPIO0 默认是工作模式(不接线).如果接了低电平就是下载模式(给模块刷固件!!)所以接低电平.CH ...
- iOS homekit使用说明
本文由CocoaChina翻译组成员iBenjamin_Go和浅夏@旧时光翻译自苹果开发文档:HomeKit Developer Guide,敬请勘误. 本文档内容包括 第一部分:简介 第二部分:启用 ...
- 【002:ESP8266 移植 Mqtt 】
系统环境: ubuntu 16.04 64bitSDK版本: esp_iot_sdk_v1.3.0记录时间: 2016年10月13日联系方式: yexiaopeng1992@126.com 背景:在E ...
- HomeKit 与老旧设备
苹果推了HomeKit,已经有很多厂商在做,可以达到Siri控制所有设备的功能. 但是Siri也不是万能的,对人类的语义理解也会产生差错,不过我相信未来这个问题会解决掉. 如果家里有老旧的电视 ...
- Android@Home Apple HomeKit
Android@Home采用基于IEEE802.15.4标准的低功耗个域网协议的ZigBee技术,其是低功耗.低成本及低延迟.标准功率下可满足100米范围内的信号覆盖,并拥有三级安全模式,防止非法获取 ...
- BeagleBone Black– 智能家居控制系统 LAS - ESP8266 UDP 服务
NodeMCU 的文档里面终于发现,ESP8266 的GPIO 2 确实是 PIN 4,GPIO 0 是 PIN 3. https://github.com/nodemcu/nodemcu-firmw ...
- Beaglebone Black– 智能家居控制系统 LAS - 刷 WiFi 模块 ESP8266 Firmware 和 ESP8266 直接收发 GPIO 信号
用 Windows 来刷 ESP8266 固件有很多中文教程,来试试直接用 BBB 刷吧.目标是 NodeMCU,ESP-01 可用,就是我买的那个. 接线方式在上一篇.当 echo ‘BB-UART ...
- Beaglebone Black–智能家居控制系统 LAS - 用 UART 连接 ESP8266 (ESP-01 版)
这是一块便宜 (¥12.5)的 WiFi 模块,3.3V ,芯片是乐鑫科技(Espressif)出品.它本身是很多玩法,比如这个 NodeMCU (淘宝有套件焊接好一整套的带 USB 接口的,搜 es ...
- GeekPwn2015胸卡ESP8266 12E串口调试
相信今年参加GeekPwn活动的很多同学都获得了一枚GeekPwn的胸牌,为方便大家对胸牌进行一些调试和破解,这里分享一些关于这枚胸牌的一些信息 :)如发现文章之中有错误之处,欢迎大家斧正! 0×00 ...
随机推荐
- UVA 10269 Super Mario,最短路+动态规划
这个题目我昨晚看到的,没什么思路,因为马里奥有boot加速器,只要中间没有城堡,即可不耗时间和脚力,瞬间移动不超过L距离,遇见城堡就要停下来,当然不能该使用超过K次...我纠结了很久,最终觉得还是只能 ...
- 【网易官方】极客战记(codecombat)攻略-森林-流星雨star-shower
流星雨不仅是一个了不起的现象,而且是获得一些钱的好机会. 简介 流星雨正在下着你的宝石和硬币! 但星形金属不是很长寿,硬币很快就消失了. 宝石不会消失. 使用或语句提取密切的金币或宝石: if ite ...
- pip anaconda 添加国内镜像
源地址 官方默认镜像太慢.换成国内源比较快.几个源的地址: 清华:https://pypi.tuna.tsinghua.edu.cn/simple 阿里云:http://mirrors.aliyun. ...
- sol - 0x60,61,62
[例题]走廊泼水节 设当前扫描到边x,y,长度为z,x所处的并查集为Sx,y所处的并查集为Sy: 对于任意u属于Sx,v属于Sy,我们可以知道u,v之间必连一条边 但是我们要在保证x,y之间的边属于唯 ...
- MySQL数据库数据迁移:从一个服务器到另一个服务器
需要两个服务器数据库版本相同才可迁移 1:单个或多个数据库 mysqldump -h远程ip -u用户 -p密码 -P3306 -- -uroot -p -P3306 执行后输入本地数据库密码即可 : ...
- npm安装依赖报 npm ERR! code Z_BUF_ERROR npm ERR! errno -5 npm ERR! zlib: unexpected end of file 这个错误解决方案
今天碰到了一个比较奇怪的问题,下载依赖有问题报错 npm ERR! code Z_BUF_ERROR npm ERR! errno -5 npm ERR! zlib: unexpected end o ...
- MongoDB 索引 .explain("executionStats")
MongoDB干货系列2-MongoDB执行计划分析详解(3) http://www.mongoing.com/eshu_explain3 MongoDB之使用explain和hint性能分析和优化 ...
- MySQL获取或者查询数据库某个字段的特定几位(substring)
一.获取特定的几位: date字段值为(2019-12-13) 1.取date的后5位 select SUBSTRING(date,-5)from letter 结果为12-13 2从左开始第6位取( ...
- IE浏览器弹出的文件下载工具条实现自动另存为
IE浏览器中如果有一个文件可以下载,用鼠标点击一下文件的超链接,会在IE浏览器下方出现一个工具条,工具条上主要有“打开” “保存”两个按钮. 如果点击“保存”按钮,会把附件保存到系统的“下载”或“Do ...
- 用命令修改Oracle数据库密码
1.改密码 (1).打开doc命令框键入:sqlplus /nolog (2).输入:connect / as sysdba (3).修改密码:alter user userNa ...