Git Product home page Git Product logo

esp8266_relay_board's Introduction

#Three Channel WiFi Relay/Thermostat Board

Please select the FOTA branch above for latest version.

The Three Channel WiFi Relay/Thermostat Board is a WiFi connected multi-purpose relay board based on the ESP8266 SoC, original designed by Martin Harizanov and sold by Open Energy Monitor Store in the UK

This fork of the code is actively maintained (2023), builds cleanly in Platfrom IO and has been rebased against NON-RTOS-SDK 2.2.1. You will need the platformIO NON-RTOS-SDK 8266 build framework installed to build. https://docs.platformio.org/en/latest/frameworks/esp8266-nonos-sdk.html

Various enhancements have been made:

###Enhancements to Martin's code

  • Full support for MQTT thermostat source
  • Enhanced MQTT reporting (state, DS18B20 JSON)
  • A void thermostat cycling
  • New Config items for MQTT thermostat timeout & thermostat cycling
  • Display of a bad or stale temperature readings highlighted in thermostat UI
  • Fix bug where thermostat off time is update is it is already off
  • Change thermostat to work in tenths of a degree, not hundredths (direct compatibility with emonTh + emonGLCD)
  • Publish all ds18b20 sensors to MQTT by device-id
  • Choose which relays associate to each thermostat

.

Firmware update

To change firmware, set the programming switch to “PGM” position and attach 3.3V FTDI cable with GND (black wire) towards the USB plug. I find any of the cheap ESP programming USB plugs work well. JeeLabs USBBUB-II was not reliable. YMMV. Also see the (https://github.com/esp8266/esp8266-wiki/wiki/Uploading) ESP8266 WiKi for more details on uploading code.

[image]

Do not forget to flip back the PGM switch to the right side when done, or the code won’t start and the module will be stuck on bootloader mode.

You will need esptool.py installed. Precompiled firmware images are in the firmware directory. Use the burn_all.sh and burn_webpages.sh scripts to write firmware to the device. Modify the burn*.sh files appropriately to set paths for you USB port and path to esptool.py.

Note, the first time you do this all config will be LOST and you need to set the device up again from scratch (you need to join the devices WIFI AP and connect 192.168.4.1 in a browser).

If you are building and flashing using PIO, you still need to run the burn_webpages.sh script to deploy the webpages to the device.

--Original Readme.MD follows--

###Highlights

  • Option for on-board power supply
  • Up to three high quality 10A relays
  • Powered by the WiFi ESP8266 SoC module
  • HTTP API to control the relays
  • MQTT support
  • NTP for network time
  • HTTP daemon settings, including security/authentication setup
  • HTTP UI for configuration and control
  • Thermostat function with weekly scheduling
  • Manual relay control
  • Broadcast using HTTP GET to services like ThingSpeak and emonCMS
  • Integration with ThingSpeak for charting/analytics visualization
  • Temperature sensor support
  • DS18B20
  • DHT22

NOTE: The board connects to and controls high voltage, knowledge and care is required to handle it See more at the Three Channel WiFi Relay/Thermostat Board WiKi

#Author Martin Harizanov

#License This project is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

License

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

esp8266_relay_board's People

Contributors

alandpearson avatar mharizanov avatar surovtsev avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.