Ich habe noch etwas getestet und doch noch einen Fehler für h265 mit Kernel 5.15 gefunden.
Fix ist eingecheckt.
Ich habe noch etwas getestet und doch noch einen Fehler für h265 mit Kernel 5.15 gefunden.
Fix ist eingecheckt.
Es sieht so aus, als wenn anstelle des Codes der Wert für die Code Maske genommen wird.
setup_bl301.service ist Dein eigenes Script. Das soll doch eigentlich nur eine 1 in /sys/class/bl301_manager/setup_bl301 schreiben:
#!/bin/sh
set -e
if [ -f /sys/class/bl301_manager/setup_bl301 ]; then
echo 1 > /sys/class/bl301_manager/setup_bl301
fi
if [ -f /sys/class/bl30_manager/setup_bl30 ]; then
echo 1 > /sys/class/bl30_manager/setup_bl30
fi
Display More
Das Schreiben der Codes macht m.E. Kodi über update-bl301.service und inject_bl301.
Das Schreiben der Codes macht m.E. Kodi über update-bl301.service und inject_bl301
Wenn ich das richtig sehe, dann machen update-bl301 und inject-bl301 nur das Update/die Installation des bl301 im Bootloader.
Ich habe mir eine /storage/.config/tanix1.remotewakeup angelegt und die kann ich in Kodi dann auch auswählen. Das hat allerdings auch keinen Einfluss. Ich verstehe nicht, wie der bl301_manager an die Werte kommt. Ein Mysterium...
Schau mal in bl301_manager.c
Es greifen offenbar die Initialwerte
und nicht der setup-Wert aus der config.ini, wie die Zeile
MODULE_DESCRIPTION("Handle data between config.ini and bootloader blob bl301");
beschreibt. Ich vermute, dass sich "irgendwas" verändert hat, dass dazu führt, dass die vorgenommenen Patches jetzt eine unerwünschte Nebenwirkung haben.
Ich vermute, dass sich "irgendwas" verändert hat, dass dazu führt, dass die vorgenommenen Patches jetzt eine unerwünschte Nebenwirkung haben.
Ich habe ein Build von CE21.2 ohne die ganzen Patches (dtb und bl301) probiert und es funktioniert immer noch nicht.
Ich habe null Ahnung, wie der bl301_manager an die Konfiguration kommt oder auch nur, wie der die Werte übergeben bekommen soll. Ich komme nicht dahinter. Eigentlich würde ich erwarten, daß die Werte aus der /flash/config.ini irgendwie in das Kernel-Modul des bl301_managers kommen, aber wie ist völlig unklar. Mit einem reinen CE21.3 funktioniert es ja, also muss es irgendwie gehen. Ich dachte, ich starte einfach mal Kodi und lass das Ding machen, aber selbst das funktioniert nicht.
Probier mal diese 21.2
Mein Grundsystem ist älter. Ich habe irgendwann mal von SD-Karte in den internen eMMC kopiert und nutze seitdem nur noch den internen Speicher. Alle Updates habe ich immer nur über tar-files im .upload-Ordner gemacht.
Probier mal diese 21.2
Diese funktioniert wieder. Ich versuche jetzt mal, diese Version noch einmal lokal zu bauen, damit ich mich wieder vortasten kann.
Danke für das Image.
Ich habe null Ahnung, wie der bl301_manager an die Konfiguration kommt oder auch nur, wie der die Werte übergeben bekommen soll. Ich komme nicht dahinter.
das müsste über das Kodi addon service.coreelec.settings erfolgen. In den Sourcen finde ich den Code hier ab Zeile 747 uff.
Wo wird self.oe.set_config_ini nun definiert? In der oe.py finde ich
Und in der gleichen Datei steht configini = '/flash/config.ini'
das müsste über das Kodi addon service.coreelec.settings erfolgen. In den Sourcen finde ich den Code hier ab Zeile 747 uff.
Darüber bin ich auch schon gestolpert. Aber dann beginnt die Magie, die ich nicht verstehe:
if os.access('/sys/class/bl301_manager/setup_bl301', os.W_OK):
setup_bl301 = open('/sys/class/bl301_manager/setup_bl301', 'w')
setup_bl301.write('1')
setup_bl301.close()
Wie soll ein write von "1" irgendeine Parameterübergabe triggern? Dazu muss man wohl Python und Linux Kernel Module tiefer verstehen.
Der Build mit dem Stand vom 09.08 ist durchgelaufen und der wakeup funktioniert. Jetzt muss ich mich nur noch rantasten, ab wann es nicht mehr geht.
Wie soll ein write von "1" irgendeine Parameterübergabe triggern?
Gar nicht. Ich hatte einen ziemlichen Denkfehler. Das Kernelmodul wird beim Boot mit den Parametern geladen und das Schreiben von "1" triggert nur das Schreiben der bereits vorhandenen Parameter. Das erklärt auch, warum eine Änderung der config.ini erst nach einen Reboot aktiv wird.
Beim testen habe ich gesehen das ein NFS mount mit der NO Version nicht mehr funktioniert. Das behindert mich sehr beim entwickeln. Hatten wir das nicht schonmal mit der ne Version ? Und gab es da nicht einen workaround ?
Mit nfsv4 hatte ich Probleme und mit nfsv3 ging es dann. Ist das immer noch so?
Siehe Installation eines VDR+Plugins nativ auf CoreELEC Boxen.
Ja, kann ich bestätigen.
Unter CE22 nutze ich nfsv3
Unter CE22 nutze ich nfsv3
Danke das klappt nun super.
Diese funktioniert wieder. Ich versuche jetzt mal, diese Version noch einmal lokal zu bauen, damit ich mich wieder vortasten kann.
Ich habe so einige Build und Tests hinter mir. Die Interim-Build habe ich wieder hochgeladen. Die Beobachtungen lassen mich aber etwas ratlos zurück. Alle(!) lokalen Builds funktioren bzgl. wake-up. Ein Gegencheck mit dem letzten Release auf Github funktioniert allerdings nicht und sobald ich wieder einen lokalen Build installiere, klappt es wieder.
Die Github-Builds sind echte clean Builds, bei den lokalen Builds bin ich von commit Hash zu commit Hash gesprungen, um das Ganze stark zu beschleunigen. Ich würde aber erwarten, daß beide Versionen sich gleich verhalten. Aber genau das tut es nicht. Die Build Umgebung ist bei beiden (Github und lokal) Ubuntu 22.04.
Ich werde jetzt einen lokalen clean Build starten und prüfen, wie da der wake-up funktioniert. Dann muss ich weitersehen.
Auf jeden Fall bin ich verwirrt....
Edit:
Sooo. Ein clean Build ist durch und genau der funktioniert schon wieder nicht (wie auch die Github-Version). Was zum Henker unterscheidet einen clean Build von einem Build mit Updates?
Edit2:
es gibt zwischen Deiner 21.3 und der stable 21.3 von CE Unterschiede in /etc/inject_bl301/bl301.conf
Du hattest den absolut richtigen Riecher. Chapeau! Bei dem nicht-funktionierendem clean-Build habe ich im Build rumgefummelt und konnte ein Image erstellen, in dem die bl301.conf die fehlenden Zeilen hatte. Und damit funktioniert der wake-up wieder.
Jetzt besteht die Aufgabe nur darin, herauszufinden, warum die bl301.conf unvollständig erzeugt wird.
Glückwunsch und Danke für die Suche!
Das ganze ist so komplex, dass ich jeden bewundere, der da noch durchblickt.
Übrigens: Ich glaube, ps3remote.py läuft in ng immer noch nicht (siehe hier). In CE22-no hatte es aber funktioniert. Als ich CE21-ng getestet hatte, musste ich den workaround basteln. Vielleicht kannst Du Dir das auch nochmal anschauen.
Das Problem mit bl301 ist auch noch hausgemacht ![]()
Bei den Github-Builds muss ich mit "AUTOREMOVE=1" arbeiten, da ansonsten der verfügbare Speicherplatz in den Images bei weitem nicht ausreicht. Ich lösche in den Images schon sehr aggressiv viele Pakete und vorinstallierte Programme.
Bei "AUTOREMOVE=1" werden die Build-Sourcen gelöscht, wenn sie nicht mehr gebraucht werden. Dazu werden die Pakete analysiert und Abhängigkeiten ermittelt. Durch einige Testbuilds habe ich auch offziell nicht-abhängige Pakete als Ausnahme hinzugefügt. Wenn z.b. Paket A die Sourcen von Paket B benötigt, dann wird Paket B erst gelöscht, wenn Paket A fertig ist.
Das hat bei inject_bl301 nicht funktioniert. Als schnelle Lösung habe ich für die bl301_* Sourcen Ausnahmen hinzugefügt.
Ich habe die CoreELEC Images neu erstellen lassen und mit dem letzten CE-Release funktioniert der wake-up auf der TX3 wieder. Und auch wol klappt endlich ![]()
Hi Zabrimus,
hab mal CE22 mit deinen letzte n Änderungen neu gebaut, das Wakeup mit der Fernbedienung klappt jetzt! ![]()
Allerdings will wol noch nicht:
##############################################
# CoreELEC #
# https://coreelec.org #
##############################################
CoreELEC (community): 22.0-Piers_devel_20251215080345 (Amlogic-no.aarch64)
Machine model: Hardkernel ODROID-N2Plus
CoreELEC dt-id: g12b_s922x_odroid_n2plus
Amlogic dt-id: g12b_w400_b
Linux version: 5.15.170 (lothar@ubuntu) #1 Sun Dec 7 16:14:41 CET 2025
Kodi compiled: 2025-12-07 16:54:10 +0100
CoreELEC:~ # dmesg | grep bl30
[ 2.707714] bl30_manager: driver probe
[ 8.727509] bl30_manager: Do setup BL30 blob
[ 8.727548] bl30_manager: IR remote wake-up code: 0x3fbd
[ 8.727557] bl30_manager: IR remote wake-up code protocol: 0x4
[ 8.727560] bl30_manager: IR remote wake-up code mask: 0x37ff
[ 8.727564] bl30_manager: enable 5V system power on suspend/power off state: 0
[ 8.727567] bl30_manager: gpiopower: 65535 (479)
[ 8.727571] bl30_manager: support WOL: 0
CoreELEC:~ # grep -i wol /flash/*.ini
/flash/config.ini:# WOL Setting, 0=off/1=on
/flash/config.ini:wol='1'
CoreELEC:~ # cat /proc/cmdline
systemd.show_status=auto BOOT_IMAGE=kernel.img boot=UUID=1234-ABCD disk=UUID=1a02624b-7ddf-4ccc-95e3-0eb663bb57e1 console=ttyS0,115200 console=tty0 no_console_suspend keymap=us hdmitx=cec7f remotewakeup=0x00003fbd decode_type=0x4 remotewakeupmask=0x000037ff enable_system_power=0 gpiopower=479 vout=2160p50hz,dis frac_rate_policy=0 hdmitx=, hdr_policy=1 quiet
Display More
In der config.ini ist wol aktiv; allerdings sehe ich davon nichts in der boot.ini und auch nicht in der Kernel cmdline.
Hier zum Vergleich unter CE21
CoreELEC:~ # cat /proc/cmdline
BOOT_IMAGE=kernel.img boot=UUID=2410-3932 disk=UUID=9e6750d4-6e3c-4122-92dc-c4490e0490c0 console=ttyS0,115200 console=tty0 no_console_suspend keymap=de-latin1-nodeadkeys enable_wol=1 hdmitx=cec7f remotewakeup=0x00003fbd decode_type=0x4 remotewakeupmask=0x000037ff gpiopower=479 vout=2160p50hz,en logo=osd0,loaded,0x3d800000 frac_rate_policy=0 native_4k_gui=0 hdr_policy=1 quiet systemd.show_status=auto
CoreELEC:~ # dmesg | grep bl30
[ 0.909516@2]- bl301_manager: driver init
[ 4.616073@2]- bl301_manager: Do setup BL301 blob
[ 4.616078@2]- bl301_manager: IR remote wake-up code: 0x3fbd
[ 4.616079@2]- bl301_manager: IR remote wake-up code mask: 0x37ff
[ 4.616081@2]- bl301_manager: IR remote wake-up code protocol: 0x4
[ 4.616082@2]- bl301_manager: enable 5V system power on suspend/power off state: 0
CoreELEC:~ # grep wol /flash/*.ini
/flash/boot.ini:if test "${wol}" != ""; then setenv wol "enable_wol=${wol}"; fi
/flash/boot.ini:setenv initargs "${rootopt} ${consoleopt} ${max_freq_a53} ${max_freq_a73} ${wol} ${cec} ${irsetup} ${usbpower} ${gpiopower} ${usbopts} ${cmode}"
/flash/config.ini:wol='1'
Display More
Wie es aussieht, fehlt mir der wol Eintrag in der boot.ini. Ich hab das nachgetragen und auch das setenv initargs erweitert.
In der Kernel Cmdline kommt es auch an:
CoreELEC:~ # cat /proc/cmdline
systemd.show_status=auto BOOT_IMAGE=kernel.img boot=UUID=1234-ABCD disk=UUID=1a02624b-7ddf-4ccc-95e3-0eb663bb57e1 console=ttyS0,115200 console=tty0 no_console_suspend keymap=us enable_wol=1 hdmitx=cec7f remotewakeup=0x00003fbd decode_type=0x4 remotewakeupmask=0x000037ff enable_system_power=0 gpiopower=479 vout=2160p50hz,dis frac_rate_policy=0 hdmitx=, hdr_policy=1 quiet
Allerdings will wol weiterhin nicht.
CoreELEC:~ # dmesg | grep bl30
[ 2.706304] bl30_manager: driver probe
[ 8.735945] bl30_manager: Do setup BL30 blob
[ 8.735982] bl30_manager: IR remote wake-up code: 0x3fbd
[ 8.735987] bl30_manager: IR remote wake-up code protocol: 0x4
[ 8.735990] bl30_manager: IR remote wake-up code mask: 0x37ff
[ 8.735993] bl30_manager: enable 5V system power on suspend/power off state: 0
[ 8.735997] bl30_manager: gpiopower: 65535 (479)
[ 8.736001] bl30_manager: support WOL: 0
Hab ich noch was übersehen?
Nachtrag: Ich hab nochmal im Coreelec Git nachgeschaut:
CoreELEC/projects/Amlogic-ce/devices/Amlogic-no/bootloader/Odroid_N2_boot.ini at coreelec-22 · CoreELEC/CoreELEC · GitHub
CoreELEC/projects/Amlogic-ce/devices/Amlogic-no/bootloader/config.ini at coreelec-22 · CoreELEC/CoreELEC · GitHub
Dort finde ich in beiden Dateien keine Bezüge zu wol.
Ich habe im softhdodroid nun noch das Setting Hdr2Sdr gefixed. Damit kann man nun auch HDR Sendungen auf einem SDR Monitor anschauen.
Jetzt fehlt nur noch ein funktionierendes WOL im CE-22 und dann kann man es tatsächlich als VDR einsetzen.
Ich habe noch etwas getestet und doch noch einen Fehler für h265 mit Kernel 5.15 gefunden.
Fix ist eingecheckt.
Die neue Version funktioniert
Mein (transkodierten) h265 Aufzeichnungen werden jetzt sauber abgespielt. Danke.
Don’t have an account yet? Register yourself now and be a part of our community!