• Vítejte na XBMC-Kodi.cz
  • Česko-slovenská komunita fanoušků XBMC/Kodi
Vítejte návštevníku! Přihlášení Registrace


Hodnocení tématu:
  • 0 Hlas(ů) - 0 Průměr
  • 1
  • 2
  • 3
  • 4
  • 5
NUC + interní HDMI-CEC
#1
Známý mi přinesl Intel NUC Kit 10i5FNH s úkolem, postavit kompaktní HTPC s LibreELEC, Tvheadend (DVB-T2, OTT, ...). Máte někdo zkušenost s použitím Intel NUC HDMI-CEC adaptér. Jsou tam nějaké záludnosti nebo opravdu stačí to, co je popsáno návodu a v HDMI CEC Information for Intel NUC. Od HDMI-CEC potřebuji pouze VYP/ZAP TV při uspání/probuzení HTPC, které chtějí ovládat pouze přes vlastní DO.
 
Citovat
#2
podle me nemusis kupovat zadny adapter, jen by jsi to mel povolit v biosu. Koukni sem

https://www.intel.com/content/www/us/en/...-kits.html
---Google TV Streamer 4K---Dune HD Homatics Box R 4K PLUS---
 
Citovat
#3
@dopi Díky za názor. Nebyl jsme si jistý, z popisu mi to zprvu nevyplývalo úplně jednoznačně, zda je třeba ten adaptér PulseEight zapjit na header-y MB NUC a tím že se z něj stane "onboard" nebo zda je tam již integrován. Teď když si to čtu ještě jednou mi to tvoje vysvětlení dává větší smysl. 6 No nic, vyzkouším to. Bude-li to jinak, ten adaptér mohu koupit kdykoliv později.
 
Citovat
#4
Pak dej vedet jak si dopadl, ja bych to mohl taky doma zkusit, ale mladej na tom dela skolu tak mu to nechci brat. Musim uznat ze to je kouzelna krabicka za ty prachy.
---Google TV Streamer 4K---Dune HD Homatics Box R 4K PLUS---
 
Citovat
#5
určitě dopadne dobře, NUCe mám, sice starší HadesCanyon, ale je to přesně jak říkáš, stačí zapnout v Biosu. Externí modul jsem si dokoupil a už jsem ho zase vyhodil, protože jakmile jsem dal dal vypnout KODI (né vypnout systém), KODI stejně zavelel přes CEC a vypnul mi celý systém i s televizí a nastavení v biosu ho nějak netrápilo. Nicméně u mě se zapojovala tahle kravina na volný USB 2.0 header konektor na desce (bílá), co jsem koukal ten 10i7 ho nemá, takže by jsi musel sáhnout asi po něčem takovém:

https://www.pulse-eight.com/p/104/usb-hdmi-cec-adapter

...nicméně jak jsem psal, jsou to vyhozené peníze, protože to nešlape tak nějak podle představ
Android 12 mobilní telefon KODI 20, Philips Android TV KODI 20, NUC Windows 11 KODI 20
 
Citovat
#6
*** Probouzení, uspávání a vypínání Intel NUC PC (12/2025) ***
- konkrétně NUC7 s instalovaným Generic x86_64 LibreELEC 12.2.1 /Kodi 21.3.0
PC je připojený HDMI-CEC k Samsung TV /Tizen s D.O. Samsung.
PC s vlastním D.O. přes USB přijímač; OSMC RF Remote.

Proč jsem řešil
Občas zapomenu stopnout sledování v Kodi, když přepnu na Samsung TV program, nebo pak dokonce TV vypnu. NUC PC se v některých stavech neuspí. Kodi player běží dál a čerpá energii napájení nebo také data internetu.

- - K nalezení řešení mi pomáhala Ai ale nenavedla mne tak dobře, jako kolega @JiRo. Proto jsou řešení dvě. Podle Jiro elegantní (XML soubor pro Keymap), podle Ai složitější (s úpravou skinu).

::
Výchozí stavy PC BIOS
Advanced - Devices and Peripherals /Onboard Devices:
HDMI CEC Control - povoleno
Wake on TV - probuzení "From S3" = funkční pro Kodi, při aktivaci HDMI vstupu probudí PC.
Stand by TV - vypnutí/uspání "Power/Suspend Button Toggle" = obě vyvolají okno Kodi dialog Power Menu.

Úkolem tedy je změnit funkci, aby místo volání dialogu (který ocekává výběr a potvrzení) vydalo Kodi příkaz k uspání.
Příkaz zruší vazbu na zdroj média, Kodi ukáže oznámení po probuzení. Pokud se ukládá čas v přehrávání, uloží se.
Deaktivace vstupu HDMI u Samsung TV neprovede v NUC PC žádnou akci.

.
::
Doplnění příkazu do Keymap (první řešení)
Můžeme využít vlastnost, že každý platný soubor XML v uživatelské složce Keymap bude zohledněný. (Zneplatnění souboru pro Kodi příponou OLD nebo TXT.)

K souboru gen.xml přidávám tedy soubor sleep.xml s obsahem:
Kód:
<keymap>
  <global>
    <keyboard>
           <sleep>Suspend()</sleep>
    </keyboard>
  </global>
</keymap>

.
::
Úprava skinu (druhé řešení)
Signál Power Button volá ze souboru home.xml skinu Estuary, soubor DialogButtonMenu.xml
V souboru home.xls jsem změny dělat nechtěl.
Je pak nutno změnit obsah souboru DialogButtonMenu.xml na příkaz k uspání. Proběhne vždy.
Soubory defaultního skinu jsou v chráněných adresářích a navíc update skinu/Kodi by mohl vrátit změny.
Vytvořil jsem klon defaultního skinu s novým ID, verzí a názvem.

Poznámka - Tato úprava zruší možnost vyvolat okno Power Menu. Pro restart nebo vypnutí se nabízí používat aplikaci Kore z mobilu Android, případně nastavit volná tlačítka D.O přes Keymaps. Vypnutí "natvrdo" delším podržením tlačítka Power na PC.

::
Podrobný popis
Dotčené soubory skinu ve složce XML a v kořenu skinu
přejmenovaném na skin.estuary.susp

Nový obsah souboru DialogButtonMenu.xml s příkazem pro uspání (Obsah konzultován s AI Gemini):
Kód:
<?xml version="1.0" encoding="UTF-8"?>
<window>
    <defaultcontrol>9000</defaultcontrol>
    <onload>Suspend()</onload>
    <onload>Dialog.Close(shutdownmenu)</onload>
    <include>Animation_DialogPopupOpenClose</include>
</window>

Změněná část obsahu souboru addon.xml s novým ID a názvem (u mne 4.0.1 s první změnou a definitivně 4.0.2):
Kód:
<?xml version="1.0" encoding="UTF-8"?>
<addon id="skin.estuary.susp" version="4.0.2" name="EstuarySusp" provider-name="phil65, Ichabod Fletchman, M.">
    <requires>
        <import addon="xbmc.gui" version="5.17.0"/>
    </requires>

Do souboru changelog.txt přidán text:
Kód:
[B]4.0.2[/B]
• Modification DialogButtonMenu.xml to Onload Suspend

::
Postup klonování defaultního skinu
Je potřeba mít připojený disk, na který a z kterého budeme kopírovat, instalovat.
Pro nalezení defaultního skinu musíme ve Správce souborů Kodi Přidat zdroj
special://xbmc
V něm ve složce addons najdeme skin.estuary, kopírujeme na připojený disk.

Soubory editujeme na PC, například v Notepad.
(Ideální je Notepad++, editory Linuxu jmenovat nemusím.)
Složku skin.estuary přejmenovat na skin.estuary.susp
Vyměnit obsah ve složce XML souboru DialogButtonMenu.xml
Změnit část obsahu souboru addon.xml
Přidat text do souboru changelog.txt

Složku skin.estuary.susp zkomprimujeme zazipováním, přípona zip.
Název zazipovaného souboru přejmenujeme verzí, bude se např jmenovat:
skin.estuary.susp_402.zip

Nový skin Kodi instalovat ze souboru zip v cestě k připojenému disku,
nebo z jiného dosažitelného umístění.
Složka skin.estuary.susp je po instalaci ve special://home ve složce addons

Některé volby skinu bude potřeba znovu nastavit.
Volby nastavení Kodi se ale zachovají.

.
::
Příkaz Kodi uspání při neaktivitě
Protože deaktivace vstupu HDMI u Samsung TV neprovede v NUC PC žádnou akci,
nastavil jsem menu Kodi Systém (Expert) /Úspora energie:
Časovač funkce vypnutí - 10 minut
Funkce vypínání - Uspat
.. ..
#
Na diskuzi jen fórum, ne SZ.
 
Citovat
#7
@meda: Vůbec jsem nepochopil, proč jsi to celé dělal... Ale je to asi jedno. Pokud ti to funguje jak sis přál, bude to asi v pořádku.
 
Citovat
#8
@JiRo: Zrejmě proto, že ač jsem si myslel, že budu uspávat NUC7 s LE/Kodi od vypnutí TV, nefungovalo mi to. Vysvětlil jsem to v textu - a ten je pro mne jakýsi "blbník", až budu zapomínat.
#
Na diskuzi jen fórum, ne SZ.
 
Citovat
#9
@meda: Aha. Takže po několikerém přečetení jsem to pochopil tak, že pokud vypneš/uspíš TV, tak se místo uspání systému aktivovalo ShutdownMenu? Pokud jsem to pochopil správně, tak to znamená, že tvůj NUC tohle řeší tak, že při vypnutí/uspání TV posílá přes HDMI-CEC informaci, které se do Kodi dostane jako povel power. No a na povel power je v Kodi skutečně mapován (v remote.xml, protože jde o povel z HDMI-CEC, které se v Kodi vždy interpretují jako remote) built-in příkaz Kodi ActivateWindow(ShutdownMenu). Je to sice jen předpoklad, ale nevidím jiný důvod, proč by se to tak mělo chovat.

A pokud bychom tento předpoklad přijmuli, tak ten tvůj postup šel vyřešit zcela jednoduše tím, že bys to Suspend() doplnil do uživatelského mapování, nějak takto.
 
Kód:
<keymap>
  <global>
    <remote>
      <power>Suspend()</power>
    </remote>
  </global>
</keymap>

Dosáhl bys tím úplně stejného chování bez nutnosti vytvářet klon Estuary skinu.

A jinak tedy ještě malý trik, pokud chceš v *ELEC vytvářet klon Estuary. Úplně postačí vzát adresář skinu z /usr/lib/kodi/addons a nakopírovat ho do /storage/.kodi/addons a pak v něm udělat potřebné úpravy. Pak restartovat Kodi, a to spustí skin z adresáře /storage/.kodi/addons.

Kodi totiž primárně spouští stejné doplňky, které se vyskytují v obou adresářích addons, vždy z toho /storage/.kodi/addons. Výhodou je, že je to rychlejší, a navíc, nemusíš vytvářet nové nastavení.
 
Citovat
#10
(10.12.2025, 23:22)JiRo Napsal(a): ... A jinak tedy ještě malý trik, pokud chceš v *ELEC vytvářet klon Estuary. Úplně postačí vzát adresář skinu z /usr/lib/kodi/addons a nakopírovat ho do /storage/.kodi/addons a pak v něm udělat potřebné úpravy...

Tak za tenhle trik děkuju, to jsem netušil. Vždycky jsem si vytvářel upravený skin z původního a pak ho instaloval pod změněným názvem (jako @meda: ). A ono to jde takto jednoduše. Palec nahoru.
HK1 rbox X4S (CE), X96 Max+ (CE), Tanix TX92 (CE Leia) | Yamaha RX-V475 | LG OLED65C8
 
Citovat
#11
@JiRo: Za radu, jak klonovat skin, také děkuji.
Varianty příkazu Suspend() do uživatelského mapování v Keymaps jsem po konzultacích s Ai vyzkoušel několikrát. V mé kombinaci NUC7 x86 LibreELEC to nefunguje a signál CEC stále vyvolává dialog Power menu.
Mám to vyřešené.
#
Na diskuzi jen fórum, ne SZ.
 
Citovat
#12
@meda: No, pokud jsi to zkoušel jako remote i keyboard (i když jako keyboard by to bylo hodně nestandardní chování HDMI-CEC) a nemáš jinde v uživatelském mapování ještě power mapováno s vyšší prioritu, tak by bylo ideální to odchytit v logu, případně i s odpovídajícím nastavením logování v příslušné komponentě. Aby bylo vidět, co a jak se vlastně při vypnutí TV do Kodi dostává.

Prošel jsem tedy alespoň všechna existující defaultní mapování Kodi (myslím Kodi 21) a našel ještě jeden povel, na který je mapován ActivateWindow(ShutdownMenu), je to sleep a je v sekci keyboard. Takže taky spíše pro HDMI-CEC méně pravděpodobný. Je tam těch stejných mapování ještě více, ale ty jsou už hodně exotické a pravděpodobnost, že by byly použity je ještě menší. Nicméně, bez výše popsaného logování je tohle jen čirá spekulace.

Já stále tomu, že by to nešlo vyřešit správně provedeným mapováním, dost nevěřím. Pokud nějaká akce na straně HW končí v Kodi tím, že se zobrazí to shutdown menu, tak možnost, že je to řešené jiným mechanismem, než mapováním, má pravděpodobnost blížící se 0. Ano, může existovat něco, o čem dosud v Kodi nevíme, ale to bychom si mohli potvrdit právě jen analýzou logu.

Škoda, mohli jsme tohle popsat i pro ostatní, jak v takových případech postupovat. Tvůj postup sice vede ke stejnému výsledku, ale za cenu, kterou řada uživatelů, s jinými schopnostmi nebo třeba jen s jiným skinem, nebudou chtít nebo nebudou moci "zaplatit".

Ještě mě napadla jedna věc. Souvisí to s tím, jak Kodi řeší ty zdroje ovládání z kategorie remote. Je pravda, že když se mapování nenajde, resp. neuplatní, v remote sekci, tak to díky vnitřnímu mechanismu Kodi "proteče" až do keyboard. Já na to vždycky zapomínám, a stejně tak na to možná zapomínají i modely AI. Takže finální rada bez toho, že bychom se pustili do pátrání v logu, je přemapovat všechno, co jde a co potenciálně může to shutdown menu vyvolat. Nějak takto:
 
Kód:
<keymap>
  <global>
    <remote>
      <power>Suspend()</power>
      <sleep>Suspend()</sleep>
    </remote>
    <keyboard>
      <power>Suspend()</power>
      <sleep>Suspend()</sleep>
    </keyboard>
  </global>
</keymap>
 
Citovat
#13
@JiRo - Děkuji za správné nakopnutí, tvé elegantní řešení jsem po testech správnosti doplnil do příspěvku #6.
Řešení jsem ponechal v popisu obě - stála mne dost (marného?) času.
#
Na diskuzi jen fórum, ne SZ.
 
Citovat
  


Přejít na fórum:


Prochází: 1 host(ů)