Sonoff Dual R3 Power Monitoring Switch Module (DUALR3)
Sonoff Dual R3

Available from:


Install method:
USB to Serial

GPIO #Component
GPIO00 Button 1
GPIO01 None
GPIO02 None
GPIO03 None
GPIO04 None
GPIO05 None
GPIO09 None
GPIO10 None
GPIO12 None
GPIO13 LedLinki
GPIO14 Relay 2
GPIO15 None
GPIO16 None
GPIO17 None
GPIO18 None
GPIO19 None
GPIO20 None
GPIO21 None
GPIO22 None
GPIO23 None
GPIO24 None
GPIO25 CSE7761 Tx
GPIO26 CSE7761 Rx
GPIO27 Relay 1
GPIO6 None
GPIO7 None
GPIO8 None
GPIO11 None
GPIO32 Switch 1
GPIO33 Switch 2
GPIO34 None
GPIO35 None
GPIO36 None
GPIO37 None
GPIO38 None
GPIO39 None
Configuration for ESP32
{"NAME":"Sonoff Dual R3","GPIO":[32,0,0,0,0,0,0,0,0,576,225,0,0,0,0,0,0,0,0,0,0,7296,7328,224,0,0,0,0,160,161,0,0,0,0,0,0],"FLAG":0,"BASE":1}
Flashing instructions for tasmota32 firmware.

For more accurate energy consumption measurements this device requires power monitoring calibration.

Hardware Revision Notification: Sonoff Dual R3 v2 released in September 2020

Starting September 2021, Sonoff started to distribute a new version with a different energy monitoring chip (BL0930 instead of CSE7761). There is no functional difference between v1.x and v2. Depending on shop’s stock you may have one or the other.

You can identify the v2 from the v1.x by the markings on the PCB and on the energy measurement chip. See photos of the Sonoff Dual R3 v2 in its device page. All photos below are from Sonoff Dual R3 v1.6.

Opening the Case

Press the case to release the clips. My case was not glued at all but some might be. After opening it, the PCB will simply pop out.


Serial Flashing

Disconnect the device from mains power! Like for real!

The four needed pins (3V3, RX, TX and GND) are available at the back of the PCB and can be easily identified.


Connect them to the serial-to-USB adapter. If you have alligator clips or some ingenuity you can do it without soldering, notice that ground is connected to any ground pin on the board, not the marked pad necessarily.

Look Ma, no soldering!

To enter flash mode you need to connect GPIO0 to GND. Luckily Sonoff decided to give you a practical button that does just that.


Download tasmota32.bin (you need v9.3.1.2 and above) or tasmota32-bluetooth.bin if you plan on using the Bluetooth gateway feature.

ESP Flasher

For easiest flash use ESP Flasher. Launch ESP Flasher, select the port for your serial-to-USB adapter and your binary, make sure DUALR3 is in flash mode by pressing down the on board button then connect your serial-to-USB adapter. Finally click “Flash ESP” and wait until complete.


Using command line esptool.py you need to download all the additional required files (**do not right click to download them but click each link and download using the “Download” icon).

Flash using this command line:

esptool.py --chip esp32 --port COM5 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dout --flash_freq 40m --flash_size detect 0x1000 bootloader_dout_40m.bin 0x8000 partitions.bin 0xe000 boot_app0.bin 0x10000 tasmota32.bin


After the flash is complete you will have to connect the DUALR3 to mains and configure Tasmota with webUI using the Wi-Fi AP. ESP32 usually cannot boot properly with power supplied by the serial-to-USB adapter!

Apply the template and make sure “Module 0” is selected. If the power readings are off, perform power monitoring calibration.

Zero Cross Detection Support

To enable Zero Cross Detection use this template

{"NAME":"Sonoff Dual R3 (ZCD)","GPIO":[32,0,0,0,7552,0,0,0,0,576,225,0,0,0,0,0,0,0,0,0,0,7296,7328,224,0,0,0,0,160,161,0,0,0,0,0,0],"FLAG":0,"BASE":1}

GitHub discussion

Flashing instructions by NotEnoughTech

Comparison with Shelly 2.5