This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| project:esp_now [2019/05/30 19:32] – [Monitoring vrata] mario | project:esp_now [2019/06/01 22:58] (current) – [ToDoo] dp | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== ESP-NOW ====== | ====== ESP-NOW ====== | ||
| - | je protokol razvijen od Espressif, koji omogućuje višestrukim uređajima međusobno komuniciranje bez korištenja Wi-Fi mreže. Protokol je sličan 2.4GHz bežičnoj povezanosti male snage koja se često koristi u bežičnim tipkovnicama i miševima. Za | + | ESP-NOW |
| - | | + | |
| U ESP-NOW-u protokolu aplikativni podaci se enkapsuliraju u specifičan okvir dobavljača, | U ESP-NOW-u protokolu aplikativni podaci se enkapsuliraju u specifičan okvir dobavljača, | ||
| + | |||
| ===== Reference o protokolu : ===== | ===== Reference o protokolu : ===== | ||
| | | ||
| - | ---- | + | |
| ===== Monitoring vrata ===== | ===== Monitoring vrata ===== | ||
| koristeći dva ESP32 Lolin boarda napravljen je mali monitoring vrata, jedan ESP na pinu 23 monitorira stanje reed relay-a kojeg okida magnet te ga proslijeđuje na slave uređaj. kada magnet nije prisutan (otvoreni kontakti) stanje pina 23 se preslikava na slave uređaju - svijetli crveni LED, te dvaput bipne, ukoliko uređaji nisu povezani ili se vrši ometanje signala slave uređaj daje niski dugi ton te zelena LED za link ne svijetli. Na master uređaju također zelena LED svijetli ukoliko nakon poslanog paketa postoji ACK informacija. | koristeći dva ESP32 Lolin boarda napravljen je mali monitoring vrata, jedan ESP na pinu 23 monitorira stanje reed relay-a kojeg okida magnet te ga proslijeđuje na slave uređaj. kada magnet nije prisutan (otvoreni kontakti) stanje pina 23 se preslikava na slave uređaju - svijetli crveni LED, te dvaput bipne, ukoliko uređaji nisu povezani ili se vrši ometanje signala slave uređaj daje niski dugi ton te zelena LED za link ne svijetli. Na master uređaju također zelena LED svijetli ukoliko nakon poslanog paketa postoji ACK informacija. | ||
| ==== Source Code ==== | ==== Source Code ==== | ||
| + | |||
| === Door_monitor === | === Door_monitor === | ||
| - | /* ESP2_Now_Door_Alarm | + | Master čita pin, i šalje(emitira) pročitanu vrijednost. (u mom slučaju PIN 23) |
| - | * ESP-Now, | + | Slaves mijenja izlaz broadcastanog pina-(ova) kako bi odgovarao vrijednostima dobivenim od Mastera. |
| - | * Slično protokolu male snage koji se koristi na bežičnim tipkovnicama/ | + | jedan ESP32, koji je konfiguriran kao Master na event broadcasta informaciju sa MAC Adresama |
| - | ·* Potrebno je početno uparivanje. Nakon uparivanja veza je trajna. | + | što znači da svi u mreži primaju podatke u isto vrijeme. |
| - | | + | praktički nema Boot-a, jer pri uključivanju i isključivanju ESP-a, operacija se nastavlja odmah. |
| - | * Slaves mijenja izlaz broadcastanog pina-(ova) kako bi odgovarao vrijednostima dobivenim od Mastera. | + | |
| - | * jedan ESP32, koji je konfiguriran kao Master na event broadcasta informaciju sa MAC Adresama | + | <file c Door_monitor.ino> |
| - | * što znači da svi u mreži primaju podatke u isto vrijeme. | + | |
| - | * praktički nema Boot-a, jer pri uključivanju i isključivanju ESP-a, operacija se nastavlja odmah. | + | |
| - | */ | + | |
| #include < | #include < | ||
| #include < | #include < | ||
| - | //Pinovi koje čitamo i šaljemo vrijednost prema slave-ovima | + | //Pinovi koje čitamo i šaljemo vrijednost prema slave-ovima |
| #define PIN 23 | #define PIN 23 | ||
| - | |||
| //definiraj kanal za koneklciju | //definiraj kanal za koneklciju | ||
| #define CHANNEL 1 | #define CHANNEL 1 | ||
| - | // ako se kompajlira Slave - zakomentirati | + | // ako se kompajlira Slave - zakomentirati |
| // za Master ostaviti odkomentirano | // za Master ostaviti odkomentirano | ||
| - | //#define MASTER | + | #define MASTER |
| esp_now_peer_info_t peer; //struktura Info o slijedećem peer-u.. | esp_now_peer_info_t peer; //struktura Info o slijedećem peer-u.. | ||
| Line 76: | Line 75: | ||
| } | } | ||
| } | } | ||
| + | </ | ||
| === Master === | === Master === | ||
| + | <file c esp_now_master.ino> | ||
| #define LED 14 | #define LED 14 | ||
| Line 109: | Line 109: | ||
| } | } | ||
| #endif | #endif | ||
| + | </ | ||
| === Slave === | === Slave === | ||
| + | <file c esp_now_slave.ino> | ||
| #include < | #include < | ||
| Line 164: | Line 166: | ||
| void Alarm_1() | void Alarm_1() | ||
| - | { | + | {Door_monitor |
| tone(BUZZER_PIN, | tone(BUZZER_PIN, | ||
| noTone(BUZZER_PIN, | noTone(BUZZER_PIN, | ||
| Line 201: | Line 203: | ||
| } | } | ||
| #endif | #endif | ||
| + | |||
| + | </ | ||
| + | ==== ToDo ==== | ||
| + | u planu: | ||
| + | * u potpunosti aktivirati enkripciju | ||
| + | * zamjeniti master-slave pozicije i dodati proceduru registracije i uparivanja slave-ova | ||
| + | |||
| + | ====== Slike ====== | ||
| + | {{: | ||
| + | {{: | ||
| + | |||