Skip to content

Commit 5a7501e

Browse files
author
curla92
committed
no message
1 parent ec4a910 commit 5a7501e

11 files changed

Lines changed: 1004 additions & 0 deletions

File tree

.gitmodules

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
[submodule "components/esp-8266/esp-wifi-config"]
2+
path = components/esp-8266/esp-wifi-config
3+
url = https://github.com/maximkulkin/esp-wifi-config.git
4+
[submodule "components/esp-8266/esp-cjson"]
5+
path = components/esp-8266/esp-cjson
6+
url = https://github.com/maximkulkin/esp-cjson.git
7+
[submodule "components/common/esp-homekit"]
8+
path = components/common/esp-homekit
9+
url = https://github.com/maximkulkin/esp-homekit.git
10+
[submodule "components/common/esp-wolfssl"]
11+
path = components/common/esp-wolfssl
12+
url = https://github.com/maximkulkin/esp-wolfssl.git
13+
[submodule "lib/esp-adv-button"]
14+
path = lib/esp-adv-button
15+
url = https://github.com/RavenSystem/esp-adv-button.git

common/custom_characteristics.h

Lines changed: 167 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
1+
#ifndef __HOMEKIT_CUSTOM_CHARACTERISTICS__
2+
#define __HOMEKIT_CUSTOM_CHARACTERISTICS__
3+
4+
#define HOMEKIT_CUSTOM_UUID(value) (value "-03a1-4971-92bf-af2b7d833922")
5+
6+
#define HOMEKIT_SERVICE_CUSTOM_SETUP HOMEKIT_CUSTOM_UUID("F00000FF")
7+
8+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_SHOW_SETUP HOMEKIT_CUSTOM_UUID("F0000106")
9+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_SHOW_SETUP(_value, ...) \
10+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_SHOW_SETUP, \
11+
.description = "Show Setup", \
12+
.format = homekit_format_bool, \
13+
.permissions = homekit_permissions_paired_read \
14+
| homekit_permissions_paired_write \
15+
| homekit_permissions_notify, \
16+
.value = HOMEKIT_BOOL_(_value), \
17+
##__VA_ARGS__
18+
19+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_DEVICE_TYPE_NAME HOMEKIT_CUSTOM_UUID("F0000107")
20+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_DEVICE_TYPE_NAME(_value, ...) \
21+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_DEVICE_TYPE_NAME, \
22+
.description = "1) Dev Type", \
23+
.format = homekit_format_string, \
24+
.permissions = homekit_permissions_paired_read, \
25+
.value = HOMEKIT_STRING_(_value), \
26+
##__VA_ARGS__
27+
28+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_LED_GPIO HOMEKIT_CUSTOM_UUID("F0000108")
29+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_LED_GPIO(_value, ...) \
30+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_LED_GPIO, \
31+
.description = "2) Led GPIO", \
32+
.format = homekit_format_uint8, \
33+
.permissions = homekit_permissions_paired_read \
34+
| homekit_permissions_paired_write \
35+
| homekit_permissions_notify, \
36+
.min_value = (float[]) {0}, \
37+
.max_value = (float[]) {16}, \
38+
.min_step = (float[]) {1}, \
39+
.value = HOMEKIT_UINT8_(_value), \
40+
##__VA_ARGS__
41+
42+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_LED_INVERTED HOMEKIT_CUSTOM_UUID("F0000109")
43+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_LED_INVERTED(_value, ...) \
44+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_LED_INVERTED, \
45+
.description = "3) Led Inverted", \
46+
.format = homekit_format_uint8, \
47+
.permissions = homekit_permissions_paired_read \
48+
| homekit_permissions_paired_write \
49+
| homekit_permissions_notify, \
50+
.min_value = (float[]) {0}, \
51+
.max_value = (float[]) {1}, \
52+
.min_step = (float[]) {1}, \
53+
.valid_values = { \
54+
.count = 2, \
55+
.values = (uint8_t[]) { 0, 1 }, \
56+
}, \
57+
.value = HOMEKIT_UINT8_(_value), \
58+
##__VA_ARGS__
59+
60+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_INIT_STATE_LED HOMEKIT_CUSTOM_UUID("F0000110")
61+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_INIT_STATE_LED(_value, ...) \
62+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_INIT_STATE_LED, \
63+
.description = "4) Led Init State", \
64+
.format = homekit_format_uint8, \
65+
.permissions = homekit_permissions_paired_read \
66+
| homekit_permissions_paired_write \
67+
| homekit_permissions_notify, \
68+
.min_value = (float[]) {0}, \
69+
.max_value = (float[]) {2}, \
70+
.min_step = (float[]) {1}, \
71+
.valid_values = { \
72+
.count = 3, \
73+
.values = (uint8_t[]) {0, 1, 2}, \
74+
}, \
75+
.value = HOMEKIT_UINT8_(_value), \
76+
##__VA_ARGS__
77+
78+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_LED_DELAY HOMEKIT_CUSTOM_UUID("F0000111")
79+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_LED_DELAY(_value, ...) \
80+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_LED_DELAY, \
81+
.description = "5) Fading Effect Time", \
82+
.format = homekit_format_float, \
83+
.unit = homekit_unit_seconds, \
84+
.permissions = homekit_permissions_paired_read \
85+
| homekit_permissions_paired_write \
86+
| homekit_permissions_notify, \
87+
.min_value = (float[]) {0}, \
88+
.max_value = (float[]) {5}, \
89+
.min_step = (float[]) {1}, \
90+
.value = HOMEKIT_FLOAT_(_value), \
91+
##__VA_ARGS__
92+
93+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_TOGGLE_GPIO HOMEKIT_CUSTOM_UUID("F0000112")
94+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_TOGGLE_GPIO(_value, ...) \
95+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_TOGGLE_GPIO, \
96+
.description = "6) Toggle GPIO", \
97+
.format = homekit_format_uint8, \
98+
.permissions = homekit_permissions_paired_read \
99+
| homekit_permissions_paired_write \
100+
| homekit_permissions_notify, \
101+
.min_value = (float[]) {0}, \
102+
.max_value = (float[]) {16}, \
103+
.min_step = (float[]) {1}, \
104+
.value = HOMEKIT_UINT8_(_value), \
105+
##__VA_ARGS__
106+
107+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_EXTERNAL_TOGGLE HOMEKIT_CUSTOM_UUID("F0000113")
108+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_EXTERNAL_TOGGLE(_value, ...) \
109+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_EXTERNAL_TOGGLE, \
110+
.description = "7) External Toggle Type", \
111+
.format = homekit_format_uint8, \
112+
.permissions = homekit_permissions_paired_read \
113+
| homekit_permissions_paired_write \
114+
| homekit_permissions_notify, \
115+
.min_value = (float[]) {0}, \
116+
.max_value = (float[]) {2}, \
117+
.min_step = (float[]) {1}, \
118+
.valid_values = { \
119+
.count = 3, \
120+
.values = (uint8_t[]) {0, 1, 2}, \
121+
}, \
122+
.value = HOMEKIT_UINT8_(_value), \
123+
##__VA_ARGS__
124+
125+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_IP_ADDR HOMEKIT_CUSTOM_UUID("F0000114")
126+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_IP_ADDR(_value, ...) \
127+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_IP_ADDR, \
128+
.description = "8) Wifi IP Addr", \
129+
.format = homekit_format_string, \
130+
.permissions = homekit_permissions_paired_read, \
131+
.value = HOMEKIT_STRING_(_value), \
132+
##__VA_ARGS__
133+
134+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_WIFI_RESET HOMEKIT_CUSTOM_UUID("F0000115")
135+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_WIFI_RESET(_value, ...) \
136+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_WIFI_RESET, \
137+
.description = "9) Wifi Reset", \
138+
.format = homekit_format_bool, \
139+
.permissions = homekit_permissions_paired_read \
140+
| homekit_permissions_paired_write \
141+
| homekit_permissions_notify, \
142+
.value = HOMEKIT_BOOL_(_value), \
143+
##__VA_ARGS__
144+
145+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_REBOOT_DEVICE HOMEKIT_CUSTOM_UUID("F0000116")
146+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_REBOOT_DEVICE(_value, ...) \
147+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_REBOOT_DEVICE, \
148+
.description = "10) Reboot", \
149+
.format = homekit_format_bool, \
150+
.permissions = homekit_permissions_paired_read \
151+
| homekit_permissions_paired_write \
152+
| homekit_permissions_notify, \
153+
.value = HOMEKIT_BOOL_(_value), \
154+
##__VA_ARGS__
155+
156+
#define HOMEKIT_CHARACTERISTIC_CUSTOM_OTA_UPDATE HOMEKIT_CUSTOM_UUID("F0000117")
157+
#define HOMEKIT_DECLARE_CHARACTERISTIC_CUSTOM_OTA_UPDATE(_value, ...) \
158+
.type = HOMEKIT_CHARACTERISTIC_CUSTOM_OTA_UPDATE, \
159+
.description = "11) Firmware Update", \
160+
.format = homekit_format_bool, \
161+
.permissions = homekit_permissions_paired_read \
162+
| homekit_permissions_paired_write \
163+
| homekit_permissions_notify, \
164+
.value = HOMEKIT_BOOL_(_value), \
165+
##__VA_ARGS__
166+
167+
#endif

common/ota_sign.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#!/bin/bash
2+
openssl sha384 -binary -out firmware/main.bin.sig firmware/main.bin
3+
printf "%08x" `cat firmware/main.bin | wc -c` | xxd -r -p >> firmware/main.bin.sig

components/common/esp-homekit

Submodule esp-homekit added at 0c5139f

components/common/esp-wolfssl

Submodule esp-wolfssl added at 790b040

components/esp-8266/esp-cjson

Submodule esp-cjson added at 2b93171
Submodule esp-wifi-config added at 06901b7

lib/esp-adv-button

Submodule esp-adv-button added at 2cb3973

src/Makefile

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
PROGRAM = main
2+
3+
EXTRA_COMPONENTS = \
4+
extras/onewire \
5+
extras/http-parser \
6+
extras/dhcpserver \
7+
extras/pwm \
8+
extras/rboot-ota \
9+
$(abspath ../lib/esp-adv-button) \
10+
$(abspath ../components/esp-8266/esp-wifi-config) \
11+
$(abspath ../components/esp-8266/esp-cjson) \
12+
$(abspath ../components/common/esp-wolfssl) \
13+
$(abspath ../components/common/esp-homekit) \
14+
15+
FLASH_SIZE = 8
16+
FLASH_MODE = dout
17+
FLASH_SPEED = 40
18+
19+
HOMEKIT_SPI_FLASH_BASE_ADDR = 0x8c000
20+
HOMEKIT_MAX_CLIENTS = 16
21+
HOMEKIT_SMALL = 0
22+
23+
EXTRA_CFLAGS += -I../.. -DHOMEKIT_SHORT_APPLE_UUIDS
24+
EXTRA_CFLAGS += -DHOMEKIT_OVERCLOCK_PAIR_VERIFY
25+
EXTRA_CFLAGS += -DHOMEKIT_OVERCLOCK_PAIR_SETUP
26+
27+
## DEBUG
28+
#EXTRA_CFLAGS += -DHOMEKIT_DEBUG=1
29+
30+
include $(SDK_PATH)/common.mk
31+
32+
LIBS += m
33+
34+
monitor:
35+
$(FILTEROUTPUT) --port $(ESPPORT) --baud 115200 --elf $(PROGRAM_OUT)

0 commit comments

Comments
 (0)