AstroRemoteHome is an Esp8266 Arduino project to remote controll 433 MHz sockets. Each one can be individually controlled base on a local time or relative to sunrise and sunset.
- All required time information is retrieved from remote services and the switch settings are exchanged via MQTT.
- The web app to control the setup is located at vk.github.io/AstroRemoteHome/.
- An integration into Googles assistant (amongst others) is described in the Dialogflow directory.
- The NFC tag in the lid opens the web app (with guest access) without entering passwords.
Controller box | Web App in action |
---|---|
The configuration of the microcontroller is stored in the config.json file in SPIFFS and holds a section for your WLAN, MQTT server, geolocation and api calls. The settings can be changed via a webinterface, however it's much easier to upload an working initial config file.
{
"wlan": {
"ssid": "",
"password": ""
},
"mqtt": {
"fingerprint": "",
"server": "",
"port": 8883,
"user": "",
"password": ""
},
"loc": {
"latitude": 0,
"longitude": 0
},
"api": {
"location": "http://api.ipstack.com/check?access_key=???",
"timezone": "http://api.timezonedb.com/v2.1/get-time-zone?key=???"
},
"update": {
"url": ""
}
}
The current version uses two remote services to collect the geolocation of the device and the current timezone after connecting to the local WLAN.
You need to create an account to aquire your individual api keys to finish the configuration
- Firmware Server to update the ESP8266 over-the-air
- Location Api Server to compute the geolocation and timezones without the need of external services.
- Local Location Api Server is a local version of the location api server and can be used if the house is not moving :)