Skip to content

Use HomeSpan to natively control NeoPixel LEDs with HomeKit through an ESP32

Notifications You must be signed in to change notification settings

andywaplinger/ESP32-HomeKit-LED

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Uses HomeSpan to natively control NeoPixel LEDs with HomeKit

Notable features:

  • Auto-launches Wi-Fi setup if no Wi-Fi credentials are found
  • Over-the-air (OTA) Wi-Fi updates through Arduino IDE
  • WebSerial provides serial output through a webpage (http://<IP_ADDRESS>:8080/webserial)
  • Control pin to enable Device Configuration mode via momentary button
  • Onboard status LED shows Wi-Fi and HomeKit connected status
  • Boolean to quickly enable/disable USB serial input

Setup notes:

  • You must choose a Partition Scheme that supports OTA but minimizes SPIFFS
    • I'm using "Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS)"
    • If WebSerial is too large or isn't needed, it can be removed
  • You must disable USB serial input to power the ESP32 with 5V input and not a USB cable
    • HomeSpan will otherwise get stuck in a loop looking for serial input that doesn't exist and then never boot
  • Data and Control pins can be changed to other GPIO pins
  • HomeKit code can be changed during the Wi-Fi configuration process
    • Default is 466-37-726
  • OTA password can be changed through USB serial input in the Arduino IDE
    • Default is "homespan-ota"; send the letter "O" through the serial monitor to change OTA password
    • Don't forget to disable serial input after you're done

About

Use HomeSpan to natively control NeoPixel LEDs with HomeKit through an ESP32

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages