Skocz do zawartości

Monitory HMI w użytku domowym.


Pomocna odpowiedź

15 minut temu, SOYER napisał:

Nauczyłem się dodawać fonty i polskie znaki do eez studio.

 

IMG_3057.JPG

IMG_3055.JPG

IMG_3056.JPG

Wystarczy użyć czcionki z polskimi znakami czy coś więcej ?

Pobierasz interesujący Cię font z google fonts.

Następnie w eez studio klikasz "fonts" po prawej, "+" by dodać font i:

nadajesz nazwę najlepiej z rozmiarem w nazwie, bo dla każdego rozmiaru trzeba dodać nowy font,

podajesz ścieżkę do pobranego i wypakowanego pliku z fontem, jest tak kilka plików w folderze, popatrz z jakim rozszerzeniem wkleiłem,

ustawiasz rozmiar fontu,

w ostatniej linijce dodajesz jakie znaki niestandardowe chcesz użyć.

Wszystko.

Znaki działają oczywiście i z poziomu eez studio i z poziomu "ręcznego" wpisania w kodzie, np. w reakcji na event.

fonts.png

  • Pomogłeś! 1

Co do buzeera to doszedłem do tego, że jest sterowany jednak pinem 5. Jeśli sterujemy tym pinem(przez expander) przed wywołaniem

panel->begin(); 

to działa, jeśli po, to wywala błędy o których pisałem.

Być może rozwiązanie ma też coś wspólnego z 

  lvgl_port_lock(-1);
  lvgl_port_unlock();

ale nie wiem co to mutexy i z czym to się je, jedynie spróbowałem tego:

  lvgl_port_lock(-1);
buzzer(100);
  lvgl_port_unlock();

nie zadziałało...

Jeszcze jedno pytanie, podświetlenie panelu jest sterowane przez expander przez digitalWrite(2, HIGH), czy da się sterować jasnością przez analogWrite()? Wiem, że mogę spróbować i sprawdzić, ale nie chcę czegoś uszkodzić przez niewiedzę.

(edytowany)

Cześć, dzisiaj dołożyłem aktualizację oprogramowania via OTA. Żeby mógł to zrobić każdy, nie tylko arduinowiec z zainstalowanym arduino IDE, zrobiłem to przez http.

Dla zainteresowanych, najpierw:
 

#include <NetworkClient.h>
#include <WebServer.h>
#include <ESPmDNS.h>
#include <HTTPUpdateServer.h>
const char *host = "esp32";
boolean updating =0;
WebServer httpServer(80);
HTTPUpdateServer httpUpdater;

potem w loop:
 

 if(updating){
    httpServer.handleClient();
  }

Wreszcie w funkcji wywoływanej przez przycisk na ekranie:
 

if (MDNS.begin(host)) {
      Serial.println("mDNS responder started");
     }
    httpUpdater.setup(&httpServer);
    httpServer.begin();
    MDNS.addService("http", "tcp", 80);
    updating=1;

Efekt:

Update via serwer
https://youtube.com/shorts/HmFcqzkCiMI

 

Edytowano przez SOYER
2 godziny temu, _LM_ napisał:

lvgl potrafi generować qrkody to zamiast komunikatu "otwórz link w przeglądarce"

Ciężko będzie odczytać ten kod laptopem, ale dzięki za cynk.

Poprawiłem jeszcze przewijanie, żeby to miało ręce i nogi.

Działa u Ciebie ten buzzer, w sensie używasz w czasie działania ekranu? 

11 minut temu, SOYER napisał:

Ciężko będzie odczytać ten kod laptopem,

Telefonem da się zrobić upgrade, tabletem również.

12 minut temu, SOYER napisał:

Działa u Ciebie ten buzzer

Działa kiedy jest taka potrzeba 

12 minut temu, _LM_ napisał:

Telefonem da się zrobić upgrade, tabletem również.

Oczywiście, wystarczy plik .bin i można wgrywać.

13 minut temu, _LM_ napisał:

Działa kiedy jest taka potrzeba 

Co mam zrobić żeby działał kiedy ja będę miał potrzebę?

10 minut temu, _LM_ napisał:

Ten temat wykracza poza ramy tego nędznego "poradnika" 

Temat wbudowanego fabrycznie buzzera w moduł, wykracza poza ramy tematu o tym module?

Dnia 8.12.2024 o 14:49, _LM_ napisał:

buzzer który wkurza osoby początkujące ponieważ trzeba go wyłączyć programowo 😄 😛

to akurat łatwe, 

expander->digitalWrite(5, LOW);

i już buzzer jest cicho, ale jak go zmusić do pracy jak śmiga lvgl?

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...