Flashing Tutorial
Step by Step
1-Start with flashing a Nodemcu
We can use a lot of different versions of ESP8266 such as Nodemcu. Here you will see V2 and V3. This is the easiest way to flash and use HomeHome.App firmware.
Relay and Button pins can be customized as needed of your device.
There are ready embedded devices for easy select in setup menu like: Sonoff Basic, Mini (R2), 4ch Pro, TH10/16 (Thermostat)… You can find a lot of sources about how to flash Sonoff and other manufacturers products. For very flexible configurations: use Custom On Off / Shutter or Thermostat and set the GPIO pins as you need!
Nodemcu :
You can set 1-2-4 relay & button on-off switch or roller shutter/blinds with 2 relay & button
Nodemcu will be in flash mode when you try to upload the firmware file.
You can download binary file from here.
+ Micro USB cable
+ Nodemcu
-> Skip this for Nodemcu, Wemos dev boards.
You will need a Flash Tool for other type device.
If you don’t know how to flash Sonoff or others try google “how to flash xxxxx device” (GPIO-0 must be HIGH to enter flash mode when you give power)
3.Software Setup;
There are 2 easy ways to flash
3.1.Way – Windows / Mac :
Get the latest program from here
After installation start your device in flash mode. (GPIO-0 and GND pins must be connected – no need for Nodemcu)
3.2.Way – Terminal Commands :
We suggest you to backup your original firmware because everything will be lost on the device (no need for Nodemcu).
Install esptool this will take 5-10 minutes,
Terminal command:
esptool.py -p /dev/cu.SLAB_USBtoUART –baud 115200 write_flash -fs 1MB -fm dout -ff 40m 0x0 /downloads/homehome.bin
(/dev/cu.SLAB_USBtoUART change this with your com port. Same command for Nodemcu and other 1mb boards.)
After successful upload unplug and plug power of your device. Now connect to your device WiFi network:
After the flash;
Select HomeHome-xxxxxx and enter password “homehome”
Buttons can be momentary or toggle.
You can set your device as roller shutter / blind if it has 2 relays. For example Sonoff Dual(R2) can be selected as roller shutter or you can select custom pins for relays and buttons. Update: See Dual R3 (esp32 chip)
Research; You can find a lot of info about usable pins of ESP8266 with Google.
Be careful! You may see that your relay board have reversed pins. Do not connect any cable until you are sure with pin directions.There will be a ‘Reverse pin’ setup in the settings page of your device.
Set fields as you need. Enter GPIO# or leave blank. Relay required. You can leave blank the ‘Reset, Led and Button’. Set 1-2-4 relay(s), 3 relays not supported.
These settings will be ready when you select Custom On Off Setting option;
Example 4 Relays On-Off Nodemcu GPIO setting:
Relay1=5(d1)
Relay2=4(d2)
Relay3=14(d5)
Relay4=12(d6)
Button1=13(d7)
Button2=3(RX)
Button3=1(TX)
*Button4=10(SDD3) or 2(d4)
*10(SDD3) or 2(d4) for Nodemcu V2 and 2(d4) for Nodemcu V3
Reset button=16(d0)
Led=2(d4) if you use GPIO2 for button don’t set a pin for LED
NodeMcu V3
Example Roller Shutter / Blinds Nodemcu setting:
Relay1=5(d1) – Relay2=4(d2)
Button1=12(d6) – Button2=13(d7)
Reset button=16(d0) – Led=2(d4)
NodeMcu V2
VIN pin which is 5dc from USB cable goes to Relay board’s VCC. JD-VCC jumper is on.
V3 Wire Connections with 4 Channel 5DC
4-Finish Setup
Gmail required. It must be the same with your Android device account.
Set optional static ip, you must know your Gateway IP (like 192.168.0.1) and Subnet Mask (like 255.255.255.0) or you can set a static ip from your router.
Select your WiFi from network list and write your WiFi password correctly.
Save your settings, wait 5 seconds and unplug-plug USB cable.
5-HomeKit Setup
You can pair the device in 90 seconds after you plug the USB cable. HomeKit pair code is 111-88-111
Wait 1 minute and HomeKit will be ready to use.
Long press the accessory > settings to find your device ip
6-Google Home Setup
Unplug and plug Nodemcu and open Google Home from your Android.
At top-left corner “+” > “Set up device” > “Works with Google” > “+HomeHome”
You will see login screen.
Log in with Google and select the same gmail account you wrote in device setup.
Your devices will be in your Google Home application after you login. Set them to a room.
You can change device names in HTTP server of your device.
Write the IP of your ESP8266 and setup device name. Note that HomeKit device names can be edited in HomeKit application.
Web UI : https://smart.homehome.app
Turn on-off and see HomeKit – Google Home – Web UI will be synchronized.
7- HTTP Local Server and WEB UI
Find your device ip : Open HomeKit, long press the accessory > settings or check your router DHCP list
Go to smart.homehome.app activate your device now you can control it from WEB UI & Google Home.
Now you can also control the device without an Apple hub (iPad, Apple TV, HomePod) remotely with Google Home.
8- 3rd Party App Communication
You can control HomeHome.App with 3rd party apps.
Your email address must be gmail so don’t add @gmail.com
Turn on 1. relay: ‘http://ip.address/1/on?myEmail’
Turn off 1. relay: ‘http://ip.address/1/off?myEmail’
All state replies are in array for example: [0,1,2,2]
0 –> off , 1 –> on , 2 –> none
Get all relay states: ‘http://ip.address/all?myEmail’
1-2-4 relay devices are using the same firmware so we push all together. You can easily understand this is a 2 relay device. First relay is off, second relay is on in this example.