Turinys:

Atvirkštinės inžinerijos „Ritter 8341C“protokolas, skirtas ESP3866: 5 žingsniai
Atvirkštinės inžinerijos „Ritter 8341C“protokolas, skirtas ESP3866: 5 žingsniai

Video: Atvirkštinės inžinerijos „Ritter 8341C“protokolas, skirtas ESP3866: 5 žingsniai

Video: Atvirkštinės inžinerijos „Ritter 8341C“protokolas, skirtas ESP3866: 5 žingsniai
Video: Что такое реверс инжиниринг? Как выполняется контроль геометрии с помощью 3D сканирования #shorts 2024, Liepa
Anonim
Atvirkštinės inžinerijos „Ritter 8341C“protokolas, skirtas ESP3866
Atvirkštinės inžinerijos „Ritter 8341C“protokolas, skirtas ESP3866

Sveiki visi.

Savo mažų namų automatizavimui naudoju pirminius 433 MHz valdomus lizdus. Turiu 3 komplektus su DIP jungikliais, kad būtų galima koreguoti adresą. Šie veikė gerai. Tačiau prieš kurį laiką (vienerius ar dvejus metus) iš „ritter“įsigijau lizdų komplektą. Anksčiau neskaičiau aprašymo, o išpakavęs supratau, kad nėra DIP jungiklių, o taip pat „rcswitch“biblioteka ESP „nekalbėjo“teisingo protokolo. Taigi aš juos naudoju tik su nuotolinio valdymo pultu.

Dabar, per savo atostogas, pradedu tai keisti … čia noriu dokumentuoti šį projektą. Tikiuosi, tai padės kam nors kitam, turinčiam tą pačią ar panašią problemą.

1 žingsnis: įrašykite signalus

Įrašyti signalus
Įrašyti signalus
Įrašyti signalus
Įrašyti signalus

Norėdami įrašyti signalus, prijungiau 433 MHz imtuvo modulį prie ESP8266 (tik maitinimo šaltinis turi būti gerai) ir prijungiau „Hantek 6022“osciloskopą prie duomenų kaiščio.

Tada paspaudžiau nuotolinio valdymo pulto mygtuką ir užfiksavau signalinį traukinį.

2 žingsnis: pulso/uždelsimo matavimas

Pulso/uždelsimo matavimas
Pulso/uždelsimo matavimas

Įrašęs signalą, ieškojau vieno sprogimo pradžios ir pabaigos. Paprastai nuotolinio valdymo pultas iš lizdo siunčia 3 kartus tą pačią seriją arba kartais, kol paspaudžiamas mygtukas.

Dabar aš išmatavau pulso/uždelsimo laikus ir užrašiau. Tai pakartojau visiems šešiems signaliniams traukiniams (3 x įjungta + 3 x išjungta).

3 žingsnis: palyginkite 1, 2, 3 lizdo signalus ir raskite skirtumą

Palyginkite 1, 2, 3 lizdo signalus ir raskite skirtumą
Palyginkite 1, 2, 3 lizdo signalus ir raskite skirtumą

Po tam tikrų matavimų palyginau HIGH ir LOW's + signalo trukmę. Pakeitimai buvo skirtingos komandos. Kiti signalai buvo kažkas panašaus į protokolo/gamintojo kodus. Be to, kiekvienas sprogimas turėjo pradžios ir pabaigos seką.

Signalas susideda iš „START + NOT CHANGING SEQUENCE + ON/OFF COMMAND + DEVICE ADDRESS + END“

4 žingsnis: parašykite testavimo kodą

Parašykite testavimo kodą
Parašykite testavimo kodą

Po kurio laiko turėjau visą reikiamą (teorinę) informaciją. Taigi sukūriau trumpą ESP8266 ir 433 MHz siųstuvo bandomąjį eskizą. Cikle visi trys lizdai įjungiami/išjungiami su vėlavimu tarp komandų.

5 veiksmas: išbandykite kodą naudodami pagrindinį siuntėją

Išbandykite kodą naudodami pagrindinį siuntėją
Išbandykite kodą naudodami pagrindinį siuntėją
Išbandykite kodą naudodami pagrindinį siuntėją
Išbandykite kodą naudodami pagrindinį siuntėją

Aš prijungiau bateriją prie ESP ir nuėjau į kambarį. Veikė 5 iš 6 komandų, o komandų seka ištaisius rašymo klaidą, visi kodai veikė.

Na, dabar galiu pakeisti visus 12 rc lizdų (9 su DIP adresu ir 3 naujus ritterius) su savo ESP8266 RC valdikliu.

Demo kodą galite rasti „GitHub“

Rekomenduojamas: