前言
homekit是苹果公司的智能家居平台,可以将第三方智能产品对接到苹果的产品中,如iPhone,iPad等。今天,我们学习如何将一个开关通过homekit协议,加入到iPhone手机中,以实现手动控制或Siri语音控制Led灯的亮灭。
前人栽树后人乘凉,感谢git上的小哥开源自己的程序,源码地址esp32-homekit。注意:readme.md中的Setup Code是错误的,应该是053-58-197。
框架介绍
外国小哥给出了两个例程,一个普通的开关,一个温湿度传感器,经过测试,都没有什么问题。我们来一起学习这个简单的框架。
examples:是两个简单的例程,示范一下怎么用这套接口。
include:只有一个hap.h,封装了向上的函数接口和数据结构,上层开发只需要包含这一个头文件就可以了。
src:源码,不细学的话,没必要关注。
wolfssl:嵌入式SSL/TLS库服务器,和苹果服务器进行SSL加密通信。
hap.h
要学会使用HomeKit,这个hap.h是重中之重。
它含有三个枚举、两个结构体和若干个函数。我们先看这三个枚举。
enum hap_accessory_category {
HAP_ACCESSORY_CATEGORY_OTHER = 1,
……
};
enum hap_service_type {