[DEPRECATED] Tasmota 7.x/8.x firmware for Hubitat + Tuya, Sonoff and other drivers

There you go :

02:15:18 CMD: Weblog 4
02:15:18 RSL: stat/tasmota/RESULT = {"WebLog":4}
02:15:18 CFG: Saved to flash at FA, Count 18, Bytes 4096
02:15:20 TYA: Send "55aa00000000ff"
02:15:20 {"TuyaReceived":{"Data":"55AA010000010102","Cmnd":0,"CmndData":"01"}}
02:15:20 TYA: Heartbeat
02:15:29 WIF: Checking connection...
02:15:29 WIF: Connected
02:15:31 TYA: Send "55aa00000000ff"
02:15:31 {"TuyaReceived":{"Data":"55AA010000010102","Cmnd":0,"CmndData":"01"}}
02:15:31 TYA: Heartbeat
02:15:42 TYA: Send "55aa00000000ff"
02:15:42 {"TuyaReceived":{"Data":"55AA010000010102","Cmnd":0,"CmndData":"01"}}
02:15:42 TYA: Heartbeat
02:15:49 WIF: Checking connection...
02:15:49 WIF: Connected
02:15:53 TYA: Send "55aa00000000ff"
02:15:53 {"TuyaReceived":{"Data":"55AA010000010102","Cmnd":0,"CmndData":"01"}}
02:15:53 TYA: Heartbeat
02:16:04 TYA: Send "55aa00000000ff"
02:16:04 {"TuyaReceived":{"Data":"55AA010000010102","Cmnd":0,"CmndData":"01"}}
02:16:04 TYA: Heartbeat
02:16:09 WIF: Checking connection...
02:16:09 WIF: Connected
02:16:15 TYA: Send "55aa00000000ff"
02:16:15 {"TuyaReceived":{"Data":"55AA010000010102","Cmnd":0,"CmndData":"01"}}
02:16:15 TYA: Heartbeat
02:16:26 TYA: Send "55aa00000000ff"
02:16:26 {"TuyaReceived":{"Data":"55AA010000010102","Cmnd":0,"CmndData":"01"}}
02:16:26 TYA: Heartbeat
02:16:29 WIF: Checking connection...
02:16:29 WIF: Connected
02:16:30 RSL: tele/tasmota/STATE = {"Time":"2020-02-23T02:16:30","Uptime":"0T07:40:14","UptimeSec":27614,"Vcc":3.689,"Heap":30,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":0,"POWER":"ON","Wifi":{"AP":1,"SSId":"Puffy","BSSId":"30:D3:2D:CF:AF:B2","Channel":6,"RSSI":96,"LinkCount":1,"Downtime":"0T00:00:08"}}
02:16:37 TYA: Send "55aa00000000ff"
02:16:37 {"TuyaReceived":{"Data":"55AA010000010102","Cmnd":0,"CmndData":"01"}}
02:16:37 TYA: Heartbeat
02:16:45 CMD: SerialSend5 55aa0001000000
02:16:45 SRC: WebConsole from 192.168.1.22
02:16:45 CMD: Group 0, Index 5, Command "SERIALSEND", Data "55aa0001000000"
02:16:45 RSL: stat/tasmota/RESULT = {"SerialSend":"Done"}
02:16:45 {"TuyaReceived":{"Data":"55AA01010015364153644E776539496461657751456C312E302E3080","Cmnd":1,"CmndData":"364153644E776539496461657751456C312E302E30"}}
02:16:45 TYA: MCU Product ID: 6ASdNwe9IdaewQEl1.0.0
02:16:45 TYA: Send "55aa0002000001"
02:16:45 {"TuyaReceived":{"Data":"55AA010200020E0416","Cmnd":2,"CmndData":"0E04"}}
02:16:45 TYA: RX MCU configuration Mode=2
02:16:45 TYA: Read MCU state
02:16:45 TYA: Send "55aa0008000007"
02:16:46 {"TuyaReceived":{"Data":"55AA01070005010100010110","Cmnd":7,"CmndData":"0101000101","DpId":1,"DpIdType":1,"DpIdData":"01"}}
02:16:46 TYA: fnId=11 is set for dpId=1
02:16:46 TYA: RX Relay-1 --> MCU State: On Current State:On
02:16:46 {"TuyaReceived":{"Data":"55AA010700050B010001011A","Cmnd":7,"CmndData":"0B01000101","DpId":11,"DpIdType":1,"DpIdData":"01"}}
02:16:46 TYA: fnId=0 is set for dpId=11
02:16:46 {"TuyaReceived":{"Data":"55AA010700050C050001001E","Cmnd":7,"CmndData":"0C05000100","DpId":12,"DpIdType":5,"DpIdData":"00"}}
02:16:46 TYA: fnId=0 is set for dpId=12
02:16:46 {"TuyaReceived":{"Data":"55AA010700050D040001001E","Cmnd":7,"CmndData":"0D04000100","DpId":13,"DpIdType":4,"DpIdData":"00"}}
02:16:46 TYA: fnId=0 is set for dpId=13
02:16:46 {"TuyaReceived":{"Data":"55AA010700080E0200040000000023","Cmnd":7,"CmndData":"0E02000400000000","DpId":14,"DpIdType":2,"DpIdData":"00000000"}}
02:16:46 TYA: fnId=0 is set for dpId=14
02:16:46 {"TuyaReceived":{"Data":"55AA01070005670400010078","Cmnd":7,"CmndData":"6704000100","DpId":103,"DpIdType":4,"DpIdData":"00"}}
02:16:46 TYA: fnId=0 is set for dpId=103
02:16:46 {"TuyaReceived":{"Data":"55AA010700076C0300036666307C","Cmnd":7,"CmndData":"6C030003666630","DpId":108,"DpIdType":3,"DpIdData":"666630","Type3Data":"ff0"}}
02:16:46 TYA: fnId=0 is set for dpId=108
02:16:46 {"TuyaReceived":{"Data":"55AA010700056D040001007E","Cmnd":7,"CmndData":"6D04000100","DpId":109,"DpIdType":4,"DpIdData":"00"}}
02:16:46 TYA: fnId=0 is set for dpId=109
02:16:46 {"TuyaReceived":{"Data":"55AA010700056E0400010180","Cmnd":7,"CmndData":"6E04000101","DpId":110,"DpIdType":4,"DpIdData":"01"}}
02:16:46 TYA: fnId=0 is set for dpId=110
02:16:46 {"TuyaReceived":{"Data":"55AA010700086F020004000000FF83","Cmnd":7,"CmndData":"6F020004000000FF","DpId":111,"DpIdType":2,"DpIdData":"000000FF"}}
02:16:46 TYA: fnId=0 is set for dpId=111
02:16:48 TYA: Send "55aa00000000ff"
02:16:48 {"TuyaReceived":{"Data":"55AA010000010102","Cmnd":0,"CmndData":"01"}}
02:16:48 TYA: Heartbeat
02:16:49 WIF: Checking connection...
02:16:49 WIF: Connected

1 Like

Thank you, now it is clear and confirmed, it is the exact same as another one for which there is plenty of information about the DpId usage. There are sometimes variants even with the same branding/model number, but then we'd see a variation in the reported DpIDs. No diffrence in there that I can see. I'll see if I can get this done soon. The one I have have the same functions, just in different dpIDs and used a little bit differently.
I can add you to the Closed Beta thread if you want to have the driver before the public beta? You'd have to do some testing of the functionality anyway, since I don't have the exact same device. Are LED color controls important to you with this device?
I will not implement the countdown mode part, since that is better handled with rules in HM anyway. Not sure what to do with the "scheduling" button presses on the device, I'm thinking to have a rule in Tasmota catch them, forward them as button presses and then reset the timing, but not sure yet, could cause issues.

1 Like

I ll be glad to help if I can , keep in mind though that my knowledge on the field is extremely limited and my work keeps me busy for many hours per day.

1 Like

Yes, they are truly important.
As for the "scheduling" personally i would use HE rules, if i wanted an option like this.

1 Like

Thank you so very much for help and guidance.

1 Like

First time playing around with Tasmota so please bear with the dumb question - the OTA process for a new install (on a TYWE2S) is to first flash the 7.1.1 basic build using tuya convert, then test connect to my wifi network and then flash to 8.1.1 using tuya convert again?

2 Likes

You only need to use Tuya Convert once, so you can flash to minimal 8.1.0 first watch this.

EDIT: if you have already flashed it using Tuya Convert you can go to minimal 8.1.0 then onto full tasmota-hubitat-8.1.0.bin

2 Likes

I'll add you and you can read up on the new driver. I hope to have time for the special "diffuser" driver during the next few days.

Ok, I'll make sure to add support for that then :slight_smile:

1 Like

Thanks- so subsequent OTA updates are done via the device's web interface?

Also I read in @markus original post that we shouldn't use minimal but basic for the initial flash of the device? So this step isn't necessary then?

1 Like

Correct , at that point you will just upgrade when it's required from each individual device unless you spin up something like Tasmoadmin.

I called that out if you were jumping from 7.x to 8.x if your already on 8.x then no need. EDIT: truth be told i've done it both ways and it worked fine for me anyways.

2 Likes

The only time minimal really shouldn’t be used is when doing TuyaConvert. It can leave settings unset which causes the devices to hang on boot. After that, if it works without, then no need.

2 Likes

Cool, thanks @jchurch @markus !

2 Likes

TBH I just use the inbuilt tasmota.bin that is in TuyaConvert just to quickly get the job done then make my changes after. Let's face it Tasmota is so quick n easy anyways it's really not that many extra steps.

2 Likes

Enjoy mate, once you go Tasmota you never go back :stuck_out_tongue: happy flashing!

3 Likes

This would be the easy and recommended way. Less risk of making a mistake in choosing firmware.

2 Likes

Actually one last thing. Once flashed it looks like the relay is probably controlled by GPIO14 (it's one of the new grid connect plugs). Presumably it's a matter of trial and error if this configuration doesn't work?

1 Like

Have you tried finding your device here? :

2 Likes

Yep, but it's not on the list so just trial and error with possible configs then?

1 Like

Kind of, you can try to find info on the device in more places as well, search for device name + pinout in Google and you might find what you need. You could also trace it down on the PCB... Look at a similar device form the same manufacturer and try those pins first, it may very well be they reused parts of the design. There's also certain GPIOs which are more likely to have relays and other component on them. Without knowing more about the device it would be hard to help. What is the exact model number and name?

1 Like

What's the device?

1 Like