This project is (attempting) to make a library for the ESP8266 for MyQ devices (i.e garage door openers).
Initial code was based on the MyQ-API written in javascript. Using json-streaming-parser2 to parse the stream as the return data is too much for the ESP to use ArduinoJSON.
I mainly started this so I could use the ESP-8266-AC-Control-Ext project and disable heating or cooling when the garage door is open. But I figured I'd try to make a library that can be reused.
To use, download to ESP8266 using test.cpp. Connect to the Wifi network - 'ESP Setup'. Configure it to connect to your Wifi network, and enter the username/password for your MyQ account. Save and reconnect your PC to your home network. It should connect to your network (if the light on the ESP8266 flashes fast, then hit the reset. Sometimes it wont connnect or takes a couple resets. I havent looked into why yet). Use serial monitor to see if it connects to your MyQ account and gets your devices.
This seems to be working right now. I was able to open/close the garage. yay! I've spent hours to do the same thing as my garage door opener. TODO:
- Implement error codes like in MyQ-API
- Better functions to open/close doors, maybe register devices in a struct/map type thing so you can use setDoorOpen("Garage Door 1") rather than to referring it by serial number
- Make the code look less bad lol I'm not a programmer
- Convert Strings to char arrays (I started and annoyed me so I won't until I find I'm running out of memory)
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Project Link: https://github.com/dieseld23/MyQ-ESP8266