Repository navigation
BambuHelper WS43B v4.1.0 — wersja stabilna dla Waveshare ESP32-S3-Touch-LCD-4.3B.
v4.1.0 to kod v4.1.0-beta.19 ze zmienionym wyłącznie numerem wersji. Poniżej pełne podsumowanie zmian i testów względem v4.0.0 (Bety 1–19).
Zmiany względem v4.0.0
Noc, zmrok i jasność
- Godziny nocy z minutami — na panelu siatka godzin, a potem minut co 5 min; w WebUI dowolna minuta (pole czasu). Dotychczasowe ustawienia w pełnych godzinach działają bez zmian, starsze kopie ustawień importują się jako pełne godziny.
- Zmrok zamiast wcześniejszej nocy — opcja słoneczna nie przesuwa już początku nocy. Od zachodu słońca do początku nocy (i rano od końca nocy do wschodu) ekran po nocnym czasie bez dotyku przygasa do 50% i przechodzi do wygaszacza — także podczas druku. Noc (wyłączony ekran albo zegar 30%) działa tylko w ustawionych godzinach.
- Płynne przygaszanie (ok. 1,2 s); dotyk od razu przywraca pełną jasność.
Wygaszacz i zegar
- Animacja zmiany godziny jak kartka kalendarza — zmieniają się tylko inne cyfry, ok. 1,2 s.
- Przy zmianie minuty odświeżany jest tylko pas z cyframi, a nie cały ekran.
- Ekran startowy pokazuje prawdziwą wersję firmware zamiast stałego „v0.9”.
Menu ustawień na panelu
- Pogoda i noc → Noc: harmonogram, początek i koniec nocy (siatka lub − / +), tryb nocny (ekran wyłączony / zegar 30%), nocny czas bez dotyku.
- Wygląd: motyw, tryb ekranu i wentylatory w jednym miejscu.
- Język i WebUI (dawniej „Język i dane”): język, kod QR do WebUI oraz informacje o panelu — wersja, adres IP, siła Wi-Fi.
- Zegar i ekran: przełącznik Pong na zegarze.
WebUI
- Nowy układ sekcji „Ekran”: osobne karty (tryb, motyw, wygaszanie za dnia, podświetlenie nocą, pogoda i zmrok), powiadomienie po każdym zapisie. Teksty PL / EN / DE.
- Ukryte ustawienia, których ekran 4.3B nie używa (zachowują zapisane wartości).
Wydajność i pamięć
- Szybsze przesyłanie obrazu: kopiowany jest tylko zmieniony prostokąt, oczekiwanie na ekran odbywa się w tle, przyciemnianie liczone tablicami (wynik identyczny co do bitu). Zmierzone na panelu: klatka wygaszacza ok. 34–66 ms zamiast 168 ms, animacja zegara ok. 14 klatek/s zamiast ok. 4.
- Firmware mniejszy o 182 KB (91% slotu zamiast 97%) — strony WebUI są przechowywane skompresowane. Gdyby rozpakowanie się nie udało, panel pokazuje awaryjną stronę z wgrywaniem firmware i przełączeniem slotu.
- Więcej wolnej pamięci wewnętrznej — patrz „Zapas pamięci”.
Diagnoza Wi-Fi (z oryginalnego projektu)
- Gdy panel nie połączy się z zapisaną siecią i przejdzie w tryb konfiguracji, ekran konfiguracji pokazuje przyczynę: sieci nie znaleziono, inna wielkość liter w nazwie, za słaby sygnał, za krótkie lub błędne hasło, sieć firmowa (Enterprise), brak adresu IP od routera.
- Strona konfiguracji w telefonie wyjaśnia przyczynę i podpowiada, co zrobić (PL / EN / DE).
- Przeniesione z Keralots/BambuHelper (
20cefc9,636f10d) i dopasowane do ekranu 4.3B; rejestr synchronizacji:docs/UPSTREAM.md.
Zapas pamięci
- Bufory szyfrowanego połączenia z drukarką w PSRAM — zwalnia ok. 46 KB szybkiej pamięci wewnętrznej (wolne w spoczynku ok. 101 KB zamiast ok. 55 KB).
- Połączenie z drukarką czeka na spokojny moment (1,5 s bez zapytań WebUI i wystarczająco wolnej pamięci, najwyżej 20 s), a WebUI odpowiada „spróbuj za chwilę” tylko przy krytycznym braku pamięci podczas łączenia (wgrywanie firmware nigdy).
- Zmierzone na panelu: po aktualizacji, gdy przeglądarka przeładowuje WebUI w trakcie łączenia z drukarką, minimum wolnej pamięci wewnętrznej ok. 62 KB zamiast ok. 3 KB; przy ciągłym, równoległym obciążeniu WebUI 57 KB zamiast 0,5 KB. Połączenie z drukarką: 109/109 poprawnych raportów w 2 min, bez ponownych połączeń.
Poprawki
- Zegar w wygaszaczu nie pokazuje już na chwilę „--:--” przy zmianie minuty.
- Wygaszacz wieczorem działa także podczas druku.
Diagnostyka
/monitor/status: czas kopiowania klatki, czas oczekiwania na ekran, liczba kopiowanych wierszy oraz liczba klatek i czas ostatniej animacji zegara. Same liczniki, bez danych osobowych.
Bez zmian względem v4.0.0
- Grafiki ekranu (szpula, dysza, stół, komora), konfiguracja sprzętu (SDK cache64_xip, zegar RGB 12 MHz), kanały aktualizacji Stable / Beta.
Testy
Na komputerze — 223 testy (1 opcjonalny pominięty), wszystkie przechodzą
Nowe względem v4.0.0:
test_night_minutes— okno nocy z minutami na prawdziwym kodzie (także przez północ), zapis, eksport i import, pola czasu w WebUI.test_dusk_dim— poziomy jasności 100 / 50 / 30%, kroki płynnego przygaszania, noc niezależna od danych słonecznych.test_clock_flip— czas, ruch i odstęp cyfr animacji, liczba klatek, przejście licznika czasu przez zero.test_dim_table— nowe przyciemnianie identyczne ze starym dla wszystkich 65 536 kolorów.test_partial_rects— 400 losowych prostokątów w dwóch buforach ze zmianami jasności: każdy piksel aktualny, wyświetlany bufor nigdy nie zapisywany.test_page_compression— bezstratna kompresja stron, zachowane bloki#if, dekompresor (także uszkodzone dane).test_ws43b_unused_settings— ukryte ustawienia WebUI nie są czytane przez ekran 4.3B i nadal są wysyłane.- Diagnoza Wi-Fi: teksty strony konfiguracji tłumaczone przez katalog PL/DE (kontrola kompletności katalogów).
test_connect_gate— połączenie z drukarką czeka na spokojny WebUI i wolną pamięć (najwyżej 20 s); odciążanie WebUI tylko przy krytycznym braku pamięci, nigdy dla wgrywania firmware.
Rozszerzone: interakcja z menu na panelu (ekran Noc, siatki godzin i minut, wygaszacz z nowych ekranów, zmrok podczas druku), renderer wygaszacza (animacja bez pełnego przerysowania, klatki co 40 ms mimo danych MQTT, zegar chwilowo nieczytelny), endpoint statusu, WebUI (niemiecki, ukryte pola).
Build
- Arduino-ESP32 3.3.11, ESP-IDF 5.5.5, SDK cache64_xip, zegar RGB 12 MHz; kontrole XIP, mapy linkera i I2C przeszły. Szczegóły w
BUILD-INFO.json.
Na panelu (testy właściciela projektu)
- Potwierdzone: przyciemnianie o zmroku i wygaszacz, noc z minutami i siatki na panelu, menu na panelu, WebUI ładuje się normalnie (ok. 0,35 s), zapisywanie ustawień, brak nowych artefaktów po zmianie przesyłania obrazu, zapas pamięci (testy obciążeniowe WebUI po restarcie i przy połączeniu z drukarką).
- Zmierzone: czasy klatek i animacji zegara (wartości powyżej).
- Nie potwierdzone jeszcze: długotrwała praca (w tym połączenie z drukarką z buforami TLS w PSRAM) oraz ekran diagnozy Wi-Fi na sprzęcie (pojawia się tylko po nieudanym połączeniu z siecią). Plik z numerem v4.1.0 nie był osobno testowany na sprzęcie przed publikacją.
Znane problemy
- Artefakty obrazu podczas długiego druku (zaobserwowane m.in. na Becie 1) — bufor obrazu w pamięci jest poprawny; przyczyna w trakcie analizy, porównanie z v4.0.0 w toku.
- Wybudzanie dotykiem: #1.
Instalacja
W WebUI panelu wybierz Stable → Sprawdź aktualizacje i zainstaluj v4.1.0 (kanał Beta również ją zaoferuje jako nowszą od Bety 19). Ręcznie: prześlij BambuHelper-ws_lcd_43b-v4.1.0-ota.bin na stronie aktualizacji firmware (aplikacja OTA dla istniejącej instalacji WS43B z dwoma slotami po 3 MiB; nie do pierwszej instalacji USB).
Po aktualizacji z v4.0.0 sprawdź w sekcji Ekran godziny nocy i opcję „Przyciemniaj od zachodu do wschodu słońca” — zmienił się sposób jej działania (patrz „Noc, zmrok i jasność”).
Powrót: prześlij ręcznie plik OTA z v4.0.0 (pominie minuty nocy).
Pliki
BambuHelper-ws_lcd_43b-v4.1.0-ota.bin— aplikacja OTA.BUILD-INFO.json— pochodzenie, konfiguracja i wyniki kontroli.SHA256SUMS— sumy kontrolne.
Gałąź: waveshare-43b (z ws43b/layout-settings, PR #5), commit źródeł: d6795d671be862ffae71de69a0d810b901453412.
Rozmiar aplikacji: 2890608 B, zapas do slotu: 255120 B. SHA-256: 2263c83fb1942fba1f19d8cc27c108a29e01a0acbec0ebbc611a97a4b0348c5a.