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.

216 lines
9.1 KiB

  1. # Supported Hardware
  2. This is the official list of supported hardware for the ESPurna firmware. The hardware configuration for each of these boards can be selected by supplying the build flag (see [Firmware section](Firmware.h)).
  3. **CAUTION: Never ever connect any of these devices to your computer and to mains at the same time. Never ever manipulate them while connected to mains. Seriously. I don't want you to die. I hold no responsibility for any damage to you, your family, your house,... for any action or results derived from flashing or using these devices.**
  4. * [IteadStudio Sonoff](#iteadstudio-sonoff)
  5. * [IteadStudio Sonoff RF](#iteadstudio-sonoff-rf)
  6. * [IteadStudio Sonoff TH](#iteadstudio-sonoff-th)
  7. * [IteadStudio Sonoff POW](#iteadstudio-sonoff-pow)
  8. * [IteadStudio Sonoff DUAL](#iteadstudio-sonoff-dual)
  9. * [IteadStudio Sonoff TOUCH](#iteadstudio-sonoff-touch)
  10. * [IteadStudio Sonoff 4CH](#iteadstudio-sonoff-4ch)
  11. * [IteadStudio Sonoff SV](#iteadstudio-sonoff-sv)
  12. * [IteadStudio Slampher](#iteadstudio-slampher)
  13. * [IteadStudio S20](#iteadstudio-s20)
  14. * [Electrodragon ESP Relay Board](#electrodragon-esp-relay-board)
  15. * [WorkChoice EcoPlug](#workchoice-ecoplug)
  16. ## IteadStudio Sonoff
  17. |Property|Value|
  18. |---|---|
  19. |Manufacturer|Itead Studio|
  20. |Web page|[https://www.itead.cc/sonoff-wifi-wireless-switch.html](https://www.itead.cc/sonoff-wifi-wireless-switch.html)|
  21. |Build flag|SONOFF|
  22. The [IteadStudio Sonoff][1] has an ESP8266 on board with a 8Mbit flash memory chip, a mains to 3V3 transformer and a relay (GPIO12). It also features a button (GPIO0), an LED (GPIO13) and an unpopulated header you can use to reprogram it.
  23. ### Flashing
  24. ![Sonoff - Inside front view](images/sonoff-flash.jpg)
  25. The unpopulated header in the Sonoff has all the required pins. My board has a 5 pins header in-line with the button. They are (from the button outwards) 3V3, RX, TX, GND and GPIO14.
  26. Last one is not necessary. Mind it's a **3V3 device**, if connected to 5V you will probably fry it. Button is connected to GPIO0 on the ESP8266 chip, so to enter flash mode you have to hold the button pressed while powering on the board, then you can release it again.
  27. ## IteadStudio Sonoff RF
  28. |Property|Value|
  29. |---|---|
  30. |Manufacturer|Itead Studio|
  31. |Web page|[https://www.itead.cc/sonoff-rf.html][2]|
  32. |Build flag|SONOFF_RF|
  33. ### Flashing
  34. ![Sonoff POW - Inside back view](images/sonoff-rf-flash.jpg)
  35. The Sonoff RF has the same unpopulated header as the Sonoff. It is a 5 pins header in-line with the button. They are (from the button outwards) 3V3, RX, TX, GND and GPIO14.
  36. Solder a male or female header here and connect your USB-to-UART programmer (remember **it's a 3V3 device**). This time through **the button is not connected to GPIO0** but to a EFM8BB1 microcontroller that also monitors the RF module output.
  37. There are a couple of ways to enter flash mode. Some recommend to move 0Ohm R9 resistor to R21 to connect the button directly to the ESP8266 GPIO0 and use it in the same way as for the Sonoff or Sonoff TH. The drawback is the by doing that you lose the RF capability.
  38. My recommendation is to **temporary shortcut the bottom pad of the unpopulated R21 footprint** (see the image above) and connect your USB-to-UART board at the same time. You will have to do it just once (unless there is something really wrong in the firmware) and use OTA updates from there on.
  39. ## IteadStudio Sonoff TH
  40. |Property|Value|
  41. |---|---|
  42. |Manufacturer|Itead Studio|
  43. |Web page|[https://www.itead.cc/sonoff-th.html](https://www.itead.cc/sonoff-th.html)|
  44. |Build flag|SONOFF_TH|
  45. ### Flashing
  46. ![Sonoff TH - Inside back view](images/sonoff-th-flash.jpg)
  47. You have all the required pins in an unpopulated header in one of the corners of the board (see top left corner in the image above). Solder a 4 pins male or female header here and connect it to your favourite USB-to-UART module. Remember: **it's a 3V3 device**!!.
  48. As in the Sonoff the button is connected to GPIO0, so to enter flash mode press and hold the button and connect the programmer to your computer to power the board.
  49. ## IteadStudio Sonoff POW
  50. |Property|Value|
  51. |---|---|
  52. |Manufacturer|Itead Studio|
  53. |Web page|[https://www.itead.cc/sonoff-pow.html](https://www.itead.cc/sonoff-pow.html)|
  54. |Build flag|SONOFF_POW|
  55. ### Flashing
  56. ![Sonoff POW - Inside back view](images/sonoff-pow-flash.jpg)
  57. Same as for the [Sonoff TH](#iteadstudio-sonoff-th) above.
  58. ## IteadStudio Sonoff DUAL
  59. |Property|Value|
  60. |---|---|
  61. |Manufacturer|Itead Studio|
  62. |Web page|[https://www.itead.cc/sonoff-dual.html](https://www.itead.cc/sonoff-dual.html)|
  63. |Build flag|SONOFF_DUAL|
  64. ### Flashing
  65. ![Sonoff DUAL - Inside back view](images/sonoff-dual-flash.jpg)
  66. The Sonoff Dual it's a bit tricky to flash since GPIO0 is not connected to the button as in the TH or POW, but to the pin 15 in the SIL F330 chip that manages the buttons and the relays. SO you have to locate a pad connected to GPIO and short it to ground while powering the device.
  67. In the picture above you have a location of an available and easily accessible GPIO0 pad. The other required pins are brought out in the top header. Remember it's a *3V3* device.
  68. Once flashed use OTA to update the firmware or the filesystem.
  69. ## IteadStudio Sonoff TOUCH
  70. |Property|Value|
  71. |---|---|
  72. |Manufacturer|Itead Studio|
  73. |Web page|[https://www.itead.cc/sonoff-touch.html](https://www.itead.cc/sonoff-touch.html)|
  74. |Build flag|SONOFF_TOUCH|
  75. ### Flashing
  76. *TODO*
  77. ## IteadStudio Sonoff 4CH
  78. |Property|Value|
  79. |---|---|
  80. |Manufacturer|Itead Studio|
  81. |Web page|[https://www.itead.cc/sonoff-4ch.html](https://www.itead.cc/sonoff-4ch.html)|
  82. |Build flag|SONOFF_4CH|
  83. ### Flashing
  84. *TODO*
  85. ## IteadStudio Sonoff SV
  86. |Property|Value|
  87. |---|---|
  88. |Manufacturer|Itead Studio|
  89. |Web page|[https://www.itead.cc/sonoff-sv.html](https://www.itead.cc/sonoff-sv.html)|
  90. |Build flag|SONOFF_SV|
  91. ### Flashing
  92. *TODO*
  93. ## IteadStudio Slampher
  94. |Property|Value|
  95. |---|---|
  96. |Manufacturer|Itead Studio|
  97. |Web page|[https://www.itead.cc/slampher.html](https://www.itead.cc/slampher.html)|
  98. |Build flag|SLAMPHER|
  99. ### Flashing
  100. ![Slampher - Inside front view](images/slampher-flash1.jpg)
  101. ![Slampher - Flashing short](images/slampher-flash2.jpg)
  102. There is a 4 pin unpopulated header in a border near the ESP8266 chip. Starting form the little white mark this header brings out 3V3, RX, TX and GND. Solder a male or female header here and connect your USB-to-UART programmer (remember it's a 3V3 device). This time through **the button is not connected to GPIO0** but to a EFM8BB1 microcontroller that also monitors the RF module output.
  103. There are a couple of ways to enter flash mode. Some recommend to move R21 to R20 (at the top right of the first picture above) to connect the button directly to the ESP8266 GPIO0 and use it in the same way as for the Sonoff or Sonoff TH. The drawback is the by doing that you lose the RF capability.
  104. My recommendation is to **temporary shortcut the right pad of the unpopulated R20 footprint** (see second image above) and connect your USB-to-UART board at the same time. You will have to do it just once (unless there is something really wrong in the firmware) and use OTA updates from there on.
  105. ## IteadStudio S20 Smart Socket
  106. |Property|Value|
  107. |---|---|
  108. |Manufacturer|Itead Studio|
  109. |Web page|[https://www.itead.cc/smart-socket.html](https://www.itead.cc/smart-socket.html)|
  110. |Build flag|S20|
  111. ### Flashing
  112. ![S20 Smart Socket - Inside front view](images/s20-flash.jpg)
  113. There is a labeled header in the front of the PCB and the button is connected to GPIO0, so no problems here.
  114. Solder a 4 pin male or female header and connect it to your USB-to-UART bridge. Again, remember **it's a 3V3 device**. Then press and hold the button and connect the programmer to your computer. The microcontroller will boot into flash mode and you are ready to update the firmware.
  115. ## Electrodragon ESP Relay Board
  116. |Property|Value|
  117. |---|---|
  118. |Manufacturer|Electrodragon|
  119. |Web page|[http://www.electrodragon.com/product/wifi-iot-relay-board-based-esp8266/](http://www.electrodragon.com/product/wifi-iot-relay-board-based-esp8266/)|
  120. |Build flag|ESP_RELAY_BOARD|
  121. ### Flashing
  122. ![Electrodragon ESP Relay Board - Front view](images/electrodragon-flash.jpg)
  123. The Electrodragon ESP Relay Board is pretty easy to flash IF you do not follow their wiki, it's all wrong. Check the picture above and note that:
  124. * Power the board from the 5V pin, GND to GND
  125. * The RX pin in the header should go to your programmer TX pin and
  126. * The TX pin in the header should go to your programmer RX pin
  127. * The button labeled BTN2 is connected to GPIO0, so hold it down while powering the board, I've had better results keeping it down until the flashing starts
  128. ## WorkChoice EcoPlug
  129. |Property|Value|
  130. |---|---|
  131. |Manufacturer|WorkChoice|
  132. |Web page (non-official)|[http://thegreatgeekery.blogspot.com.es/2016/02/ecoplug-wifi-switch-hacking.html](http://thegreatgeekery.blogspot.com.es/2016/02/ecoplug-wifi-switch-hacking.html)|
  133. |Build flag|ECOPLUG|
  134. ### Flashing
  135. *TODO*
  136. [1]: https://www.itead.cc/sonoff-wifi-wireless-switch.html
  137. [2]: https://www.itead.cc/sonoff-rf.html
  138. [2]: https://www.itead.cc/sonoff-th.html
  139. [4]: https://www.itead.cc/sonoff-pow.html
  140. [5]: https://www.itead.cc/slampher.html
  141. [6]: https://www.itead.cc/smart-socket.html