Ulanzi TC001 Smart Pixel Clock, alternatywne firmware

Nie uwielbiam linkować do sklepów, ale ta firma (specjalizująca się w sprzęcie dla jutuberów), to typowy przykład chińskiego biznesu - nie ma oddzielnego działu technicznego i nawet oficjalne firmware jest na stronie z ofertą…

ciekawostka jest następująca - oficjalne firmware emuluje Awtrix (częściowo i nie do końca udanie, ale jednak), mimo wszystko zawiera ono sporo typowo chińskich przypadłości - np. obowiązkowe chińskie serwisy społecznościowe, no generalnie nie będę opisywał szczegółów, kto go kupi ten sam zdecyduje, czy woli mieć chiński soft z chińską chmurą czy cokolwiek open-source.

Kupiłem go dość dawno za cenę (w przeliczeniu) w okolicach 250zł (z tego co widzę kupując w sklepie producenta, jakkolwiek nie polskim, można zbić cenę do ok 200zł przy zakupie 3 szt.), jeśli się dobrze poszuka to chyba można go nadal znaleźć w takiej cenie na Ali (uwaga, pojawiły się podróbki, ale nie przejmowałbym się tym zbytnio - podobno główna różnica to inna/inaczej podłączona matryca modułów LED RGB, czyli wszystko do opanowania póki na pokładzie jest ESP32).

Konstrukcyjnie sprzęt jest nieco zwalony… dwie z kilku podstawowych funkcji to pomiary temperatury i wilgotności wewnątrz urządzenia - no sorry to jest całkowicie pozbawione sensu (o ile stosując jakiś offset można doprowadzić do wskazań temperatury w miarę zgodnych z temperaturą otoczenia, to pomysłu jak poprawić wskazania wilgotności zupełnie nie mam, no ale te funkcje można wyłączyć i po prostu wyświetlać coś innego).
Sensor oświetlenia działa rozsądnie, na jakość wyświetlacza po pół roku pracy urządzenia nie narzekam. Sens wbudowania akumulatora jest dość wątpliwy (póki jest sprawny, to nie widzę problemu, ale co będzie gdy się mu skończy żywot? - w normalnych warunkach jest non-stop ładowany do pełna).


Przejdźmy do sedna: Awtrix działa w układzie klient-serwer, klientem jest oryginalna konstrukcja zegarka czy może raczej wyświetlacza - dawniej w postaci jedynie DIY na bazie ESP8266, a serwer (który jak dotąd nie jest projektem otwarto-źródłowym) jest po prostu oprogramowaniem uruchomionym na oddzielnym sprzęcie.

No, ale mamy przecież nasze instalacje HA (do instalacji Dodatku wymagana dowolna wersja z Supervisorem, więc i każda instalacja na bazie HAOS, a zaawansowani z innymi instalacjami sobie pewnie poradzą inaczej na bazie oficjalnego projektu). Dodajemy więc w sklepie repozytorium z (częściowo)nieoficjalnym serwerem Awtrix

konfigurujemy (jest dostępne częściowe spolszczenie)


i mamy gotowca zdarnego do współpracy z zegarkiem Ulanzi na jego fabrycznym sofcie (no sorry jest to chyba raczej banalne, więc każdy da radę, a ja już nie przygotuję niczego więcej, bo to rozwiązanie u mnie już nie istnieje, o czym dalej) posiadacze dawnych kont premium Awtrix’a pewnie mogą z nich nadal korzystać (to była forma finansowania tamtego projektu, niestety zanim się zebrałem by odpalić konstrukcję na bazie Awtrix projekt się zwinął i nie miałem okazji wypróbowania “premium”).


Oryginalny projekt Awtrix, gdzie można było kupić PCB i podzespoły do budowy wyświetlaczy DIY został zamknięty, ale… autor go nie olał w 100% (choć rozwój został raczej zakończony, sklep nie jest zamknięty, ale towaru brak itd.)

Jakkolwiek UWAGA - jest nowa inna odsłona projektu pod nazwą Awtrix Light, tym razem można go wykorzystać jako upgrade dla istniejących konstrukcji Awtrix 2.0 (to wymaga wymiany płytki MCU na taką z ESP32) lub i tu lecimy do sedna - można firmware Awtrix Light wgrać do Ulanzi TC001 (i jego podróbek)

więcej na githubie

Tym razem formą finansowania projektu jest sprzedaż aplikacji smartfonowych (do kupna zachęcam, jak zazwyczaj, jeśli zachęcam to i kupuję, inne metody wsparcia to sponsorowanie bezpośrednio na github lub przez Paypal), sama apka wiele nie oferuje, ale samo firmware Awtrix Light jest fantastyczne, niżej parę próbek co można wyświetlać (a nie poświęciłem temu zbyt wiele czasu, można sporo więcej jeśli się poświęci trochę więcej czasu).

Wszystko jest w dokumentacji - integrujemy z HA za pomocą MQTT, istnieją gotowe szablony automatyzacji HA, są gotowce dla NR i paru innych rozwiązań
https://flows.blueforcer.de/

A tu parę przykładów jak to może wyglądać (możliwość zgrania ekranu do GIFów jest jedną z możliwości firmware), 1 to możliwości tego firmware “z pudełka” (tj. nawet bez integrowania z niczym), a obrazki 2, 3 i 4 ilustrują integrację z HA i kilka podlinkowanych automatyzacji. GIFy niestety nie ilustrują zmian jasności - czwarty to przejście w tryb nocny, tu w rzeczywistości oprócz koloru czerwonego jest ustawiana też minimalna jasność (by nie przeszkadzał w spaniu czy generalnie nie drażnił w nocy).

awtrix1

awtrix5

awtrix6

awtrix8_przejście w tryb nocny

Tak wygląda ekran główny aplikacji

a tak strona urządzenia w HA po zintegrowaniu przez MQTT



Inna alternatywa, to ESPHome - wymaga naprawdę sporo roboty, ale można sobie stworzyć coś jeszcze bardziej spersonalizowanego

2 Likes

“Podobny” efekt można osiągnąć i tak:

O szczegóły proszę pytać @bartik22.

1 Like

Wiem, ale ten gadżet (obojętnie czy Ulanzi czy DIY na bazie Awtrix Light) dysponuje matrycą RGB (układy WS2812), więc efekciarstwo jest “z grubej rury” (popatrz na wizual z prognozą pogody - tam temperatura prognozowana na 12h jest wyświetlona jako kolorowy pasek, te GIFy są ruchome, trzeba w niektórych przeglądarkach kliknąć w play by je zobaczyć w pełnej krasie, oczywiście włączenie wszelkich efekciarskich przerywników jest rozpraszające, ale chciałem zobaczyć możliwości softu), a rozwiązanie oparte na matrycy sterowanej MAX7219 jest monochromatyczne (swoją drogą mam i taką zabawkę z czerwonym wyświetlaczem, przy kupnie trzeba zdecydować jaki ma kolor - w planie jako wyświetlacz do inteligentnego lustra na bazie ESPHome).

Jako mikro-podsumowanie - czarno-białych telewizorów już się nie produkuje (choć monochromatyczne rozwiązania kineskopowe jeszcze są w użyciu w pewnych specyficznych zastosowaniach, to jednak zostały już dawno wyparte przez ekrany kolorowe, tylko nikt nie będzie złomował profesjonalnego sprzętu sprzed lat jeśli się wciąż nadaje do użytku).
Wyświetlaczem kolorowym po prostu można przekazać nieco więcej używając koloru jako atrybutu niosącego dodatkowe informacje.

Jaki zasilacz potrzebny dla tylu WS2812 ? Matryca elastyczna czy na sztywnym podłożu ?

Mam Ulanzi (z softem Awtrix Light), nie rozbierałem go (flashowanie po kabelku USB-C nie wymaga otwierania), ale jak znam życie, to zbudowany po taniości = zwykłe PCB, ale w przypadku DIY używasz takie jakie chcesz.

Co do zasilacza, to tu masz świetny kalkulator
https://wled-calculator.github.io/
wyświetlacz to matryca 8x32 pix = 256 układów WS2812 pracująca przy 5V - z kalkulatora wyjdą jakieś kosmiczne prądy, czyli najgorszy przypadek dla 100 % jasności RGB.

W rzeczywistości przy traktowaniu tego jako wyświetlacz, a nie lampę, zasilacz 5V 2A (może 3A) powinien być wystarczający, ale nie jestem w stanie ocenić, a nie miałem weny na pomiary, bo akurat u siebie mam wykorzystany kilku-portowy zasilacz/ładowarkę USB - coś w guście takiego (ale używam równocześnie wszystkich jego wyjść do innych celów w tym do zasilania RPI3/4, nawet nie pamiętam czy ma 4 czy 5 wyjść, raczej 5, w linku tylko podobny, oczywiście jeszcze sprzed ery GaN, wręcz chyba bez QC, więc podlinkowałem najpodobniejszy)
https://lygte-info.dk/review/USBpower%205%20port%2040W%20UK.html
będę w domu za parę dni, to mogę sprawdzić model (co jak sądzę nie ma wielkiego znaczenia, bo na 100% nie ma już takich w sprzedaży) i pomierzyć realny prąd (jest zmienny w zależności od okoliczności, tj. wyświetlanej treści i jasności otoczenia - bo jasność wyświetlacza jest dostosowywana do otoczenia, po reboocie startuje od ograniczonej jasności stopniowo ją zwiększając, więc chyba autor softu i o tym pomyślał).

1 Like

Faktycznie * LED power consumption: 52.57 W / 10.51 A
Myślę że 3A wystarczą tak jak napisałeś .
Zrobiłem na niebieskim też ładnie wygląda, podziękowania dla @bartik22

1 Like

Właśnie takie wyświetlacze (tyle, że czerwone) mam w dalekosiężnych planach wrzucić pod lustro (ale póki co nie mam ani lustra weneckiego, ani budżetu na zamawianie lustra z częściowym brakiem farby podkładowej, co w sumie powinno wystarczyć).

Kiedyś miałem zamiar zrobić MagicMirror2 https://magicmirror.builders/
ale chyba byłem zbyt leniwy i jakoś odeszło to w niepamięć :crazy_face:
Widzę że projekt się sporo rozbudował, rozpoznawanie twarzy :slight_smile:

Edit:

@szopen Inny projekt do obsługi ESP8266 MAX7219.
https://community.home-assistant.io/t/esp8266-max7219-message-board-http-and-mqtt/397654

GitHub: https://github.com/rdeangel/esp8266_max7219_rda_msg_board

Obsługa HTTP i MQTT, buzzer, gotowy plik .bin do wgrania lub plik dla ArduinoIDE.
Prosty interfejs WEB do testów, konfiguracji i aktualizacji.

Gotowe pliki (Automatyzacja, skrypty, flow) do obsługi z poziomu HA i NodeRed.

1 Like

Obiecałem 2 aktualizacje jak będę w domu

  1. otóż okazało się, że biurkowy zasilacz jednak ma QC na jednym porcie i to nawet QC3 (chyba muszę przemyśleć wykorzystanie) i jest to
    Test of BlitzWolf 4 usb and QC BW-S7
    czyli rebrand jakiegoś white-label spotykanego pod paroma innymi nazwami, jakkolwiek jego łączna obciążalność (na wszystkich portach razem) z użyciem QC to 40W, a w zwykłym trybie myślę, że koło 27W

  2. co do poboru prądu przez Ulanzi (tak w kwestii stanu, to akumulator mam naładowany, jakkolwiek wartości są szokująco niskie :stuck_out_tongue: pomiary na zasilazu z napięciem wyjściowym koło 5.1V - do tamtego BW-S7 nie mam dojścia by zmierzyć wygodnie), to wygląda to tak:

  • wyświetlacz zgaszony ~0.23A (wahania 0.19A-0.23A, ale bliższe górnej wartości, w sumie wszystkie pozostałe pomiary to były wahania, więc podaję dalej wartości maksymalne, które występowały i tak przez większość czasu)
  • tryb nocny (który ustawia 1% jasności) ~0.25A
  • pełnoekranowe efekty, gdzie zapalone są wszystkie piksele (ale żaden na biało) w rodzaju Checkerboard/Plasma/PlasmaCloud/SwirlOut/SwirlIn/ColorWaves przy ustawieniu jasności na 100% (czyli pobór mocy przez matrycę gdzieś między 1/3, a 2/3 wartości, która mogłaby wystąpić dla koloru białego) ~0.75A

edit - aktualny link 2024 pełnoekranowe efekty

procenty jasności to chyba jakaś umowna skala (ale nie mam jak tego zmierzyć, może komuś się chce pokopać po kodzie?)
pozostałoby jeszcze rozładować akumulator i sprawdzić jak będzie w trakcie ładowania


Ostatnia edycja - włączenie Ulanzi TC001 z rozładowanym akumulatorem “do zera” (czyli po osiągnięciu wyłączenia się urządzenia podczas pracy akumulatorowej) daje pobór prądu rzędu 1.5A-2.25A (zasadniczo przyjmijmy tę większą wartość jako realną dla ładowania włączonego zegarko-wyświetlacza) zapewne do momentu zakończenia 1 fazy ładowania (o ile układ ładowania ma kilka różnych faz pracy, a powinien).


edit 2024 - teraz projekt nazywa się po prostu Awtrix 3

1 Like

Inny projekt MQTT matrix wledPixel-v2.5_WeMos_D1
https://community.home-assistant.io/t/mqtt-dot-matrix-display-to-show-information-from-mqtt-topics/170022

Firmware
https://github.com/widapro/wledPixel/releases

  1. Klient Home Assistant [wyświetlanie wartości czujnika]
  2. Klient OpenWeatherMap [wyświetla: temperature (C/F), wilgotność, ciśnienie, prędkość wiatru, ikony pogody]
  3. Klient MQTT* [każda strefa wyświetlania obsługuje własny temat]
  4. Wall NTP clock [NTP sync clock]
  5. Wprowadzanie ręczne
  6. Pełna kontrola web UI
  7. Wykrywanie MQTT Home Assistant [Po określeniu ustawień MQTT, urządzenie automatycznie wyśle ​​wiadomość o wykryciu do HA]
  8. Wstępna konfiguracja za pośrednictwem Wi-Fi AP i interfejsu WEB
  9. Sterowanie poprzez MQTT
  10. Obsługa 3 oddzielnych stref wyświetlania
  11. Obsługa 12 segmentów wyświetlacza w tym samym czasie
  12. Zawiera 3 różne czcionki
  13. Czcionka symboli
Lista efektów przewijania
Domyślne efekty:

PA_RANDOM
PA_PRINT
PA_SCAN_HORIZ
PA_SCROLL_LEFT
PA_WIPE
PA_SCAN_VERTX
PA_SCROLL_UP_LEFT
PA_SCROLL_UP
PA_FADE
PA_OPENING_CURSOR
PA_GROW_UP
PA_SCROLL_UP_RIGHT
PA_BLINDS
PA_CLOSING
PA_GROW_DOWN
PA_SCAN_VERT
PA_SCROLL_DOWN_LEFT
PA_WIPE_CURSOR
PA_SCAN_HORIZX
PA_DISSOLVE
PA_MESH
PA_OPENING
PA_CLOSING_CURSOR
PA_SCROLL_DOWN_RIGHT
PA_SCROLL_RIGHT
PA_SLICE
PA_SCROLL_DOWN

Tworzenie własnych ikon dla MD_MAX72XX

https://pjrp.github.io/MDParolaFontEditor

@szopen @angler

2 Likes