_@¡ použijte menu „FILTROVAT TÉMA...“ pro výběr

Přehrávač filmů do expozice...

model k tisku [thingiverse]

    Úkol zněl jasně. Návštěvník přijde a může si vybrat jeden z mnoha filmů. Film pustit, zastavit nebo vybrat jiný.

Realizace

–  Máme jednu nebo více televizí a každá je připojená po HDMI k Raspberry Pi 4B (přehrávač)
–  Pro každou TV máme vyhrazenou bezdrátovou krabičku na baterii s jedním ovládacím kolečkem (ovladač)
– Pokud máme více jak jednu TV, tak navíc potřebujeme Raspberry Pi Zero 2 W (nebo jakékoli jiné), které slouží jako centrální komunikační uzel.

Ke stažení [zde].
Program pro ovladač (.ino) a program pro přehrávač (.py)

Otočením vyberu film a stiskem film spustím. Při spuštěném filmu otočení nebo stisk zastaví právě přehrávaný film a vrátí se do výběru filmů.

Jak to funguje?

    Ovladač pouze posílá zprávy o tom, co provádí; komunikační uzel běžící na RPi Zero 2 W tyto zprávy přijímá a umí je předat dál; počítač u televize zprávy je přihlášen odběru informací svého ovladače, zprávy přijímá a podle nich jedná.   
     Ovladač posílá MQTT brokeru v nastavené hierarchii/topic zprávy o otočení (CW | CCW), stisku (SELECT), stavu baterie (BATTERY), přechodu do režimu spánku (SLEEP) a má nastavenou závěť/last will jako (OFFLINE).
    Raspberry Pi 4B má spuštěný výběr filmů a je přihlášený k brokeru pro odběr zpráv ze stejného topic, kam posílá zprávy příslušný ovladač.

– Ovladač má XIAO ESP32-C6, rotační enkodér, 18650 Li-ion baterii a notifikační LED
– Raspberry Pi Zero 2 W má nainstalovaný MQTT broker Mosquitto
– Raspberry Pi 4B má nainstalovaný Raspian OS s grafickým prostředím

Ovladač s rotačním enkodérem

Prvotní nastavení
    Při zapnutí vypínače držím nejméně pět sekund stisknutý enkodér; notifikační dioda bliká pomalu a pak se rozbliká velmi rychle. Zařízení vytvoří přístupový body wifi – NastavOvladac. Připojím se z mobilu na správu směrovače nebo z notebooku (webová stránka http://198.168.4.1) a provedu konfiguraci. Umí i upgrade firmware.

Použití
    Otočením nebo stiskem se ovladač probudí a pošle tyto zprávy: status ON; battery %; akce (CW, CCW, SELECT)
    Notifikační LED blíká pomalu  není přístup k Wifi; dvojblik – není přístup k MQTT brokeru.
    Po 10 sekundách nečinnosti se ovladač uspí. Probudí se buď akcí enkodéru nebo automaticky jednou za 12 hodin a pošle stav baterie.

Sestavení
– Mikrokontroler XIAO ESP32-C6; má periferii pro rotační enkodér, wifi; lze k němu přímo připojit baterii a má integrovanou i nabíječku
  Rotační enkodér – pro generický KY-040 je nezbytné přidat dva keramické kondezátory (100nF) mezi piny (CLK-GND) a (DT-GND) a pokud chceme minimalizovat spotřebu, když by náhodou zůstal enkodér v mezistavu, kdy se nedokončí úplnou aretaci, tak vyměníme 10k pull-up rezistory na desce za 100k rezistory (rozměr 0805). Pouhé odstranění pull-up rezistorů a spoléhání se na interní pull-up rezistory se nedoporučuje.
– LED a rezistor 100Ω
– baterii 18650 s ochranou nebo externí ochranu po 1S Li-ion baterii [1].
– vypínač, který odpojí plus baterie
– napěťový dělič pro měření baterie (2 × rezistor 100k), 100nF keramický kondenzátor paralelně na spodní rezistor v děliči
Program;
    Pro Arduino IDE k nahlédnutí [2].
    Ke stažení [3] (.ino nebo .bin)

MQTT broker na Raspberry Pi Zero 2 W

    Instalace brokeru Mosquitto je dostupná a podrobně popsaná viz [4]. Pokud je vše správně nastaveno, vidím ve výpisu na Raspberry jak přichází zprávy z ovladače; příkazem
mosquitto_sub -h localhost -t "#" -v -u jmeno -P heslo

Příprava filmů pro Raspberry Pi 4B

    Na obrazovce jsou náhledy filmů (1920×1080), jmenují se stejně jako film a liší se pouze příponou (.jpg). Filmy připravuju skriptem a náhledy je možné také vygenerovat automaticky. Skripty k náhledu viz [5]. 

Přehrávač na Rasperry Pi 4B

Instaluju běžný Rapsberry Pi OS (64-bit) uvolněný 2026-04-21.
Zapnu si SSH přes
sudo raspi-config    

do složky /home/pi/filmy nahraju filmy (.mp4), které se mají přehrávat a jejich náhledy (.jpg). Mezi náhledy si vyberu, co se bude přehrávat.  Obsah pro přehání nahrávám pomocí sftp:// nebo WinSCP.

Programy přehrávače ke stažení [6].
– test spojení s brokerem a ovladačem
python3 test_mqtt.py

–  program pro spuštění přehrávače k nahlédnutí [7].
pokud je stav baterie < 20% bliká na náhledovém obrázku vpravo dole čevená ikona vybité baterie
python3 kino_gui.py

Automatické spuštění a přípava RPi tak, aby se choval jako kiosek.
Mám jen svoje poznámky [8], co jsem všechno nastavil a vypnul. Tohle může být individuální.

Vše běží jak má

Časem přidám zkušenosti z praxe.