Gdy 22 października do ESPHome trafił komponent vnc, pierwsza wersja miała dwa wyraźne braki: służyła tylko do podglądu i łączyła się wyłącznie z serwerami VNC bez hasła. W gałęzi rozwojowej oba braki są już uzupełnione. Zmiany Petara Petrova dodające akcje wejściowe i przekazywanie dotyku scalono 26 października 2026 o 23:48 czasu polskiego, a obsługę hasła 28 października o 5:14. W żadnej z tych zmian nie podano wersji, ale wcześniejsze prace nad VNC mają trafić do ESPHome 2026.11.

Dotknięcia i przeciągnięcia na zdalnym ekranie

Nowa opcja touchscreen_id łączy klienta VNC z ekranem dotykowym zdefiniowanym w konfiguracji. Dotknięcia trafiają do serwera VNC jako kliknięcia i przeciągnięcia lewym przyciskiem. Margines 8 pikseli sprawia, że krótkie dotknięcie nie zaznacza tekstu w przeglądarce.

Przez dwie sekundy po każdej interakcji zmiany pojawiają się na ekranie od razu, bez czekania na ustabilizowanie obrazu. Zwykle odświeżenie następuje dopiero po ustaniu zmian, co oszczędza ekran e-papierowy, ale po dotknięciu ważniejsza jest szybka reakcja. OHF Daily opisał to 27 października jako ekrany dotykowe, które „sterują zdalnym pulpitem w przeglądarce”.

Razem z tym pojawiają się trzy akcje do automatyzacji. vnc.send_pointer przesuwa kursor i może naciskać przyciski, także kółko przewijania. vnc.send_key wysyła klawisze o nazwach takich jak Return czy Page_Down. ESPHome zamienia je na kody X11 już przy kompilacji, więc urządzenie nie przechowuje żadnej tabeli. vnc.type_text wpisuje tekst i obsługuje UTF-8. Fizyczny przycisk podłączony do GPIO może więc przewijać pulpit albo przełączać karty.

Hasło, ale ostrożnie

Druga zmiana dodaje opcję password. Uwierzytelnianie VNC korzysta z DES, więc autor napisał małą implementację samego szyfrowania DES, zajmującą około 1,2 KB pamięci flash. Kompiluje się ją tylko wtedy, gdy hasło jest ustawione. Klucz jest przygotowywany przy kompilacji i zapisywany w pamięci flash.

Ponawianie połączeń celowo jest ostrożne. TightVNC blokuje wszystkich użytkowników po pięciu nieudanych logowaniach, dlatego po błędnym haśle klient nie ponawia połączenia i ustawia stan błędu. Jeśli serwer zerwie połączenie bez odpowiedzi na hasło, kolejna próba nastąpi po 60 sekundach i będzie ostatnią. Nowe akcje vnc.connect i vnc.disconnect służą do ponownego połączenia po poprawieniu hasła albo do zamknięcia sesji przed głębokim uśpieniem.

Co się nie zmienia

Hasło chroni serwer przed przypadkowym dostępem, ale nie szyfruje obrazu ani poleceń. W dokumentacji od początku jest ostrzeżenie, że ruch VNC nie jest szyfrowany i powinien zostać w zaufanej sieci. Teraz dotyczy to również naciśnięć klawiszy. Dokumentację hasła już scalono, a opisu akcji wejściowych 28 października jeszcze nie scalono.