Looking for detailed description for hacking a sonoff
-
I hacked a sonoff dual:
https://itead.freshdesk.com/support/discussions/topics/11000006870It should be easy to upload a wifi gateway sketch. I made an MQTT integration.
-
Thanks for the great replies.
I'm not currently using MQTT, I'm running the Ethernet gateway via a W5100. Can I use the ESP boards, i.e this or the nodemcu without the need for an NRF24?
-
Thanks for the great replies.
I'm not currently using MQTT, I'm running the Ethernet gateway via a W5100. Can I use the ESP boards, i.e this or the nodemcu without the need for an NRF24?
@Mark-Swift how would you intend to use Sonoff with MySensors? Do you have the ESP GW?
I am using several Sonoffs with Domoticz via a JSON script. https://www.domoticz.com/wiki/Domoticz_API/JSON_URL's
-
So - I agree re: Sonoffs - we've written our own software at the tech blog and though not quite step by step it is easy enough to use and ROMS are available to save you having to get into compiling code. We use Node-Red and MQTT as the base of everything - so you have a number of ESP sensors and relay controllers etc all talking to a Raspberry Pi - or something much cheaper like an Orange Pi Zero running Armbian for example - and basically you're sending simple MQTT messages around the house - nothing has to go outside unless of course you want remote control at a distance. Modifying Sonoffs is easy - I'm sitting in front of some now updating them with our software - just in the process of figuring our which port is used for the second relay in the DUAL product.
-
@alexsh1 Replace the FLASH in the Sonoff - easier in the latest models as they've put the FLASH chip on the back (Sonoff TH16 etc) - on the originals it was jammed in next to the programming button and a pain to replace.
-
@alexsh1 Replace the FLASH in the Sonoff - easier in the latest models as they've put the FLASH chip on the back (Sonoff TH16 etc) - on the originals it was jammed in next to the programming button and a pain to replace.
@peterscargill Peter, I am stuck with the previous model (WiFi + 433) and changing FLASH is literally impossible even with a small tip. Using a hot fan is not an option as it would melt down all plastic including the button.
-
Here is a working example of using Sonoff with MySensors and the mqtt gateway.
No need to replace any flash etc... -
Here is a working example of using Sonoff with MySensors and the mqtt gateway.
No need to replace any flash etc... -
So I have been debating on getting some of these sonoffs. I am assuming the WiFi gateway in the build section of the site is what I would need to build? Is there a better option for using these with my Vera Plus?
-
So I have been debating on getting some of these sonoffs. I am assuming the WiFi gateway in the build section of the site is what I would need to build? Is there a better option for using these with my Vera Plus?
-
@dbemowsk no, the wifi gateway above is to connect nrf24l01+ via wifi. For Sonoff I just reflashed it with easyesp and it works via my normal router with Domoticz. You can have the MQTT setup with Sonoff - thats what @peterscargill did
@alexsh1 said in Looking for detailed description for hacking a sonoff:
For Sonoff I just reflashed it with easyesp and it works via my normal router with Domoticz. You can have the MQTT setup with Sonoff - thats what @peterscargill did
Will it work with Vera? I purchased one of these recently from WalMart which also runs on an esp8266 module. I wonder if I can run run the easyesp firmware on that one also?

-
@alexsh1 said in Looking for detailed description for hacking a sonoff:
For Sonoff I just reflashed it with easyesp and it works via my normal router with Domoticz. You can have the MQTT setup with Sonoff - thats what @peterscargill did
Will it work with Vera? I purchased one of these recently from WalMart which also runs on an esp8266 module. I wonder if I can run run the easyesp firmware on that one also?

@dbemowsk Unfortunately, I am not familiar with Vera. Can you send http or json commands from Vera? If yes, it will work. On RPi this is easy to implement.
Generally speaking you can flash many devices with easyesp if you find how to connect FTDI. I have ESP-01 and ESP-12 running easyesp. Again I am not familiar with the device you posted (the most important question is does it have FTDI or can you identify it by soldering corresponding pins?) and suggest to ask the same question on the easyesp forum.
-
@alexsh1 I think all the information I need to flash it is in this post that I found on Hackaday. It is a bit different than the sonoffs in that it does not have an unpopulated header port for programming, so you have to solder directly to the module to get it programmed, but what the heck, I'll give it a shot.
As far a s controlling it from Domoticz, I am assuming that you just created a dummy switch that you used URLs for the on and off commands, correct? I will look into how to do that from Vera. Before I got my Vera (a month ago) I was using Domoticz.
-
@alexsh1 I think all the information I need to flash it is in this post that I found on Hackaday. It is a bit different than the sonoffs in that it does not have an unpopulated header port for programming, so you have to solder directly to the module to get it programmed, but what the heck, I'll give it a shot.
As far a s controlling it from Domoticz, I am assuming that you just created a dummy switch that you used URLs for the on and off commands, correct? I will look into how to do that from Vera. Before I got my Vera (a month ago) I was using Domoticz.
-
@dbemowsk yes, with Domoticz it is very straight forward, but you have to setup the Sonoff as well.
Check this out- http://www.letscontrolit.com/wiki/index.php/Tutorial_Domoticz_Switch -
I have a standard ethernet gateway (NRF) and my controller is the home automation system 'Homey'. I presume I cannot connect these directly to my controller?
-
I have a standard ethernet gateway (NRF) and my controller is the home automation system 'Homey'. I presume I cannot connect these directly to my controller?
@Mark-Swift the problem with home automation in general is a verity of controllers ;) I'm not familiar with Homey, but if it can handle MQTT, Sonoff will work with it.
A quick google found this:
https://forum.athom.com/discussion/858/published-mosquitto-mqtt-client-app
you are participating in this thread ;)
PS I have a standard Ethernet GW too. My controller Domoticz can handle JSON/http requests which makes it easy to handle devices like Sonoff connected to my home wifi and not requiring any further GW. Obviously, the setup can be more complicated with MQTT GW and Sonoff MQTT firmware
-
Please checkout my hack of the Sonoff
Apart from turning the relay on/off it offers the following features
The device is managed via a set of commands published from any MQTT client. Statuses are published by the device. Subscribe to them on your MQTT client.
SSID/Password management - The local SPIFSS file system is used to store an array of WiFI credentials.
Extra GPIO On/Off. There is an 'extra' GPIO available (next to the Ground pin on the UART breakout on the Sonoff. -
Please checkout my hack of the Sonoff
Apart from turning the relay on/off it offers the following features
The device is managed via a set of commands published from any MQTT client. Statuses are published by the device. Subscribe to them on your MQTT client.
SSID/Password management - The local SPIFSS file system is used to store an array of WiFI credentials.
Extra GPIO On/Off. There is an 'extra' GPIO available (next to the Ground pin on the UART breakout on the Sonoff. -
@mgaman Interesting code but I have a hard time understanding how you set ssid + passwd , through mqtt with your hard coded wifi user pass?
@Efflon
Did you read the PDF file? There I explain the methodology
From an MQTT client I publish commands which the Sonoff subscribes to.
These commands allow me to add to or delete from an array of SSID/Password pairs held in a file in the ESP8266 SPIFSS file system.
On power up I scan the local networks for SSID's and search the local file for matching SSID's.
If a match is found, I use it for connecting to the local WiFI network.
Does that help?