Skip to content

ProximaB/SwitchesAspDotNetCore

Repository files navigation

Switches

SwitchesClientApi
Switches-Board-Client-for-ESP

To nie jest projekt pokazowy, po prostu jeden ze starszych projektów, kod zawarty tutaj nie stanowi przykładu kodu jaki piszę obecnie.

Smart Lighting Control Systems and more!

✔️ Control your switches any device with a web browser
✔️ Create users with specyfic list of swithes or rooms that they are able to control.

Previews: image

Switches
SP-12E
image nodemcu_pins
ESP-01s
image image

TO DO

  • Dodanie obsługi webSockets przez klienta, który aktualizuje widok.
  • Dodanie ekranu logowania.
  • Basic Auth WebApi + Tabela użytkowników. Response dopasowany do użytkownika. (niekoniecznie basic auth, tylko moze zaimplementowac cos w mvc ctrl.)
  • Dodanie do switcha możliwości ustawiania SSID i PASSWORD w trybie AccesPOint.
  • Domyślne dodawanie switcha do bazy po połączeniu do Serwera.
    Switch name: [NOT_DEFINED], description[], idRoom[] * aby użytkownik mógł zedytować w cliecie.

[Sekwencja W ESP]

  1. ESP client mode. [DAFAULT] Sprawdzenie czy nie ma ssid i password zapisany w pamięci flash.
    • Button > 5s
    • Led -> 1 /1s
    • Led -> 0
  2. ESP AccesPoint mode. Po polączeniu sie do esp dostajemy dostęp do strony w której ustawiamy ssid i password naszego wifi.
    Zapis danych do pamięci !flash!.
    Button [SAVE],[GoToClientMode].
  3. Sprawdzenie, czy dany switch o id [Generowane na podstawie MAC, tymczasowo hardcoded] znajduje sie w bazie. GET switch/id ->response
    • Jeżeli nie -> dodaj switcha POST switch [WS:aktualizacja widoku po stronie clienta]
    • Jeżeli tak -> idź do 1.
  • Gdyby był jeszcze czas można pomyśleć o UDP broadcasting, Esp nasłuchiwało by i pobierało odpowiedni adres do WebApi, żeby nie musiał być zahardcodowany.

💎 If you're interested in this project feel free to contribute to development. I'm waiting for your pull request! 😊

About

Smart Lighting Control Systems and more!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages