Zamierzam napisać firmware do przełącznika Sonoff, który wyeliminuje bolączki jak:
- konieczność używania oryginalnego, który wymaga swojej dedykowanej aplikacji mobilnej
- aktualizacja firmware przez sieć
- oraz wiele innych
W tym wątku będę zbierał sugestie co do funkcjonalności, jak również publikował aktualny status.
Stan na: 11.12.2016
- Przełącznik łączy się z siecią WiFI
- Przełącznik łączy się z MQTT Brokerem
- Przekaźnik jest kontrolowany przez MQTT oraz przycisk w przełączniku Sonoff
- Przełącznik wysyła żądanie o konfigurację
- jest zaimplementowana wartość domyślna przekaźnika
- Jest obsługa diody LED
- Przełącznik wysyła status przekaźnika przy każdej zmianie do MQTT brokera
Stan: 14.12.2016
- dodany webserver do konfigurowania przełącznika przez przeglądarkę
Na razie tylko się uruchamia główna strona, która daje możliwość prostej nawigacji.
Na ten moment planuje dwie możliwości, jakie będzie można realizować przez przeglądarkę:
- konfigurowanie WiFi, MQTT Brokera
- aktualizację firmware
Stan: 15.12.2016
- stworzony formularz do konfiguracji przełącznika przez przeglądarkę
- dodana klasa do manipulacji pamięcią EEPROM
- metody do zapisywanie konfiguracji WiFI dodane
Stan: 18.12.2016: aktualną wersję jest gotowa do wgrania do sonoff, ale nie jest kompletna. To bardzo wczesna wersja beta. Co jest zaimplementowane:
- kontrola przekaźnika przez MQTT
- kontrola przekaźnika przez przycisk wbudowany w Sonoff
- przekaźnika można ręcznie sterować, nawet gdy nie ma podłączenia do WiFi
- ustawianie sonoff w tryb konfiguracji lub normalnie działającego przełącznika (trzeba wciśnąć przycisk na 3-4sek)
- przy uruchamianiu: sonoff odpytuje MQTT Broker o domyśłne wartości dla
- przełącznika: on/off
- interwału odczytu czujnika temperatury - prawdopodobnie zostanie usunięte z wersji ostatecznej
- wartośc o jaką powina zostac skorygowana temperatura - prawdopodobnie zostanie usunięte z wersji ostatecznej
- konfigurowanie sonoff przez przeglądarkę. Aktualnie można przez przeglądarkę ustawić
- połączenie WiFi
- połączenie MQTT
- ustawić, jak często ma być odczytywana temperatur z czujnika ds18b20.
- temat MQTT
- Dodatkowo można wykonać :
- reboot urządzenia
- przywrócić wartości domyślne
Wciąż do zaimplementowania:
- aktualizacja firmware przez przeglądarkę
- automatyczna aktualizacja firmware przez przeglądarkę
- detekcja czujnika temperatury
Stan: 01.01.2017
- dodana możliwość konfigurowania pierwszego członu tematu MQTT
- wartość przekaźnika jest zapisywana w EEPROM + odczytywanie tej wartości podczas startu Sonoff i ustawienie przekaźnika na ten stan - będę rezygnował z ustawiania domyślnej wartości przez MQTT
- dodane ustawianie domyślnych wartości podczas pierwszego uruchamiania przełącznika
Zabieram się za aktualizację firmware przez przeglądarkę
Stan: 07.01.2107
- aktualizacja oprogramowanie przez przeglądarkę zrobiona
- dopieszczony user interface panelu do konfiguracji
- konfiguracja przez przeglądarka zrobiona
- obsługa przycisku zrobiona
Pozostało:
- opcjonalna obsługa termometru
W repozytorium Github dostępna jest firmware binarny do wgrania.
Stan: 08.01.2017
- Wszystkie funkcjonalności planowane dla pierwszej wersji zostały zaimplementowane
Pozostało
- testowanie
- podłączyłem 3 sztuki u siebie w domu i będą testowane na bieżąco
Stan:09.01.2017
- Pierwsza wersja gotowa
- Testuję 10szt w warunkach rzeczywistych
Chętnych zapraszam do zgłaszania problemów, bądź nowych funkcjonalności
Pierwsza wersja została zakończona tym samym zamykam wątek na tym forum.
Dokumentacja oprogramowania wraz z instrukcją instalacji dostępna jest pod tym adresem.