ESPHome potrafi już zbudować oprogramowanie dla nRF52840 Dongle (PCA10059), małej przystawki USB firmy Nordic z układem nRF52840. Zmiana #19009, scalona z gałęzią rozwojową 15 października 2026, dodaje ją jako board: nrf52840dongle. Dzień później, 16 października, ukazał się ESPHome Device Builder 1.24.0, który wgrywa oprogramowanie na tę przystawkę prosto z przeglądarki, przez fabryczny program rozruchowy.

Fabryczny program rozruchowy zostaje

Pozostałe płytki nRF52 w ESPHome korzystają z programu rozruchowego Adafruit albo z MCUboot. Przystawka ma fabrycznie program rozruchowy Open DFU od Nordica i ESPHome go nie rusza. Nowa opcja bootloader: nrf rezerwuje zajmowany przez niego obszar pamięci flash, więc wgrywanie oprogramowania nigdy go nie nadpisze, a aplikacja zaczyna się pod adresem 0x1000, skąd ten program ją uruchamia.

Program rozruchowy Nordica przyjmuje tylko protokół Secure DFU. W testach autora starsze narzędzie adafruit-nrfutil nie doczekało się od niego odpowiedzi, dlatego ESPHome pakuje i wgrywa oprogramowanie narzędziem nrfutil od Nordica (nrf5sdk-tools 1.1.0). Przy pierwszej kompilacji ESPHome pobiera program uruchamiający do swojej pamięci podręcznej narzędzi i sprawdza jego rozmiar oraz sumę SHA-256 z danymi z serwera Nordica. Katalogu ~/.nrfutil użytkownika nie dotyka.

Do programu rozruchowego przejdziesz, wciskając na przystawce przycisk RESET. Jeśli w konfiguracji jest dfu: true, nie trzeba nawet tego robić. ESPHome otwiera wtedy na chwilę port szeregowy z prędkością 1200 bodów, a działające oprogramowanie samo resetuje układ przez wyprowadzenie P0.19, połączone na tej płytce z linią RESET. Przy tym programie rozruchowym ESPHome nie obsługuje aktualizacji bezprzewodowych przez mcumgr, a uart0 jest wyłączony, bo korzysta z wyprowadzeń GPIO dostępnych na krawędzi przystawki.

Wgrywanie z przeglądarki

Device Builder, czyli panel ESPHome, już wcześniej wgrywał z przeglądarki oprogramowanie na płytki z programem rozruchowym Adafruit, korzystając ze starszego protokołu DFU. Wersja 1.24.0 dodaje Secure DFU dla programu rozruchowego Nordica i każdemu urządzeniu nRF52 proponuje sposób wgrywania zgodny z jego programem rozruchowym. Urządzenia z MCUboot nie mają już opcji DFU, ale zostają im aktualizacje przez mcumgr. Jeśli otwierasz panel przez zwykłe HTTP, przeglądarka nie udostępnia Web Serial, więc panel może przekazać skompilowany pakiet do serwisu web.esphome.io, który też dostał nową metodę wgrywania. Autor sprawdził wszystkie te sposoby na przystawce 15 października.

Jest jeden haczyk. Według opisu zmiany w Device Builderze przystawka pojawi się na liście płytek w panelu dopiero wtedy, gdy Device Builder przejdzie na wydanie ESPHome zawierające zmianę #19009. Gałąź rozwojowa ESPHome ma numer 2026.11.0-dev, więc chodzi o ESPHome 2026.11.

Device Builder 1.24.0 poprawia też szyfrowane aktualizacje bezprzewodowe. Gdy Home Assistant przekazuje nowy klucz API, panel zapisuje klucz, którego urządzenie wciąż używa, jako ota: encryption: old_key:. Dzięki temu urządzenie, które wymaga szyfrowanych aktualizacji, nie odrzuci kolejnej instalacji już przy nawiązywaniu połączenia. Ta część również wymaga ESPHome 2026.11. Przy starszych wersjach panel zapisuje w dzienniku ostrzeżenie, że następna instalacja będzie wymagała wersji 2026.11 albo wgrania oprogramowania przez port szeregowy.