Wprowadzenie
Ten opis ma na celu wyjaśnienie/pokazanie jak skonfigurować edytor Visual Studio Code z dodatkiem PlatformIO i w łatwy sposób kompilować i wgrywać oprogramowanie AIS-Tasmota do urządzeń działających na układzie ESP8266.
Ten opis jest dla osób, które budują własne urządzenie oparte na ESP8266 i chcą dodać obsługę czujników czy sterowników, których nie ma w naszych domyślnych kompilacjach.
W pozostałych przypadkach nie ma potrzeby wykonywać własnej kompilacji. Ponieważ na naszej stronie udostępniamy już gotowe zbudowane i przetestowane wersje oprogramowania. Wystarczy:
- Pobrać skompilowaną wersję:
https://powiedz.co/ota/ - Wgrać do urządzenia zgodnie z instrukcją:
a) W przypadku pierwszego programowania → Ogólne: Wgrywanie oprogramowania do urządzeń IoT (AI-Speaker - Home Assistant) (dzięki @Tomasz)
b) W przypadku aktualizacji oprogramowania → Aktualizacji oprogramowania:
w naszej dokumentacji
Instalacja edytora i kodu
Pobierz i zainstaluj Visual Studio Code
Pobierz i zainstaluj zgodnie z opisem dla twojego systemu operacyjnego:
https://code.visualstudio.com/
Zainstaluj dodatek PlatformIO
W Visual Studio Code wybierz View → Extensions
i wpisz PlatformIO w polu wyszukiwania.
Wybierz oficjalne rozszerzenie PlatformIO.org PlatformIO IDE i wybierz opcję Instaluj.
Zaakceptuj, aby zainstalować zależności.
Pobierz AIS-Tasmota
Pobierz najnowszą wersję kodów AIS-Tasmota ze strony: GitHub - sviete/AIS-Tasmota: 🤖 Software for ESP8266 devices. With Web, MQTT and OTA firmware using PlatformIO i rozpakuj do wybranego folderu.
Otwórz folder ze źródłami AIS-Tasmota
W Visual Studio Code wybierz File → Open Folder i podaj lokalizację do folderu, do którego rozpakowałeś źródła:

Kompilowanie
Naciśnij ikonkę PlatformIO po lewej stronie na pasku, by zobaczyć wszystkie dostępne zadania w projekcie:
Kompilację można wykonać wybierając zadanie Build
Zmiana ustawień kompilacji
Najważniejsze ustawienia są w dwóch plikach
- platformio.ini
- my_user_config.h
W pliku platformio.ini możesz wybrać rodzaje kompilacji do wykonania, odkomentowując(usuwając znak ; na początku linijki) stosowne linijki (domyślnie kompilujemy tasmota-PL)
Dodatkowo w pliku tym możesz ustawić wersję Core/SDK, która ma być użyta w oprogramowaniu wynikowym. Domyślnie stosujemy najnowszy Arduino Core (Open Source) dla układów ESP8266 / ESP8285 w wersji 2.6.x. Dzięki temu mamy pewność, że bazujemy na najlepszej dostępnej obecnie wersji bibliotek. Jeśli chcesz/potrzebujesz, to możesz zastosować inną (starszą) wersję Arduino Core, ale może spowodować to wystąpienie problemów ze stabilnością i bezpieczeństwem urządzenia.
W pliku my_user_config.h możesz wybrać dodatkowe funkcjonalności, które mają być dostępne, odkomentowując (usuwając znaki // na początku linijki) stosowne linijki. Dodanie dodatkowych funkcjonalności (sterowników i kodu) ma wpływ na wielkość wynikowego oprogramowania.
Wgrywanie do urządzenia
W pliku platformio.ini ustaw opcje dla komunikacji po porcie szeregowym:

Podłącz urządzenie do wybranego portu, w trybie programowania - zwierając GPIO 0 z masą.
Wybierz zadanie Upload:
Monitorowanie pracy urządzenia
Po zaprogramowaniu możesz łatwo sprawdzić działanie urządzenia, obserwując jego logi, w tym celu podłącz ponownie urządzenie do wybranego portu w trybie pracy (bez zwierania GPIO 0 do masy).
Następnie wybierz z zadań opcję Monitor:
PS
Opis powstał podczas kompilowania wersji 8.1.0
Testujemy tę kompilację teraz na urządzeniach i jak wszystko będzie OK to w ciągu kilku dni udostępnimy na OTA.









Tak kabel zasilający musi być do esp więc zasilanie po kablu ethernetowym można by ogarnąć. Wolał bym wersję przewodową chociażby dlatego że na noc automatycznie wyłączam WiFi w routerze żeby nie siało…













(o ile dobrze pamiętam)


