Portisch / RF-Bridge-EFM8BB1

Alternative Firmware for the Sonoff RF Bridge EFM8BB1 chip
293 stars 124 forks source link

Nexa protocol implementation #107

Closed depen84 closed 5 years ago

depen84 commented 5 years ago

I found a neat tool called ProtocolAnalyzer (Github) that's similar to the bitbucketconverter script, but has some nice features (manual). However, to the ProtocolAnalyzer there are scripts to support Nexa devices, among others.

Nexa Decoder (Github) Nexa Encoder (Github)

In my home I use HASS via Tasmota to control my Nexa remote outlets. To get it working I had to sniff each button on the Nexa controller and convert them from b1 to b0. So far so good, but unfortunately my fiancée prefers to use the remote controller and I can´t get Tasmota to tell HASS that my lamps has changed state. If I could do that I could probably also make my Nexa controller run other automations in HASS. These two together would be awesome!

Do you think it's possible to implement the Nexa protocol?

Edit: I use a Nexa LYCT-705 with 4x4 channels.

Button 1_1 on: AA B0 4E 05 08 0140 0A3C 00D2 04D8 280A 481828383828382828382838382828382838382828383828382838283828283828382838382838283828283828383808380838082838083838080838083808380838 55
Button 1_1 off: AA B0 4E 05 08 014A 0A32 00C8 04CE 2800 481828383828382828382838382828382838382828383828382838283828283828382838382838283828283828383828382838282838283828382838283828382838 55

Button 1_2 on: AA B0 4E 05 08 0136 0A3C 00C8 04D8 280A 481828383828382828382838382828382838382828383828380838083808283808380838380838083808083808383808380838080838083838080838083808383808 55 
Button 1_2 off: AA B0 4C 04 08 012C 0A50 04EC 2814 381808282808280808280828280808280828280808282808280828082808082808280828280828082808082808282808280828080828082808280828082808282808 55

Button 1_3 on: AA B0 4E 05 08 0136 0A46 00DC 04E2 2800 481828383808380828380838380808380838380808383808380838083808083808380838380838083808083808383808380838080838083838080838083838080838 55 
Button 1_3 off: AA B0 4E 05 08 0140 0A3C 00D2 04D8 2814 481828383828382828382838382828382838382828383828382838283828283828382838382838283828283828383808380838080838083808380838083838080838 55

Button 1_4 on: AA B0 4E 05 08 0140 0A46 00D2 04D8 2800 481828383828382828382838382828382838380808383808380838083808083808380838380838083808083808383808380838080838083838080838083838083808 55 
Button 1_4 off: AA B0 4E 05 08 0140 0A3C 00C8 04CE 2814 481828383828382828382838382828382838382828383828382838283828283828382838382838283808283828383808380838080838083808380838083838083808 55

Button 4_1 on: AA B0 4E 05 08 0136 0A3C 00DC 04D8 280A 481828383808380828382838380808380838380808383808380838083808083808380838380838083808083808383808380838080838083838083808380808380838 55 
Button 4_1 off: AA B0 4E 05 08 0136 0A46 00D2 04D8 280A 481828383808380808380838380808380838380808383808380838083808083808380838380838083808083808383808380838080838083808383808380808380838 55

Button 4_2 on: AA B0 4E 05 08 0136 0A46 00DC 04EC 280A 481828383808380808380838380808380838380808383808380838083808083808380838380838083808083808383808380838080838083838083808380808383808 55 
Button 4_2 off: AA B0 4E 05 08 0140 0A46 00D2 04D8 280A 481828383828382828382838380828382838382828383828382838283808283828382838382838283808283828383828380838082838283828383808380828383828 55
Portisch commented 5 years ago

I will not implement any protocol decoding - only sniffing. You can define your protocol new protocol like here: https://github.com/Portisch/RF-Bridge-EFM8BB1/wiki/Define-new-protocol-in-RF_Protocols.h Then you can use 0xA6 and 0xA8 to receive and send rf data.