Fork of the espurna firmware for `mhsw` switches
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

385 lines
25 KiB

8 years ago
6 years ago
6 years ago
6 years ago
8 years ago
7 years ago
7 years ago
6 years ago
6 years ago
7 years ago
7 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
6 years ago
6 years ago
7 years ago
6 years ago
7 years ago
6 years ago
6 years ago
7 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
6 years ago
6 years ago
7 years ago
6 years ago
7 years ago
6 years ago
7 years ago
7 years ago
6 years ago
6 years ago
7 years ago
7 years ago
6 years ago
7 years ago
7 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
6 years ago
6 years ago
7 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
8 years ago
8 years ago
8 years ago
8 years ago
  1. # ESPurna Firmware
  2. ESPurna ("spark" in Catalan) is a custom firmware for ESP8285/ESP8266 based smart switches, lights and sensors.
  3. It uses the Arduino Core for ESP8266 framework and a number of 3rd party libraries.
  4. [![version](https://img.shields.io/badge/version-1.13.6--dev-brightgreen.svg)](CHANGELOG.md)
  5. [![branch](https://img.shields.io/badge/branch-dev-orange.svg)](https://github.com/xoseperez/espurna/tree/dev/)
  6. [![license](https://img.shields.io/github/license/xoseperez/espurna.svg)](LICENSE)
  7. [![travis](https://travis-ci.org/xoseperez/espurna.svg?branch=dev)](https://travis-ci.org/xoseperez/espurna)
  8. [![codacy](https://api.codacy.com/project/badge/Grade/c9496e25cf07434cba786b462cb15f49)](https://www.codacy.com/app/xoseperez/espurna/dashboard)
  9. <br />
  10. [![latest master build](https://img.shields.io/github/release/xoseperez/espurna/all.svg?label=latest%20master%20build)](https://github.com/xoseperez/espurna/releases/latest)
  11. [![latest dev build](https://img.shields.io/github/release/mcspr/espurna-nightly-builder/all.svg?label=latest%20dev%20build)](https://github.com/mcspr/espurna-nightly-builder/releases)
  12. [![downloads](https://img.shields.io/github/downloads/xoseperez/espurna/total.svg)](https://github.com/xoseperez/espurna/releases)
  13. <br />
  14. [![donate](https://img.shields.io/badge/donate-PayPal-blue.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=xose%2eperez%40gmail%2ecom&lc=US&no_note=0&currency_code=EUR&bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHostedGuest)
  15. [![gitter](https://img.shields.io/gitter/room/tinkermant-cat/espurna.svg)](https://gitter.im/tinkerman-cat/espurna)
  16. [![twitter](https://img.shields.io/twitter/follow/xoseperez.svg?style=social)](https://twitter.com/intent/follow?screen_name=xoseperez)
  17. ---
  18. ## Collaborators
  19. Since November 2018, Max Prokhorov (**@mcspr**) is also actively working as a collaborator of the project.
  20. ## Contributors
  21. **Without your help this project would not be possible**. I (**@xoseperez**) simply can't spend all the time I wish on ESPurna but luckly I recieve a lot of contributions, bug fixes, enhancement suggestions,... from people all around the world. I would like to thank each and every one of you. The [contributors](https://github.com/xoseperez/espurna/graphs/contributors) page shows the ones that have done a PR in the past, but I also get contributions in the issues, by email or via the [gitter ESPurna channel](https://gitter.im/tinkerman-cat/espurna), those I also want to thank.
  22. **Thank you all very much**.
  23. ## Notice
  24. > Ladies and gentlemen in the embedded world, use [PlatformIO](https://platformio.org/). If I could offer you only one tip for the future, [PlatformIO](https://platformio.org/) would be it.
  25. > Please use the [gitter ESPurna channel](https://gitter.im/tinkerman-cat/espurna) for support and questions, you have better chances to get fast answers from me or other ESPurna users. Open an issue here only if you feel there is a bug or you want to request an enhancement. Thank you.
  26. > Process of building ESPurna from source is documented in the Wiki:
  27. [Using PlatformIO IDE for VSCode](https://github.com/xoseperez/espurna/wiki/Build-and-update-from-Visual-Studio-Code-using-PlatformIO)
  28. [Using PlatformIO CLI](https://github.com/xoseperez/espurna/wiki/PlatformIO)
  29. [Using Arduino IDE](https://github.com/xoseperez/espurna/wiki/ArduinoIDE)
  30. > If you want to try out latest changes from **dev** branch without building the firmware yourself or if you are having problems with the stable release, please visit [**espurna-nightly-builder** releases page](https://github.com/mcspr/espurna-nightly-builder/releases).
  31. ## Features
  32. * *KRACK* vulnerability free (when built with Arduino Core >= 2.4.0)
  33. * Support for **multiple ESP8266-based boards** ([check list](https://github.com/xoseperez/espurna/wiki/Hardware))
  34. * Power saving options
  35. * Wifi **AP Mode** or **STA mode**
  36. * Supports static IP
  37. * Up to 5 different networks can be defined
  38. * Scans for strongest network if more than one defined (also available in web UI)
  39. * Handles correctly multiple AP with the same SSID
  40. * Defaults to AP mode (also available after double clicking the main button)
  41. * Support for **WPS** and **Smart Config** (not available in default builds)
  42. * Network visibility
  43. * Supports mDNS (service reporting and metadata) both server mode and client mode (.local name resolution)
  44. * Supports NetBIOS, LLMNR and Netbios (when built with Arduino Core >= 2.4.0) and SSDP (experimental)
  45. * Switch management
  46. * Support for **push buttons** and **toggle switches**
  47. * Configurable **status on boot** per switch (always ON, always OFF, same as before or toggle)
  48. * Support for **pulse mode** per switch (normally ON or normally OFF) with configurable time
  49. * Support for **relay synchronization** (all equal, only one ON, one and only on ON)
  50. * Support for **MQTT groups** to sync switches between devices
  51. * Support for **delayed ON/OFF**
  52. * Support for **latched relays**
  53. * **MQTT** enabled
  54. * **SSL/TLS support** (not on regular builds, see [#64](https://github.com/xoseperez/espurna/issues/64) and [#1465](https://github.com/xoseperez/espurna/issues/1465))
  55. * Switch on/off and toggle relays, group topics (sync relays between different devices)
  56. * Report button event notifications
  57. * Enable/disable pulse mode
  58. * Change LED notification mode
  59. * Remote reset the board
  60. * Fully configurable in webUI (broker, user, password, QoS, keep alive time, retain flag, client ID)
  61. * **Scheduler** to automatically turn on, off or toggle any relay at a given time and day, also change light intensity for dimmers
  62. * **Alexa** integration using the [FauxmoESP Library](https://bitbucket.org/xoseperez/fauxmoesp)
  63. * [**Google Assistant**](http://tinkerman.cat/using-google-assistant-control-your-esp8266-devices/) integration using IFTTT and Webhooks (Google Home, Allo)
  64. * [**Domoticz**](https://domoticz.com/) integration via MQTT
  65. * [**Home Assistant**](https://home-assistant.io/) integration
  66. * Support for switches (on/off)
  67. * Support for lights (color, brightness, on/off state)
  68. * Supports MQTT auto-discover feature (switches, lights and sensors)
  69. * Integration via MQTT Discover or copy-pasting configuration code
  70. * [**InfluxDB**](https://www.influxdata.com/) integration via HTTP API
  71. * [**Thingspeak**](https://thingspeak.com/) integration via HTTP API (HTTPS available for custom builds)
  72. * **Sonoff RF Bridge** support
  73. * Multiple virtual switches (tested with up to 16)
  74. * MQTT-to-RF two-way bridge (no need to learn codes)
  75. * Support for [https://github.com/Portisch/RF-Bridge-EFM8BB1](https://github.com/Portisch/RF-Bridge-EFM8BB1) custom firmware
  76. * Support for [direct control of the encoder/decoder bypassing the EFM8BB1](https://github.com/xoseperez/espurna/wiki/Hardware-Itead-Sonoff-RF-Bridge---Direct-Hack)
  77. * Support for [different **sensors**](Sensors)
  78. * Environment
  79. * **DHT11 / DHT12 / DHT22 / DHT21 / AM2301 / Itead's SI7021**
  80. * **BMP180**, **BMP280** and **BME280** pressure, humidity (BME280) and temperature (BMP280 & BME280) sensor by Bosch
  81. * **TMP35** and **TMP36** analog temperature sensors
  82. * **MAX6675** temperature sensor
  83. * **NTC** temperature sensors
  84. * **SI7021** temperature and humidity sensor
  85. * **SHT3X** temperature and humidity sensor over I2C (Wemos shield)
  86. * **AM2320** temperature and humidity sensor over I2C
  87. * **Dallas OneWire sensors** like the DS18B20
  88. * **MHZ19** CO2 sensor
  89. * **MICS2710** CO2 & NO2 sensor
  90. * **MICS5525** CO & CO2 sensor
  91. * **SenseAir S8** CO2 sensor
  92. * **PMSX003/PMS5003T/ST** dust sensors
  93. * **SDS011** dust sensor
  94. * **BH1750** luminosity sensor
  95. * **GUVAS12SD** UV sensor
  96. * **VEML6075** UV Sensor
  97. * **EZO pH Circuit**
  98. * **Geiger counter** by RH Electronics
  99. * **HC-SR04**, **SRF05**, **SRF06**, **DYP-ME007**, **JSN-SR04T** & **Parallax PING)))™** distance sensors
  100. * **VL53L1X** distance sensor
  101. * **MAX6675** K-thermocouple-to-digital converter
  102. * **NTC** thermistor
  103. * **LDR** light-dependent resistor sensor
  104. * Power monitoring
  105. * **HLW8012** using the [HLW8012 Library](https://bitbucket.org/xoseperez/hlw8012) (Sonoff POW)
  106. * **CSE7766** and **CSE7759B** power monitor chips
  107. * **HJL-01** and **BL0937** power monitor chips
  108. * Non-invasive **current sensor** using **internal ADC** or **ADC712** or **ADC121** or **ADS1015** / **ADS1115**
  109. * **V9261F** power monitor chip
  110. * **PZEM0004T** power monitor board
  111. * **ECH1560** power monitor chip
  112. * **ADE7953** power monitor chip
  113. * Raw **analog** and **digital** sensors
  114. * Simple **pulse counter** with **event triggering** option
  115. * Support for (almost) any UART based sensor via the **UART-to-MQTT module**
  116. * Support for different units (Fahrenheit or Celsius, Watts or Kilowatts, Joules or kWh)
  117. * Support for LED lights
  118. * MY92XX-based light bulbs and PWM LED strips (dimmers) up to 5 channels (RGB, cold white and warm white, for instance)
  119. * Support for CCT lights
  120. * RGB and HSV color codes supported
  121. * Manage channels individually
  122. * Temperature color supported (in [mired](https://en.wikipedia.org/wiki/Mired) and [kelvin](https://en.wikipedia.org/wiki/Color_temperature)) via MQTT / REST API
  123. * Flicker-free PWM management
  124. * Soft color transitions
  125. * Color synchronization between light using MQTT
  126. * Option to have separate switches for each channel
  127. * Support for simple 433MHz RF receivers
  128. * Support for UART-to-MQTT bidirectional bridge
  129. * Fast asynchronous **HTTP Server** and cool **Web User Interface**
  130. * Configurable port
  131. * Basic authentication
  132. * Web-based configuration
  133. * Relay switching and sensor data from the web interface
  134. * Handle color, brightness, and white/warm channels for lights
  135. * Websockets-based communication between the device and the browser
  136. * Backup and restore settings option
  137. * Upgrade firmware from the web interface
  138. * Works great behind a [secured reverse proxy](http://tinkerman.cat/secure-remote-access-to-your-iot-devices/)
  139. * **REST API** (enable/disable from web interface)
  140. * GET and PUT relay status (including pulses)
  141. * Change light color (for supported hardware)
  142. * GET sensor data (power, current, voltage, temperature and humidity) depending on the available hardware
  143. * Works great behind a secured reverse proxy
  144. * **RPC API** (enable/disable from web interface)
  145. * Remote reset the board
  146. * **Over-The-Air** (OTA) updates even for 1Mb boards
  147. * Manually from PlatformIO or Arduino IDE
  148. * Automatic updates through the [NoFUSS Library](https://bitbucket.org/xoseperez/nofuss)
  149. * Update from web interface using pre-built images
  150. * **Command line configuration**
  151. * Change configuration
  152. * Run special commands
  153. * **Telnet support**
  154. * Enable/disable via the web UI
  155. * Shows debug info and allows to run terminal commands
  156. * **NTP** for time synchronization
  157. * Supports worldwide time zones
  158. * Compatible with DST (EU and USA)
  159. * **Unstable system check**
  160. * Detects unstable system (crashes on boot continuously) and defaults to a stable system
  161. * Only WiFi AP, OTA and Telnet available if system is flagged as unstable
  162. * Configurable LED notifications based on WiFi status, relays status or MQTT messages.
  163. * Button interface
  164. * Click to toggle relays
  165. * Double click to enter AP mode (only main button)
  166. * Long click (>1 second) to reboot device (only main button)
  167. * Extra long click (>10 seconds) to go back to factory settings (only main button)
  168. * Specific definitions for touch button devices (ESPurna Switch, Sonoff Touch & T1)
  169. * Configuration stored in different flash sectors to prevent data loss and corruption
  170. ## Notices
  171. ---
  172. > **2018-04-08**<br />
  173. > Please use [gitter](https://gitter.im/tinkerman-cat/espurna) for support and questions, you have better chances to get fast answers by me or other ESPurna users. Open an issue here only if you feel there is a bug or you want to request an enhancement. Thank you.
  174. ---
  175. > **2018-03-09**<br />
  176. > Default branch in GitHub is now the development branch "dev".<br>
  177. > The stable branch (the one used to create the [binary releases](https://github.com/xoseperez/espurna/releases)) is "[master](https://github.com/xoseperez/espurna/tree/master)".
  178. ---
  179. > **2018-01-24**<br />
  180. > This repository has been migrated from Bitbucket to GitHub. There were a number of reason to migrate the repository to GitHub. I like Bitbucket and I'm still using it for a lot of projects, but ESPurna has grown and its community as well. Some users have complain about Bitbucket not being enough community-focused. This change is mainly aimed to use a platform with greater acceptance on the open-source community and tools better suited to them (to you), like the possibility to contribute to the documentation in an easy way.
  181. >
  182. >What happened with all the info in Bitbucket? Well, most of it has been ported to GitHub, albeit with some quirks:
  183. >
  184. >* **Code** has, of course been migrated completely
  185. >* **Issues** are all on GitHub already **but** all issues and comments show up as reported by me. The original reporter is referenced inside the body of the issue (or comment) with a link to his/her profile at Bitbucket and a link to his/her profile at GitHub if it happens to be the same username. I **suggest all reporters to subscribe to the issues they originally filed** (search for your BitBucket username to list them).
  186. >* **Pull requests** historic has not been migrated. At the moment of the migration all pull-requests have been either merged or declined. Of course, those PR merged are in the code base, but the historic and comments in the PR pages will be lost.
  187. >* **Documentation** it's on it way, first step will be to migrate existing wiki, maybe with a new TOC structure
  188. >* **Watchers**, **Forks**, I'm afraid they are all gone. Visit the new repo home and click on the "Watch" button on the top right. And as you do it click also on the "Star" button too :)
  189. >
  190. >I apologize for any inconvenience this migration may have caused. I have decided to do it the hard way.
  191. ---
  192. > **2018-01-11**<br />
  193. > As of current version (1.12.0) ESPurna is tested using Arduino Core 2.3.0 and it's meant to be built against that version.
  194. ---
  195. > **2017-08-26**<br />
  196. > Since version 1.9.0 the default **MQTT topics for commands have changed**. They all now end with "/set". This means you will have to change your controller software (Node-RED or alike) to send messages to -for instance- "/home/living/light/relay/0/set". The device will publish its state in "/home/living/light/relay/0" like before.
  197. ---
  198. > **2017-07-24**<br />
  199. > Default flash layout changed in 1.8.3, as an unpredicted consequence devices will not be able to persist/retrieve configuration if flashed with 1.8.3 via **OTA** from **PlatformIO**. Please check issue [#187](https://github.com/xoseperez/espurna/issues/187).
  200. ---
  201. ## Contribute
  202. There are several ways to contribute to ESPurna development. You can contribute to the repository by doing:
  203. * Pull requests (fixes, enhancements, new features... are very welcome)
  204. * Documentation (I reckon I'm bad at it)
  205. * Testing (filing issues or help resolving them, they take a lot of time and sometimes I don't have the required hardware to test them all)
  206. And of course you can always buy me a beer, coffee, tea,... via the donation button below.
  207. [![Donate](https://img.shields.io/badge/donate-PayPal-blue.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=xose%2eperez%40gmail%2ecom&lc=US&no_note=0&currency_code=EUR&bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHostedGuest)
  208. ## Documentation
  209. For more information please refer to the [ESPurna Wiki](https://github.com/xoseperez/espurna/wiki).
  210. ## Supported hardware
  211. Here is the list of supported hardware. For more information please refer to the [ESPurna Wiki Hardware page](https://github.com/xoseperez/espurna/wiki/Hardware).
  212. ### Power monitoring devices
  213. ||||
  214. |---|---|---|
  215. |![BlitzWolf BW-SHP6](images/devices/blitzwolf-bw-shp6.jpg)|![BlitzWolf BW-SHP2](images/devices/blitzwolf-bw-shp2.jpg)|![Power meters based on V9261F](images/devices/generic-v9261f.jpg)|
  216. |**Blitzwolf BW-SHP6**|**Blitzwolf BW-SHP2<br />(also by Coosa, Gosund, HomeCube, Teckin)**|**Power meters based on V9261F**|
  217. |![Itead Sonoff POW](images/devices/itead-sonoff-pow.jpg)|![Itead Sonoff POW](images/devices/itead-sonoff-pow-r2.jpg)|![Itead Sonoff S31](images/devices/itead-sonoff-s31.jpg)|
  218. |**Itead Sonoff POW**|**Itead Sonoff POW R2**|**Itead Sonoff S31**|
  219. |![Smartlife Mini Smart Socket](images/devices/smartlife-mini-smart-socket.jpg)|![Teckin SP20](images/devices/teckin-sp20.jpg)|![Digoo NX SP202](images/devices/digoo-nx-sp202.jpg)|
  220. |**Smartlife (NETVIP) Mini Smart Socket**|**Teckin SP20**|**Digoo NX SP202**|
  221. |![Vanzavanzu Smart WiFi Plug Mini](images/devices/vanzavanzu-smart-wifi-plug-mini.jpg)|||
  222. |**Vanzavanzu Smart WiFi Plug Mini**|||
  223. ### Embedded switches
  224. ||||
  225. |---|---|---|
  226. |![Itead Sonoff Basic](images/devices/itead-sonoff-basic.jpg)|![Itead Sonoff Dual/Dual R2](images/devices/itead-sonoff-dual.jpg)|![Itead Sonoff TH10/TH16](images/devices/itead-sonoff-th.jpg)|
  227. |**Itead Sonoff Basic**|**Itead Sonoff Dual/Dual R2**|**Itead Sonoff TH10/TH16**|
  228. |![Electrodragon WiFi IOT](images/devices/electrodragon-wifi-iot.jpg)|![OpenEnergyMonitor WiFi MQTT Relay / Thermostat](images/devices/openenergymonitor-mqtt-relay.jpg)||
  229. |**Electrodragon WiFi IOT**|**OpenEnergyMonitor WiFi MQTT Relay / Thermostat**||
  230. |![Itead Sonoff 4CH](images/devices/itead-sonoff-4ch.jpg)|![Itead Sonoff 4CH Pro](images/devices/itead-sonoff-4ch-pro.jpg)||
  231. |**Itead Sonoff 4CH**|**Itead Sonoff 4CH Pro**||
  232. |![Allterco Shelly1](images/devices/allterco-shelly1.jpg)|![Allterco Shelly2](images/devices/allterco-shelly2.jpg)|![Jan Goedeke Wifi Relay (NO/NC)](images/devices/jangoe-wifi-relay.jpg)|
  233. |**Alterco Shelly1**|**Alterco Shelly2**|**Jan Goedeke Wifi Relay (NO/NC)**|
  234. |![EXS Wifi Relay v3.1](images/devices/exs-wifi-relay-v31.jpg)|![EXS Wifi Relay v5.0](images/devices/exs-wifi-relay-v50.jpg)|![Jorge García Wifi + Relays Board Kit](images/devices/jorgegarcia-wifi-relays.jpg)|
  235. |**EXS Wifi Relay v3.1**|**EXS Wifi Relay v5.0**|**Jorge García Wifi + Relays Board Kit**|
  236. |![Allnet ESP8266-UP-Relay](images/devices/allnet-esp8266-up-relay.jpg)|![Bruno Horta's OnOfre](images/devices/bh-onofre.jpg)|![Luani HVIO](images/devices/luani-hvio.jpg)|
  237. |**Allnet ESP8266-UP-Relay**|**Bruno Horta's OnOfre**|**Luani HVIO**|
  238. ### Wall Sockets
  239. ||||
  240. |---|---|---|
  241. |![Itead S20](images/devices/itead-s20.jpg)|![Itead S26](images/devices/itead-s26.jpg)|![Neo Coolcam NAS WR01W](images/devices/neo-coolcam-wifi.jpg)|
  242. |**Itead S20**|**Itead S26**|**Neo Coolcam NAS WR01W**|
  243. |![Maxcio W-US002S](images/devices/maxcio-w-us002s.jpg)|![HEYGO HY02](images/devices/heygo-hy02.jpg)|![YiDian XS-SSA05](images/devices/yidian-xs-ssa05.jpg)|
  244. |**Maxcio W-US002S**|**HEYGO HY02**|**YiDian XS-SSA05**|
  245. |![WiOn 50055](images/devices/wion-50055.jpg)|![LINGAN SWA1](images/devices/lingan-swa1.jpg)|![HomeCube 16A](images/devices/homecube-16a.jpg)|
  246. |**WiOn 50055**|**LINGAN SWA1**|**HomeCube 16A**|
  247. |![WorkChoice EcoPlug](images/devices/workchoice-ecoplug.jpg)|![Bestek MRJ1011](images/devices/bestek-mrj1011.jpg)|![Tonbux XS-SSA01](images/devices/tonbux-xs-ssa01.jpg)|
  248. |**WorkChoice EcoPlug**|**Bestek MRJ1011**|**Tonbux XS-SSA01**|
  249. |![Schuko Wifi Plug](images/devices/schuko-wifi-plug.jpg)|![Schuko Wifi Plug V2](images/devices/schuko-wifi-plug-v2.jpg)|![KMC 70011](images/devices/kmc-70011.jpg)|
  250. |**Schuko Wifi Plug**|**Schuko Wifi Plug V2**|**KMC 70011**|
  251. |![Xenon SM-PW702U](images/devices/xenon-sm-pw702u.jpg)|![Orvibo B25](images/devices/orvibo-b25.jpg)|![Oukitel P1](images/devices/oukitel-p1.jpg)|
  252. |**Xenon SM-PW702U**|**Orvibo B25**|**Oukitel P1**|
  253. |![Tonbux XS-SSA06](images/devices/tonbux-xs-ssa06.jpg)|![Litesun LA-WF3](images/devices/litesun-la-wf3.jpg)|![Maxcio W DE-004](images/devices/maxcio-w-de004.jpg)|
  254. |**Tonbux XS-SSA06**|**Litesun LA-WF3**|**Maxcio W DE-004**|
  255. |![Hama WiFi Steckdose](images/devices/hama-wifi-steckdose.jpg)|![GBLife RGBW Socket](images/devices/gblife-rgbw-socket.jpg)||
  256. |**Hama WiFi Steckdose**|**GBLife RGBW Socket**||
  257. ### Wall switches
  258. ||||
  259. |---|---|---|
  260. |![Itead Sonoff Touch](images/devices/itead-sonoff-touch.jpg)|![Itead Sonoff T1](images/devices/itead-sonoff-t1.jpg)|![YJZK switch](images/devices/yjzk-2gang-switch.jpg)|
  261. |**Itead Sonoff Touch**|**Itead Sonoff T1**|**YJZK 1/2/3-gangs switch**|
  262. |![Gosund WS1 / KS-602S](images/devices/gosund-ws1.jpg)|||
  263. |**Gosund WS1 / KS-602S**|||
  264. ### Power strips
  265. ||||
  266. |---|---|---|
  267. |![Tonbux PowerStrip02](images/devices/tonbux-powerstrip02.jpg)|![ForNorm ZLD-34EU](images/devices/fornorm-power-strip.jpg)|![Zhilde ZLD-EU55-W](images/devices/zhilde-zld-eu55-w.jpg)|
  268. |**Tonbux PowerStrip02**|**Fornorm Power Strip**|**Zhilde ZLD-EU55-W**|
  269. ### Smart lights
  270. ||||
  271. |---|---|---|
  272. |![Itead Slampher](images/devices/itead-slampher.jpg)|![Arilux E27](images/devices/arilux-e27.jpg)|![Itead Sonoff B1](images/devices/itead-sonoff-b1.jpg)|
  273. |**Itead Slampher**|**Arilux E27**|**Itead Sonoff B1**|
  274. |![AI-Thinker Wifi Light / Noduino OpenLight](images/devices/aithinker-ai-light.jpg)|![Authometion LYT8266](images/devices/authometion-lyt8266.jpg)|![AG-L4](images/devices/ag-l4.jpg)|
  275. |**AI-Thinker Wifi Light / Noduino OpenLight**|**Authometion LYT8266**|**AG-L4**|
  276. |![Lohas 9W](images/devices/lohas-9w.jpg)|![Xiaomi Smart Desk Lamp](images/devices/xiaomi-smart-desk-lamp.jpg)|![iWoole LED Table Lamp](images/devices/iwoole-led-table-lamp.jpg)|
  277. |**Lohas 9W**|**Xiaomi Smart Desk Lamp**|**iWoole LED Table Lamp**|
  278. |![Itead Sonoff LED](images/devices/itead-sonoff-led.jpg)|![Itead BN-SZ01](images/devices/itead-bn-sz01.jpg)|![Lombox LUX Nova 2](images/devices/lombex-lux-nova2.jpg)|
  279. |**Itead Sonoff LED**|**Itead BN-SZ01**|**Lombex LUX Nova 2 (white and color)**|
  280. |![Arilux AL-LC01 (RGB)](images/devices/arilux-al-lc01.jpg)|![Arilux AL-LC02 (RGBW)](images/devices/arilux-al-lc02.jpg)|![Arilux AL-LC06 (RGBWWCW)](images/devices/arilux-al-lc06.jpg)|
  281. |**Arilux AL-LC01 (RGB)**|**Arilux AL-LC02 (RGBW)**|**Arilux AL-LC06 (RGBWWCW)**|
  282. |![Arilux AL-LC11 (RGBWWW) & RF](images/devices/arilux-al-lc11.jpg)|![MagicHome LED Controller (1.0 and 2.x)](images/devices/magichome-led-controller.jpg)|![Huacanxing H801/802](images/devices/huacanxing-h801.jpg)|
  283. |**Arilux AL-LC11 (RGBWWW) & RF**|**MagicHome LED Controller (1.0/2.x, also ZJ WFMN A/B11)**|**Huacanxing H801/802**|
  284. ### Radio links / gateways
  285. ||||
  286. |---|---|---|
  287. |![Tinkerman RFM69GW](images/devices/tinkerman-rfm69gw.jpg)|![Itead Sonoff RF Bridge](images/devices/itead-sonoff-rfbridge.jpg)|![Itead Sonoff RF](images/devices/itead-sonoff-rf.jpg)|
  288. |**Tinkerman RFM69GW**|**Itead Sonoff RF Bridge**|**Itead Sonoff RF**|
  289. ### Other devices
  290. ||||
  291. |---|---|---|
  292. |![Tonbux Mosquito Killer](images/devices/tonbux-mosquito-killer.jpg)|![Itead Sonoff IFAN02](images/devices/itead-sonoff-ifan02.jpg)||
  293. |**Tonbux Mosquito Killer**|**Itead Sonoff IFAN02**|||
  294. ### Custom & Development boards
  295. ||||
  296. |---|---|---|
  297. |![Tinkerman Espurna H](images/devices/tinkerman-espurna-h.jpg)||![NodeMCU](images/devices/nodemcu-lolin-v3.jpg)|
  298. |**Tinkerman ESPurna H**||**NodeMCU Lolin V3**|
  299. |![Itead Sonoff SV](images/devices/itead-sonoff-sv.jpg)|![Itead 1CH Inching](images/devices/itead-1ch-inching.jpg)|![Itead Motor Clockwise/Anticlockwise](images/devices/itead-motor.jpg)|
  300. |**Itead Sonoff SV**|**Itead 1CH Inching**|**Itead Motor Clockwise/Anticlockwise**|
  301. |![ManCaveMade ESP-Live](images/devices/mancavemade-esp-live.jpg)|![Wemos D1 Mini Relay Shield](images/devices/wemos-d1-relayshield.jpg)|![Gizwits Witty Cloud](images/devices/witty-cloud.jpg)|
  302. |**ManCaveMade ESP-Live**|**Wemos D1 Mini Relay Shield**|**Gizwits Witty Cloud**|
  303. |![IKE ESPike](images/devices/ike-espike.jpg)|![Pilotak ESP DIN](images/devices/pilotak-esp-din.jpg)|![Arniex Swifitch](images/devices/arniex-swifitch.jpg)|
  304. |**IKE ESPike**|**Pilotak ESP DIN**|**Arniex Swifitch**|
  305. |![Heltec Touch Relay](images/devices/heltec-touch-relay.jpg)|![Generic Relay v4.0](images/devices/generic-relay-40.jpg)|![Generic RGBLed v1.0](images/devices/generic-rgbled-10.jpg)|
  306. |**Heltec Touch Relay**|**Generic Relay v4.0**|**Generic RGBLed v1.0**|
  307. |![Generic DHT11 v1.0](images/devices/generic-dht11-10.jpg)|![Generic DS18B20 v1.0](images/devices/generic-ds18b20-10.jpg)|![InterMitTech QuinLED 2.6](images/devices/intermittech-quinled-2.6.jpg)|
  308. |**Generic DHT11 v1.0**|**Generic DS18B20 v1.0**|**InterMitTech QuinLED 2.6**|
  309. |![Phyx ESP12 RGBW](images/devices/phyx-esp12-rgbw.jpg)|![RH Electronics Geiger Counter](images/devices/generic-geiger-diy.png)|![Green ESP Relay](images/devices/green-esp-relay.jpg)|
  310. |**Phyx ESP12 RGBW**|**RH Electronics Geiger Counter**|**Green ESP Relay**|
  311. |![Foxel Lightfox Dual](images/devices/foxel-lightfox-dual.jpg)|||
  312. |**Foxel Lightfox Dual**|||
  313. **Other supported boards (beta):**
  314. KMC 4 Outlet, Gosund WS1, MakerFocus Intelligent Module LM33 for Lamps
  315. ## License
  316. Copyright (C) 2016-2019 by Xose Pérez (@xoseperez)
  317. This program is free software: you can redistribute it and/or modify
  318. it under the terms of the GNU General Public License as published by
  319. the Free Software Foundation, either version 3 of the License, or
  320. (at your option) any later version.
  321. This program is distributed in the hope that it will be useful,
  322. but WITHOUT ANY WARRANTY; without even the implied warranty of
  323. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  324. GNU General Public License for more details.
  325. You should have received a copy of the GNU General Public License
  326. along with this program. If not, see <http://www.gnu.org/licenses/>.