arendst / Tasmota

Alternative firmware for ESP8266 and ESP32 based devices with easy configuration using webUI, OTA updates, automation using timers or rules, expandability and entirely local control over MQTT, HTTP, Serial or KNX. Full documentation at
https://tasmota.github.io/docs
GNU General Public License v3.0
21.98k stars 4.77k forks source link

Support for SONOFF Smart Power Meter Switch | POW Elite #15856

Closed nobodyman1 closed 2 years ago

nobodyman1 commented 2 years ago

PROBLEM DESCRIPTION

Is it possible to use Tasmota on the new SONOFF POW Elite? I found some Pictures here. It´s based on an ESP32 and the power measuring is done with a CSE7759B (same as used in SONOFF POW R2). But what´s about the LCD driver?

REQUESTED INFORMATION

Make sure your have performed every step and checked the applicable boxes before submitting your issue. Thank you!

EXPECTED BEHAVIOUR

A clear and concise description of what you expected to happen.

SCREENSHOTS

If applicable, add screenshots to help explain your problem.

ADDITIONAL CONTEXT

Add any other context about the problem here.

(Please, remember to close the issue when the problem has been addressed)

sfromis commented 1 year ago

Availability of the web installer dialog to configure Wi-Fi depends on the flashing setup enabling the web installer to reset the device. In general, that means that dev boards with integrated USB/serial adapters, while other devices where you connect 4 wires for flashing means that you'll have to fall back on the method with connecting to the AP created by Tasmota.

As ESP32 needs extra power for wifi, using mains power if applicable, beware that usual USB/serial adapters (including the recommended one) may not be able to reliably handle the ESP32 while connecting to wifi.

spaem66 commented 1 year ago

Ok thanks, but here the problem is that after flashing the device is dead. It seems a firmware problem, because flashing proceeds until the end. If I apply again the original ITEAD firmware with the same method (UART + ESPtool of course), the device works again. Unfortunately I can't see any log of what really happens during the upgrade

KTM-Power commented 1 year ago

Hello, I have bought 3 Sonoffs THR316 and am now trying to get them to work with Tasmota and 10-12 DS18B20 sensors. The start was a bit difficult, only the Tasmota Factory 32 firmware wanted to work after flashing. With this firmware, the Sonoffs run with a display and up to 8 DS18B20 sensors. Now to my problem: I need 10-12 sensors per Sonoff that I can read and ideally see on the display. If I look at the GPIO 5, 17, 18, 23 with the Factory32 firmware under "configure template", different TM1621 pins are displayed, which is correct. But if I now recompile the Factory32.bin using #defineDS18X20_MAX_SENSORS<12>, I can no longer get the display to run. The 12 DS18B20 sensors are displayed correctly, but the display remains blank. I can no longer find or select the TM1621 pins under "Configure Template" either, which are absolutely necessary for the display. Anyone have any ideas on how to get the display working again?

Thanks a lot!

sfromis commented 1 year ago

Missing TM1621 pins sounds like a bad build, without having USE_DISPLAY_TM1621_SONOFF defined. Details of how you exactly set up for that build matter a lot....

KTM-Power commented 1 year ago

Missing TM1621 pins sounds like a bad build, without having USE_DISPLAY_TM1621_SONOFF defined. Details of how you exactly set up for that build matter a lot....

Many thanks for your response. I tried to change the firmware with Tasmocompiler, unfortunately without success or with the above result. I have in the Tasmocompiler under "additional parameters"

find USE_DISPLAY_TM1621_SONOFF

defind DS18X20_MAX_SENSORS 18

The 18 sensors work as already written above. Only the display command gives an error message "error: 'Energy' was not declared in this scope"

I have now selected all possible possible functions that can be selected in the Tasmocompiler and now it suddenly works without the error message when compiling. At first I thought that I just had to tick the "Displays" box, but apparently that was related to another function.

Nevertheless, thank you very much for your help!

asherccohen commented 1 year ago

In your opinion, can the SONOFF POWR320D be used to read solar panel energy production?

Wheemer commented 1 year ago

Hypothetical question for the knowledgeable folks watching this thread:

What happens if I run a pow elite on my oven? It sees up to 9500 watts and 48 amp.

If I bypass the relay in a manor such as this:

https://www.eevblog.com/forum/projects/correct-method-to-bypass-relay-(pictures-inside-re-sonoff-pow-r2)/

Would the rest of the electronics handle it?

arendst commented 1 year ago

Nope. The current is way to high for the Sonoff Elite hardware.

You'll need to look for Current Transformer options.

Wheemer commented 1 year ago

Well when that modification is performed and the relay is bypassed then the the hardware can handle more than default. There is a resistor inline that is perhaps bypassed as well. Is there anything specific that should be of concern? I have tested this now with bypassing just the relay and not the resistor. I ran all burners and the oven for 5 mins while observing the pow elite and noticed nothing unusual. The device was not getting hot to the touch or anything. I'm just testing and looking for a good reason this can't work, even though it seems to be working fine.

arendst commented 1 year ago

If it works for you it's fine by me. I doubt if you'll see values over 5500W as the driver doesn't support higher values.

Wheemer commented 1 year ago

Well it worked for 5 mins during the test. I am not convinced I'm going to put it into production. My unit has tasmota latest flashed and it recorded 5 mins straight of 9546w. So it seems as if the driver is reading something. I do not know if it's accurate.

JMDaling commented 1 year ago

For some strange reason, the Period on my POWR320D is always zero even with 300s logging and a continuous load of +400W. The rest seems ok. I used the latest template and am running the latest tasmota 32 firmware : 12.4.02.

Any assistance will be appreciated.

Telemetry after 300s output:

10:28:47.979 MQT: tele/POWR320D_01/STATE = {"Time":"2023-03-10T10:28:47","Uptime":"0T00:05:12","UptimeSec":312,"Heap":153,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Berry":{"HeapUsed":3,"Objects":45},"POWER":"ON","Wifi":{"AP":1,"SSId":"Paradise","BSSId":"00:5F:67:F8:02:C4","Channel":2,"Mode":"11n","RSSI":100,"Signal":-49,"LinkCount":1,"Downtime":"0T00:00:05"}}
10:28:48.023 MQT: tele/POWR320D_01/SENSOR = {"Time":"2023-03-10T10:28:48","ENERGY":{"TotalStartTime":"2023-03-02T15:16:18","Total":4.141,"Yesterday":0.305,"Today":0.422,"Period":0,"Power":494,"ApparentPower":525,"ReactivePower":176,"Factor":0.94,"Voltage":223,"Current":2.352}}

Status 0 output:

10:27:20.570 MQT: stat/POWR320D_01/STATUS = {"Status":{"Module":0,"DeviceName":"AC+Dishwasher","FriendlyName":["AC+Dishwasher"],"Topic":"POWR320D_01","ButtonTopic":"0","Power":1,"PowerOnState":3,"LedState":1,"LedMask":"FFFF","SaveData":1,"SaveState":1,"SwitchTopic":"0","SwitchMode":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"ButtonRetain":0,"SwitchRetain":0,"SensorRetain":0,"PowerRetain":0,"InfoRetain":0,"StateRetain":0,"StatusRetain":0}}
10:27:20.610 MQT: stat/POWR320D_01/STATUS1 = {"StatusPRM":{"Baudrate":115200,"SerialConfig":"8N1","GroupTopic":"tasmotas","OtaUrl":"http://ota.tasmota.com/tasmota32/release/tasmota32.bin","RestartReason":"Software reset CPU","Uptime":"0T00:03:45","StartupUTC":"2023-03-10T09:23:35","Sleep":50,"CfgHolder":4617,"BootCount":29,"BCResetTime":"2023-03-02T15:16:18","SaveCount":116}}
10:27:20.658 MQT: stat/POWR320D_01/STATUS2 = {"StatusFWR":{"Version":"12.4.0.2(tasmota32)","BuildDateTime":"2023-03-02T10:29:15","Core":"2_0_7","SDK":"4.4.4.20230218","CpuFrequency":160,"Hardware":"ESP32-D0WD-V3 rev.3","CR":"409/699"}}
10:27:20.679 MQT: stat/POWR320D_01/STATUS3 = {"StatusLOG":{"SerialLog":2,"WebLog":2,"MqttLog":0,"SysLog":0,"LogHost":"","LogPort":514,"SSId":["Paradise",""],"TelePeriod":300,"Resolution":"558180C0","SetOption":["00008009","2805C80001000680003C5A0A192800000000","00008080","00006000","00004000","00000000"]}}
10:27:20.720 MQT: stat/POWR320D_01/STATUS4 = {"StatusMEM":{"ProgramSize":1518,"Free":1361,"Heap":148,"StackLowMark":2,"PsrMax":0,"PsrFree":0,"ProgramFlashSize":4096,"FlashSize":4096,"FlashChipId":"16405E","FlashFrequency":40,"FlashMode":"DIO","Features":["00000809","9F9AD7CF","0015A001","B7F7BFCF","05DA9BC0","E0360DC7","480840D2","20200000","D4BC482D","000280B1"],"Drivers":"1,2,3,4,5,7,8,9,10,11,12,14,16,17,20,21,24,26,27,29,34,35,38,50,52,59,60,62,63,66,67,82,86,87,88","Sensors":"1,2,3,5,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,26,31,34,37,39,40,42,43,45,51,52,55,56,58,59,64,66,67,74,85,92,95,98,103,127","I2CDriver":"7,8,9,10,11,12,13,14,15,17,18,20,24,29,31,36,41,42,44,46,48,58,62,65,69,76,77"}}
10:27:20.791 MQT: stat/POWR320D_01/STATUS5 = {"StatusNET":{"Hostname":"POWR320D-01-2016","IPAddress":"999.999.999.999","Gateway":"999.999.999.999","Subnetmask":"255.255.255.0","DNSServer1":"192.168.0.1","DNSServer2":"0.0.0.0","Mac":"24:D7:EB:11:67:E0","IP6Global":"","IP6Local":"fe80::26d7:ebff:fe11:67e0","Ethernet":{"Hostname":"","IPAddress":"0.0.0.0","Gateway":"0.0.0.0","Subnetmask":"0.0.0.0","DNSServer1":"192.168.0.1","DNSServer2":"0.0.0.0","Mac":"00:00:00:00:00:00","IP6Global":"","IP6Local":""},"Webserver":2,"HTTP_API":1,"WifiConfig":4,"WifiPower":17.0}}
10:27:20.845 MQT: stat/POWR320D_01/STATUS6 = {"StatusMQT":{"MqttHost":"999.999.999.999","MqttPort":1883,"MqttClientMask":"DVES_%06X","MqttClient":"DVES_1167E0","MqttUser":"DVES_USER","MqttCount":1,"MAX_PACKET_SIZE":1200,"KEEPALIVE":30,"SOCKET_TIMEOUT":4}}
10:27:20.877 MQT: stat/POWR320D_01/STATUS7 = {"StatusTIM":{"UTC":"2023-03-10T09:27:20","Local":"2023-03-10T10:27:20","StartDST":"2023-03-26T02:00:00","EndDST":"2023-10-29T03:00:00","Timezone":"+01:00","Sunrise":"07:14","Sunset":"18:46"}}
10:27:20.898 MQT: stat/POWR320D_01/STATUS9 = {"StatusPTH":{"PowerDelta":[0,0,0,0,0,0,0,0],"PowerLow":0,"PowerHigh":0,"VoltageLow":0,"VoltageHigh":0,"CurrentLow":0,"CurrentHigh":0}}
10:27:20.925 MQT: stat/POWR320D_01/STATUS10 = {"StatusSNS":{"Time":"2023-03-10T10:27:20","ENERGY":{"TotalStartTime":"2023-03-02T15:16:18","Total":4.129,"Yesterday":0.305,"Today":0.410,"Power":495,"ApparentPower":518,"ReactivePower":155,"Factor":0.95,"Voltage":222,"Current":2.331}}}
10:27:20.961 MQT: stat/POWR320D_01/STATUS11 = {"StatusSTS":{"Time":"2023-03-10T10:27:20","Uptime":"0T00:03:45","UptimeSec":225,"Heap":150,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Berry":{"HeapUsed":3,"Objects":45},"POWER":"ON","Wifi":{"AP":1,"SSId":"Home","BSSId":"00:5F:67:F8:02:C4","Channel":2,"Mode":"11n","RSSI":96,"Signal":-52,"LinkCount":1,"Downtime":"0T00:00:05"}}}
arendst commented 1 year ago

Fixed in latest dev branch. Binaries available in two hours.

JMDaling commented 1 year ago

Theo, you are a legend. Much appreciated!

alextk87 commented 1 year ago

Hi everyone, I have a problem installing tasmota on Sonoff POWR316. I'm flashing the device using nodeMCU's CH340 and the web installer. The installer is detecting the device and after the installation process is completed, there is a popup asking me to configure the device by connecting it to the wifi network. After that I can visit the device and it looks like it is working correctly. However, as soon as I disconnect the device from the nodeMcu and connect it to 220V supply, the device won't connect to my wifi network and it is creating a generic ITEAD wifi network. When I connect to this network I can see that the device have IP 192.168.1.1 and it gave me an IP 192.168.1.2. If I try to open the webpage at the address of the device I get the follosing JSON

{"data":"YcZBijq8lkjOV/1fNA94eXQ7BPuNb4YtGnjIHwy569xQEKEd7KaLFan7usp4Jd4eRquoiP8telRV6ZMJOSklEwlMPNwffCIXT3nkCIOooaERYha0SjzF1lwza7OMGiTok0BA5IYi7qMcSZE2DTQKbvdE6yIztmrfcgqrC87s07k="}

Now the wired part - when I disconnect the 220V power supply and connect the device to the 3.3V power supply of the nodeMCU, the device is booting and connecting to my wifi network and looks to be working as expected. Funny thing is that the web installer is not detecting the device as ESP32 but as ESP8266EX.

barbudor commented 1 year ago

Are you sure you have an POW ELITE and not the legacy Pow R3 ?

alextk87 commented 1 year ago

The device is supposed to be the POW Origin, the version without the display - POWR316

Maybe the wiki page is not updated properly, because for issues and development updates, it's redirecting me to this page.

barbudor commented 1 year ago

No, that's the proper page. I was mainly refering to the Web installer reporting the ESP as an ESP8266

sfromis commented 1 year ago

While using a NodeMCU as USB/serial adapter is fine, what you post sounds a lot like you did not disable the ESP8266 on that board, and hence flashed the ESP8266 instead of the ESP32 in the POWR316. Therefore only booting when you again use the NodeMCU. Post the output of the command Status 2 to be sure what you're booting on.

alextk87 commented 1 year ago

Thanks for the help @sfromis, your guess was spot on! It turned out to be a bad connection between GND and RST on the nodeMCU. Now the device is properly flashed and working.

pmknowles commented 1 year ago

Well when that modification is performed and the relay is bypassed then the the hardware can handle more than default. There is a resistor inline that is perhaps bypassed as well. Is there anything specific that should be of concern? I have tested this now with bypassing just the relay and not the resistor. I ran all burners and the oven for 5 mins while observing the pow elite and noticed nothing unusual. The device was not getting hot to the touch or anything. I'm just testing and looking for a good reason this can't work, even though it seems to be working fine.

Please do not do this. You are wanting to put almost double the rated power through it. 48A needs a cable with 4mm2 cross sectional area. 25A 1.5mm2. Neither the terminals nor the PCB tracks will have been designed to take that current. If you have a fire your insurance company would invalidate your house insurance,

Wheemer commented 1 year ago

Well when that modification is performed and the relay is bypassed then the the hardware can handle more than default. There is a resistor inline that is perhaps bypassed as well. Is there anything specific that should be of concern? I have tested this now with bypassing just the relay and not the resistor. I ran all burners and the oven for 5 mins while observing the pow elite and noticed nothing unusual. The device was not getting hot to the touch or anything. I'm just testing and looking for a good reason this can't work, even though it seems to be working fine.

Please do not do this. You are wanting to put almost double the rated power through it. 48A needs a cable with 4mm2 cross sectional area. 25A 1.5mm2. Neither the terminals nor the PCB tracks will have been designed to take that current. If you have a fire your insurance company would invalidate your house insurance,

I have since split this into two 110 lines and fed them into two PowR3s.

The ratings for these devices seem arbitrary as the PowR3 has the same rating as the Pow Elite, yet the internals are very different. I do not trust what Sonoff rates them as.

dx136 commented 1 year ago

I'm using a POWR316D and trying to customize what appears on the LCD display.

I found the command DspLine in the release notes for Changelog v12.2.0 Patrick, as well as at https://tasmota.github.io/docs/Commands/#management. I've searched both those, as well as this thread, but haven't been able to find any documentation for the parameters "index, unit, index, unit, ..."

When I've tried assigning any value other than "0, 0" the display no longer alternates and shows only a single 0. I don't mind looking through the code but I don't know which module, driver, or section has this code.

Any tips or hints about where I can look would be gratefully received.

Thanks.

dx136 commented 1 year ago

@Wheemer

I have since split this into two 110 lines and fed them into two PowR3s.

Splitting into two lines splits the voltage in half but the current stays the same, and it's the current that's going to overload the traces/wiring inside the PowR3. From experience: I've had a PowR2 melt when someone plugged a load double the rated maximum; I was just lucky there was no fire. The current-measuring resistor will eventually overheat and start the melting process if you exceed the limits.

As pmknowles suggested, it's extremely unsafe and unwise to exceed the current limits.

Wheemer commented 1 year ago

@Wheemer

I have since split this into two 110 lines and fed them into two PowR3s.

Splitting into two lines splits the voltage in half but the current stays the same, and it's the current that's going to overload the traces/wiring inside the PowR3. From experience: I've had a PowR2 melt when someone plugged a load double the rated maximum; I was just lucky there was no fire. The current-measuring resistor will eventually overheat and start the melting process if you exceed the limits.

As pmknowles suggested, it's extremely unsafe and unwise to exceed the current limits.

By splitting it the current was obviously also split. The devices do not see more than 5000 each under max load, which will be rare.

sfromis commented 1 year ago

Source code does have more info about the DspLine command.

  // DspLine1 <index>,<unit>,<index>,<unit>,... = Display specific JSON value and rotate between them
  //   unit 0 = None
  //        1 = temperature (Line 1 only)
  //        2 = %RH (Line 2 only)
  //        3 = Both V (Line 1 only) / A (Line 2 only)
  //        4 = Both kWh (Line 1 only) / W (Line 2 only)
  // DspLine1 0 and DspLine2 0 = Default of temperature/humidity
  //
  //      {"SCD30":{"CarbonDioxide":746,"eCO2":727,"Temperature":30.6,"Humidity":43.6,"DewPoint":16.8}}
  // index: 1        2                   3          4                  5               6
  //  unit: 0        0 (ppm)             0 (ppm)    1 (C or F)         2 (%RH)         1 (C or F)
  //
  //  DspLine1 4,1,3,0 = Temperature and eCO2
  //  DspLine2 2,0,5,2 = CarbonDioxide and humidity
dx136 commented 1 year ago

@sfromis You guys are amazing; thanks! :-)

aanban commented 1 year ago

Looking for the TRH316D+DS18B20 and POW320D I found this thread. Flashing the 12.4.0(tasmota) firmware and clicking the auto-configuration works like clockwork and in the end the readings are shown in the display. Awesome, what a great work!

As expected the TRH316D wakes up with two relays and shows the DS18B20 temperature within the display and home-assistant as well. And the POW320D shows the consumption values.

Just wondering what happened to the ESP32 temperature? Did it not work reliably and was removed or do I still have to turn on something?

sfromis commented 1 year ago

ESP32 temperature is/was worse than merely unreliable, but typically way off, like two neighbor chips showing a huge difference. If you like to see a bad number, you can turn SetOption146 on - just do not think of it as a decent temperature indicator.

aanban commented 1 year ago

OK, thank you for the response. That's right, it makes no sense to read out a temperature that has nothing to do with the real situation. I would also not expect the EPS32 to get too warm in my application. It was more a "nice-to-have" thought

helmar74 commented 1 year ago

Hi, thank you for integration Sonoff Pow Elite. I have one running with tasmota and I want to use also Google Chart to visualize power usage with Google Chart. Has anyone a working example script? (I compiled tasmota with USE_GOOGLE_CHARTS flag)

Thank you in advance!

EzequielDias commented 1 year ago

Hi, I have 2 Sonoff TH Elite (THR316D) and I'm unable to flash. I connected to TTL USB board, pressed button and connect USB port, device turn on with grren light at "Auto" (3rd light). Performed several tests pressing few seconds, but never enter in flash mode. I'm doing someting wrong?

Thanks.

sfromis commented 1 year ago

"TTL USB board" does not tell what hardware you use. Many of those USB/serial adapters are not able to supply enought 3.3V power for flashing, especially with ESP32. At the very least 150 mA should be available on 3.3V.

EzequielDias commented 1 year ago

TTL01 TTL02

Attached photos from board I'm using. Thanks.

sfromis commented 1 year ago

Bad one. Does not live up to:

At the very least 150 mA should be available on 3.3V.

Recommendations: https://tasmota.github.io/docs/Getting-Started/#serial-programmer

EzequielDias commented 1 year ago

Hi @sfromis,

Thanks for your recomendation, using right serial programmer I already flash Sonoff TH Elite (THR316D) with success.

I flashed with Tasmota32.bin and tried several templates, but display show "- - -" at power on bat after few seconds didn't display any info. I'm using for temperature data collection with Sonoff DS18B20 Waterproof Temperature Sensor.

Can you confirm what's the correct template to use?

Thanks.

Regards, Ezequiel Dias

sfromis commented 1 year ago

Use Auto-Configuration, selecting the device and the right probe type.

S474N commented 1 year ago

Which template for THR316D is correct please?

{"NAME":"Sonoff THR316D","GPIO":[32,0,0,0,225,9280,0,0,0,321,0,576,320,9184,9216,0,0,224,0,9248,0,1,0,3840,0,0,0,0,0,0,0,0,0,0,0,0],"FLAG":0,"BASE":1}

{"NAME":"THR316D","GPIO":[32,3200,0,3232,225,9280,0,0,0,8224,0,544,3872,9184,9216,0,0,224,0,9248,0,1248,0,3840,0,0,0,0,0,0,0,0,0,0,0,0],"FLAG":0,"BASE":1}

{“NAME”:”Sonoff THR320D”,”GPIO”:[32,0,0,0,226,9280,0,0,0,321,0,576,320,9184,9216,9312,0,0,9313,9248,0,1,0,3840,0,0,0,0,0,0,0,0,0,0,0,0],”FLAG”:0,”BASE”:1}

Hi @sfromis,

Thanks for your recomendation, using right serial programmer I already flash Sonoff TH Elite (THR316D) with success.

I flashed with Tasmota32.bin and tried several templates, but display show "- - -" at power on bat after few seconds didn't display any info. I'm using for temperature data collection with Sonoff DS18B20 Waterproof Temperature Sensor.

Can you confirm what's the correct template to use?

Thanks.

Regards, Ezequiel Dias

Same problem, display is off, only at power - - -.

sfromis commented 1 year ago

Well, instead of looking around for a template, try the recommendation in my last post prior to you asking....

S474N commented 1 year ago

Well, instead of looking around for a template, try the recommendation in my last post prior to you asking....

Also tested, but diplay is off.

Filmchicky commented 1 year ago

Hi everyone, I have TH elite pro and I already offset them. So, A humidity value on web page and on screen is mismatch. How can I sync them

Thank you,

pmknowles commented 1 year ago

Please read the instructions about flashing ESP32s. If you don't flash the additional files you must flash using the 'factory' bin. The best way is to flash using the last tab on the Tasmota web page

Sent from Outlook for Androidhttps://aka.ms/AAb9ysg


From: Halacs @.> Sent: Wednesday, June 21, 2023 9:11:09 PM To: arendst/Tasmota @.> Cc: pmknowles @.>; Comment @.> Subject: Re: [arendst/Tasmota] Support for SONOFF Smart Power Meter Switch | POW Elite (Issue #15856)

Hi,

can you please help me how to flash my SonOff POW ELITE (ER320D written on the paper box) device? I tried it in many ways and with many tasmota32*.bin image with no luck so far but it seems it should work somehow.

This is how I tried and what I can see on the serial after reboot.

sudo esptool write_flash 0x0 tasmota32.bin esptool.py v2.8 Found 2 serial ports Serial port /dev/ttyUSB0 Connecting.... Detecting chip type... ESP32 Chip is ESP32D0WDQ5 (revision 3) Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None Crystal is 40MHz MAC: e0:5a:1b:65:d8:40 Enabling default SPI flash mode... Configuring flash size... Auto-detected Flash size: 4MB Erasing flash... Took 6.31s to erase flash block Wrote 1562624 bytes at 0x00000000 in 153.1 seconds (81.7 kbit/s)... Hash of data verified.

Leaving... Hard resetting via RTS pin...

I see this in an infinite loop:

rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) invalid header: 0x3f400d6c invalid header: 0x3f400d6c invalid header: 0x3f400d6c invalid header: 0x3f400d6c invalid header: 0x3f400d6c invalid header: 0x3f400d6c invalid header: 0x3f400d6c ets Jul 29 2019 12:21:46

If I use esp-flasher, the GUI app for Ubuntu, then I get below on the serial log after flashing with tasmota32.bin:

00:00:00.002-220/51 HDW: ESP32-D0WD-V3 00:00:00.007-218/51 UFS: FlashFS mounted with 308 kB free 00:00:00.013 CFG: Loaded from File, Count 2 ets Jul 29 2019 12:21:46

rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0030,len:1184 load:0x40078000,len:12784 load:0x40080400,len:3032 entry 0x400805e4

00:00:00.002 HDW: ESP32-D0WD-V3 00:00:00.010 UFS: FlashFS mounted with 312 kB free 00:00:00.013 TFS: File '.settings' not found 00:00:00.013 CFG: Loaded from NVS, Count 2 00:00:00.015 FRC: Some settings have been reset (2) 00:00:00.365 BRY: Berry initialized, RAM used=4707 bytes 00:00:00.376 TFS: File '.drvset003' not found 00:00:00.377 CFG: Energy use defaults as file system not ready or file not found 00:00:00.384 Project tasmota - Tasmota Version 12.5.0(tasmota32)-2_0_7(2023-04-17T08:07:16) 00:00:00.492 WIF: WifiManager active for 3 minutes ets Jul 29 2019 12:21:46

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0030,len:1184 load:0x40078000,len:12784 load:0x40080400,len:3032 entry 0x400805e4

ubuntu-flash.txthttps://github.com/arendst/Tasmota/files/11824477/ubuntu-flash.txt

— Reply to this email directly, view it on GitHubhttps://github.com/arendst/Tasmota/issues/15856#issuecomment-1601606227, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AI5KPM3AHM63BQFEZOVZEEDXMNIN3ANCNFSM5ZVP735A. You are receiving this because you commented.Message ID: @.***>

pmknowles commented 1 year ago

And after you clicked 'Next'?

Sent from Outlook for Androidhttps://aka.ms/AAb9ysg


From: Halacs @.> Sent: Wednesday, June 21, 2023 9:50:56 PM To: arendst/Tasmota @.> Cc: pmknowles @.>; Comment @.> Subject: Re: [arendst/Tasmota] Support for SONOFF Smart Power Meter Switch | POW Elite (Issue #15856)

Naturally I tried with the tasmota32.factory.bin image too as well as the web installer. This is what I can see in the serial after using the web installer at https://tasmota.github.io/install/.

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0030,len:184 load:0x40078000,len:12680 load:0x40080400,len:2908 entry 0x400805c4

00:00:00.002-220/52 HDW: ESP32-D0WD-V3 00:00:00.040-218/51 UFS: FlashFS mounted with 312 kB free 00:00:00.045-218/51 TFS: File '.settings' not found 00:00:00.051-218/51 TFS: File '.settings.lkg' not found 00:00:00.052-218/51 CFG: Use defaults 00:00:00.238 QPC: Reset 00:00:00.623 BRY: Berry initialized, RAM used=4711 bytes 00:00:00.645 TFS: File '.drvset003' not found 00:00:00.645 CFG: Energy use defaults as file system not ready or file not found 00:00:00.657 Project tasmota - Tasmota Version 12.5.0(tasmota32)-2_0_7(2023-04-17T08:07:16)

[image]https://user-images.githubusercontent.com/1415569/247755467-f0b6f23d-db7c-4eb6-8b0b-9f4e8df14791.png

— Reply to this email directly, view it on GitHubhttps://github.com/arendst/Tasmota/issues/15856#issuecomment-1601654806, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AI5KPMYQSLM7YKGSH7B7BM3XMNNDBANCNFSM5ZVP735A. You are receiving this because you commented.Message ID: @.***>

halacs commented 1 year ago

I found somewhere a sentence mentioning USB port might not able to provide enough power so I attached my SonOff to a more powerful 3.3V power source and it works now. Thanks!

pmknowles commented 1 year ago

Yes, some of the Sonoff devices (particularly with displays) are very power hungry,

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows

From: @.> Sent: 22 June 2023 08:33 To: @.> Cc: @.>; @.> Subject: Re: [arendst/Tasmota] Support for SONOFF Smart Power Meter Switch | POW Elite (Issue #15856)

I found somewhere a sentence mentioning USB port might not able to provide enough power so I attached my SonOff to a more powerful 3.3V power source and it works now. Thanks!

— Reply to this email directly, view it on GitHubhttps://github.com/arendst/Tasmota/issues/15856#issuecomment-1602153306, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AI5KPM3TCYQUR5NJBKOFPRLXMPYLNANCNFSM5ZVP735A. You are receiving this because you commented.Message ID: @.***>

Montreal666 commented 1 year ago

As my hands and eyes are just not good enough for handling SMD I managed to short R16 and come up with this:

image

Even the display succesfully shows my connected HTU21 temp and humidity.

So now it's time I invent user display update functionality....

@Longlife4ever @arendst Just to be clear, by shorting R16 you mean a simple soldering tin dot between the two poles of R16, right? Thanks

Montreal666 commented 1 year ago

On device without power measurment, the ESP is normally isolated from AC. This is why you can safely connect an external sensor wihtout isolation. Just the same ase using a mini-D1/Node MCU with a USB wall adapter.

If Sonoff decided to use a GPIO to power the sensor, they probably faced the problem with low quality sensors that need to be reset from time to time. Something that you can do on tasmota is you configure the pin as a Relay and use a rule.

You are free to take you own responsibility to hack the device to connect a direct 3V3 and use both GPIO for I2C sensors (don't forget that I2C is not meant for long connections). If you do it properly this is safe.

But don't hack the POW Elite as all power measurment device are not isolated from AC and NO connection should be done to the outside.

Just curious regarding

"low quality sensors that need to be reset from time to time. Something that you can do on tasmota is you configure the pin as a Relay and use a rule."

I do have one ESP+DS18x20 setup which requires a reset from time to time.Can you elaborate on the rule ? Maybe I'm not understanding this correctly but how do you configure the GPIO as a sensor AND a relay?

Thx

sfromis commented 1 year ago

You config an additional gpio as a relay, and then you power the sensor from that pin.

One way of doing it with rules: https://github.com/arendst/Tasmota/discussions/19112

Of course, with unstable hardware, a better plan may be to replace.....

Montreal666 commented 1 year ago

You config an additional gpio as a relay, and then you power the sensor from that pin.

One way of doing it with rules: #19112

Of course, with unstable hardware, a better plan may be to replace.....

Yes agreed I'll do replace but was curious to understand the proposed approach. Thanks for sharing this.

Montreal666 commented 1 year ago

As my hands and eyes are just not good enough for handling SMD I managed to short R16 and come up with this: image Even the display succesfully shows my connected HTU21 temp and humidity. So now it's time I invent user display update functionality....

@Longlife4ever @arendst Just to be clear, by shorting R16 you mean a simple soldering tin dot between the two poles of R16, right? Thanks

image

Sonoff THR320D: After a successful Tasmota32 installation I've shorted R16 (to get access to GPIO26 via the external RJ10 connector - As per GitHub thread - see result in picture above)

lights turn on, relay cycles but It won't connect to Wifi anymore . When trying to reinstall Tasmota the COM port is detected with web installer but trying to erase flash & re-upload always end-up with "failed to initialize".

soldering was done quickly, no overheating (I think) but I guess it's toasted?

Removed the jumper, same result.

let me know where you think I screwed up.

Thx