maccoylton / esp-homekit-motion-sensor Goto Github PK
View Code? Open in Web Editor NEWA HomeKit firmware for a motion sensor infrared motion sensor - this an OTA firmware
License: Apache License 2.0
A HomeKit firmware for a motion sensor infrared motion sensor - this an OTA firmware
License: Apache License 2.0
I want make a outdoor light with motion sensor can add gpio pin for relay?
I success write and test it by ESP8266 (NodeMCU),
but whey Power of ESP8266 (NodeMCU) then power on,
why Home app lost the motion sensor?
Thanks for your help and appreciate your amazing hard work.
is it possible to I send temperature to another esp with http_post
Question:
Is it as simple as re-connecting to the device and giving it a different Github path to get different firmware (i.e. a different build that uses a different GPIO pin for motion)?
I note that you have the bin in a particular place... so just wanted to make sure I had things set up correctly. I'd like to push a binary with some different changes that I would like to make for my particular device.
Thanks for all the assistance so far!
How hard would it be to switch this for a water sensor?
What ist the problem? Compiling worked, flashing worked ...
`ets Jan 8 2013,rst cause:2, boot mode:(3,6)
load 0x40100000, len 2292, room 16
0x40100000: _stext at ??:?
tail 4
chksum 0x57
load 0x3ffe8000, len 772, room 4
tail 0
chksum 0x0b
csum 0x0b
rBoot v1.4.0 - [email protected]
Flash Size: 8 Mbit
Flash Mode: DIO
Flash Speed: 40 MHz
rBoot Option: Big flash
rBoot Option: RTC data
Booting rom 0.
pp_task_hdl : 3ffeff10, prio:14, stack:512
pm_task_hdl : 3ffef800, prio:1, stack:176
frc2_timer_task_hdl:0x3fff42b0, prio:12, stack:200
ESP-Open-SDK ver: 0.0.1 compiled @ Jan 3 2019 15:28:12
phy ver: 273, pp ver: 8.3
manuf='manuf_unknown' serial='60:01:94:5D:35:6D' model='model_unknown' revision='0.0.0' c#=0
mode : softAP(62:01:94:5d:35:6d)
add if1
bcn 100
checkWifiTask: status = 255
HTTP post task starting...
Suspending http_post_task
HomeKit: Starting server
HomeKit: Using existing accessory ID: A1:4C:A2:57:8F:A6
mDNS_init: wifi opmode not station
HomeKit: Configuring mDNS
rtos assert /root/Homekit/esp-open-rtos/FreeRTOS/Source/queue.c 1406
abort() invoked at 0x40204a87.
0x40204a87: vAssertCalled at /root/Homekit/esp-open-rtos/FreeRTOS/Source/portable/esp8266/port.c:197
Stack: SP=0x3fff62e0
0x3fff62e0: 00000000 3fff1884 00000000 40204a8a
0x40204a8a: vAssertCalled at ??:?
0x3fff62f0: 00000000 3fff6340 00000000 402052ac
0x402052ac: xQueueSemaphoreTake at /root/Homekit/esp-open-rtos/FreeRTOS/Source/queue.c:2346
0x3fff6300: 3fff6408 00000001 3ffefe70 40205040
0x40205040: xQueueGiveMutexRecursive at /root/Homekit/esp-open-rtos/FreeRTOS/Source/queue.c:2346
0x3fff6310: ffffffff 0000000a 3fff1c5c 402108cc
0x402108cc: _lock_release_recursive at /root/Homekit/esp-open-rtos/core/newlib_syscalls.c:202
0x3fff6320: 3ffeea50 3fff6454 3fff1c5c 4023b160
0x4023b160: json_flush at ??:?
0x3fff6330: 3ffeea50 3fff1884 40235964 4021c25d
0x40235964: sdk_Uart_Init at ??:?
0x4021c25d: mdns_clear at /root/Homekit/esp-homekit-demo/examples/motion_sensor/esp-homekit-motion-sensor/components/esp-homekit/src/mdnsresponder.c:537
0x3fff6340: 3fff6330 3ffe8978 40235964 4021bacf
0x40235964: sdk_Uart_Init at ??:?
0x4021bacf: homekit_mdns_configure_finalize at /root/Homekit/esp-homekit-demo/examples/motion_sensor/esp-homekit-motion-sensor/components/esp-homekit/src/port.c:69
0x3fff6350: 00000031 3fff6234 00000000 4023b160
0x4023b160: json_flush at ??:?
Free Heap: 34624
_heap_start 0x3fff2130 brk 0x3fff78cc supervisor sp 0x40000000 sp-brk 34612 bytes
arena (total_size) 22428 fordblks (free_size) 12 uordblocks (used_size) 22416
`
Question: I've got some 1btn devices that I'm thinking of converting to motion sensors (they are based on ESP8266mod chips)
I've followed the info in your wiki, got everything flashed, connected to the device and provided the info that you mentioned (including your git hub directory for the main.bin to load).
However, these boards don't have the GPIO pin you reference in main.c (GPIO 12)
I have access to 15, 2 and 5... that's all that's broken out to the header that I can use)
So, changing the code doesn't seem like a big deal. But you don't describe the process for how you made the main.bin file.
Can you provide instructions on that so that I can make the change?
Also, I have a multi-color LED... I might want to update for that later (after this first thing in working... could use RED for motion detected, and different colors for low battery, connected, not connected, OTA occuring, etc.)
Thanks!
Oh, in the wiki -- One editing update -- The line where you describe erasing the ESP, that command is "joined" to the command for flashing. I think putting it into code format would clean that up (or just split the lines) and make it a little easier for folks to copy/paste.
What pin on a Nodemcu 1.0 12E should the motion sensor trigger pin be connected to?
I managed to get the firmware installed and working in HomeKit but need to finish the hardware setup. Thank you for the firmware.
There are a few typos in your wiki that you may want to edit.
In the last steps of Stage 1 you have the command to erase the flash duplicated.
In the instructions to connect to WiFi, the GitHub Directory shows "maccoylton/eps-homekit-motion-sensor" and should be "maccoylton/esp-homekit-motion-sensor" noting that "eps" should be "esp"
The following output is showing the error.
do you know why?
Its every 1 - 3 days most after 2 days.
Simple restart fix it, but it will need to power off and on to work again...
`
checkWifiTask WiFi: check interval 10, Status: connection ok: Free Heap=27516, Free Stack=13
checkWifiTask WiFi: check interval 10, Status: connection ok: Free Heap=27516, Free Stack=13
checkWifiTask WiFi: check interval 10, Status: connection ok: Free Heap=27516, Free Stack=13
Motion Detected on 12
::rtos assert /opt/esp-open-rtos/FreeRTOS/Source/queue.c 1434
::rtos assert /opt/esp-open-rtos/FreeRTOS/Source/queue.c 1434
::rtos assert /opt/esp-open-rtos/FreeRTOS/Source/queue.c 1434
::rtos assert /opt/esp-open-rtos/FreeRTOS/Source/queue.c 1434
:::rtos assert /opt/etx rts error 0x17
:::rtos assert abort() invoked at 0x40204dc7.
:::rtos assert abort() invoked at 0x40204dc7.
::::rtos assert �
::::rtos assert @��?�!@�
::::rtos assert @��?�!@�
::::rtos assert @��?�!@�
::::rtos assert @��?�!@�
::::rtos assert @��?�!@�
::::rtos assert @��?�!@�
::::rtos assert @��?�!@�
::::rtos assert @��?�!@�
:::Fatal exh,!@ion (222):
`
Where can I see the Serial set up so that I could monitor the ESP when hooked up to USB Serial adapter? I've grep'ed thru the code and can't seem to find anything anywhere that looks like the configuration for that...
Thanks!
In checking out the release, it's not clear if some things are missing... there isn't an "extras" directory (though it's referenced in the makefile)
You also seem to be referencing openSSL from a fixed location... (that I can easily fix)
Also, which type of ESP chip was the existing main.bin compiled for?
I get what looks like a crash when it tries to start:
dhcp client start...
ip:172.16.147.185,mask:255.255.0.0,gw:172.16.0.1
wifi_config: wifi_config_sta_connect_timeout_callback: Successfully connected
wifiready-done
--- ota_boot...0
OTABOOT VERSION: 0.3.0
--- ota_init
Function called without core lock
Function called without core lock
Function called without core lock
Function called without core lock
Function called without core lock
Function called without core lock
Function called without core lock
Function called without core lock
Function called without core lock
Function called without core lock
Function called without core lock
active_sector: 0x0
--- ota_set_verify...OFF
--- ota_get_version
--- ota_connect
target IP is 140.82.113.3 bind socket 64417....OK. socket connect to remote....OK. create SSL....OK. set_fd done. SSL to github.com port 443....OK
send request......OK
Fatal exception (28):
epc1=0x4023f004
epc2=0x00000000
epc3=0x4022dacd
excvaddr=0x00000000
depc=0x00000000
excsave1=0x402186a8
Registers:
a0 402186a8 a1 3fff7be0 a2 00000000 a3 0000000d
a4 00000048 a5 3fff7fe0 a6 00000000 a7 0000004c
a8 3fff7fe0 a9 00000400 a10 0000003b a11 00000000
a12 00000000 a13 00000000 SAR 00000010
Stack: SP=0x3fff7be0
0x3fff7be0: 50545448 312e312f 32303320 756f4620
0x3fff7bf0: 0a0d646e 76726573 203a7265 48746947
0x3fff7c00: 632e6275 0a0d6d6f 65746164 6854203a
0x3fff7c10: 32202c75 614d2031 30322079 32203032
0x3fff7c20: 38353a31 2039333a 0d544d47 6e6f630a
0x3fff7c30: 746e6574 7079742d 74203a65 2f747865
0x3fff7c40: 6c6d7468 6863203b 65737261 74753d74
0x3fff7c50: 0d382d66 6174730a 3a737574 32303320
Free Heap: 30608
_heap_start 0x3fff19d0 brk 0x3fffaaf4 supervisor sp 0x40000000 sp-brk 21772 bytes
arena (total_size) 37156 fordblks (free_size) 8836 uordblocks (used_size) 28320
After using vagrant to upload the firmware to the Nodemcu, the nodemcu doesn't show up in my wifi list, and the onboard blue led is blinking.
One i do "make" i have follow error:
firmware/main.bin: No such file or directory
cat: firmware/main.bin: No such file or directory
make: `signature' is up to date.
main.bin.sig
compiled but main.bin
no
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.