Pi4 black screen after splash

This is a problem quite similar to a lot of other RPi4 problems, but since it seems all those threads have gone cold, here I am making a new one.
I have an old Panasonic plasma tv, and after the OSMC splash screen, it goes black. This wasn’t always a problem though. When I first got the tv last month, I installed the latest version of OSMC (don’t quite remember which version exactly) and I experienced this issue. After some fiddling with disconnecting the power to the tv and the pi, removing the sd card and randomly plugging in cables I finally got it working and didn’t touch any cables. Ever since then, everything worked fine through updates and restarts.
Recently I disconnected the HDMI cable from the tv however, and it has stopped working again.
OSMC works just fine on other monitors, only this tv seems to be problematic.


Now for the logs
Here’s my grab-logs -A output, and here’s the same log on GitHub in case something happens to the first link.
And here’s the output of dmesg shortly after a reboot.
My sounds issue similar to what’s described in this post by @PapaLazarou, due to the errors with the audio device being spammed into both logs, but none of the fixes there helped me, and the difference is that I never touched any 4k settings. The only thing I changed for this error to appear was disconnecting my HDMI cable and reconnecting it again.

Looking through my logs I have found the same problems as described in the post though:
kodi.log starts out with

2022-11-15 21:55:14.349 T:703      INFO <general>: CAESinkALSA - Unable to open device "default" for playback
2022-11-15 21:55:14.366 T:703      INFO <general>: CAESinkALSA - Unable to open device "sysdefault" for playback
2022-11-15 21:55:14.379 T:703      INFO <general>: CAESinkALSA - Unable to open device "bluealsa" for playback
2022-11-15 21:55:14.382 T:703      INFO <general>: CAESinkALSA - Unable to open device "btaudio" for playback
2022-11-15 21:55:14.383 T:703      INFO <general>: CAESinkALSA - Unable to open device "sysdefault:CARD=vc4hdmi0" for playback
2022-11-15 21:55:14.384 T:703      INFO <general>: CAESinkALSA - Unable to open device "hdmi:CARD=vc4hdmi0,DEV=0" for playback
2022-11-15 21:55:14.385 T:703      INFO <general>: CAESinkALSA - Unable to open device "sysdefault:CARD=vc4hdmi1" for playback
2022-11-15 21:55:14.385 T:703      INFO <general>: CAESinkALSA - Unable to open device "hdmi:CARD=vc4hdmi1,DEV=0" for playback
2022-11-15 21:55:14.385 T:703      INFO <general>: No Devices found - retry: 4

Then it gives up and clogs the log with

2022-11-15 21:56:05.512 T:704      INFO <general>: CActiveAESink::OpenSink - initialize sink
2022-11-15 21:56:05.512 T:704      INFO <general>: CAESinkALSA::Initialize - Attempting to open device "@"
2022-11-15 21:56:05.515 T:704      INFO <general>: CAESinkALSA - Unable to open device "sysdefault" for playback
2022-11-15 21:56:05.516 T:704      INFO <general>: CAESinkALSA - Unable to open device "default" for playback
2022-11-15 21:56:05.516 T:704      INFO <general>: CAESinkALSA - Unable to open device "front" for playback
2022-11-15 21:56:05.516 T:704     ERROR <general>: CAESinkALSA::Initialize - failed to initialize device "@"
2022-11-15 21:56:05.516 T:704     ERROR <general>: CActiveAESink::OpenSink - no sink was returned
2022-11-15 21:56:05.516 T:703     ERROR <general>: ActiveAE::InitSink - returned error

I should also note that every time kodi attempts to open a connection or whatever it’s doing in the above, my TV turns on. Even disabling cec on the OSMC side still causes this, so I’m guessing my TV is detecting some attempt at establishing a connection and turns on in response (though it doesn’t change to the HDMI input the Pi is on as it does with my Chromecast :thinking:).

And the output of dmesg contains thousands of lines of

[   40.041812] hdmi-audio-codec hdmi-audio-codec.1.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -19

Changing all occurences of vc4-kms-v3d in config.txt with vc4-fkms-v3d makes it boot successfully, but with not audio devices, so I’m pretty sure kodi can’t find my TVs built in speakers anymore.

I also tried running edid-decode on practically every file in /sys/class/drm/ named edid, but all of them failed with the error EDID extract of '/sys/class/drm/[several subfolders]/edid' failed: unknown format.


I’ve tried numerous different config.txt and config-user.txt configurations, all with no luck, and I really don’t see how it could suddenly stop working after being just fine for over a month. I’m out of ideas at this point, so any help is appreciated.

Small update: I tried connecting a speaker through the 3.5 mm audio jack. Starting with vc4-fkms-v3d works fine, it even plays audio through the HDMI port now, but none of my videos want to play. I can also switch the audio device to Headphones to play audio through the audio jack.

Going back to vc4-kms-v3d still shows a black screen, but the logs don’t seems to have any errors anymore, weirdly enough. Here’s the log for that one. I went into the web UI and looked at the available audio devices there, and the only one was Headphones, which was selected by default. dmesg still throws [ 13.294703] hdmi-audio-codec hdmi-audio-codec.3.auto: ASoC: error at snd_soc_dai_startup on i2s-hifi: -19, but this time it’s only 4 times instead of the previous couple thousand. The dmesg log also shows some failed attempts at loading some sound cards:

[    6.548267] pisound: Reading card info failed: -22
[    6.548312] pisound: pisnd_spi_init failed: -22
...
[    6.657163] vc4_hdmi fef00700.hdmi: Could not register sound card: -517
...
[    6.663315] vc4_hdmi fef00700.hdmi: Could not register sound card: -517

Sound IS working though, using the Kore app to control Kodi I can clearly hear the GUI sounds through the audio jack, so now I’m even more confused.
It seems like the sound device isn’t the main cause of the black screen, so I don’t really now what to make of this. Maybe someone who knows the inner working of fkms vs. kms can explain what exactly the difference here is?

We’ll be updating the kernel version soon. It might be worth waiting for that and seeing if it resolves your issue

Cheers

Sam

1 Like

@sam_nazarko Is there anywhere I can follow the development of this? Like a GitHub issue or something that specifically tracks the kernel update?

You can follow GitHub for commits.

I’ve spent the last few weeks running sudo apt-get update && sudo apt-get dist-upgrade and retrying the HDMI connection every time I see new commits on GitHub, and the newest one finally fixed it for me. Output of uname -a is

Linux osmc 5.10.78-7-osmc #1 SMP PREEMPT Fri Sep 2 03:06:27 UTC 2022 aarch64 GNU/Linux

and cat /etc/*release/

PRETTY_NAME="Open Source Media Center"
NAME="OSMC"
VERSION="October 2022"
VERSION_ID="2022.10-1"
ID=osmc
ID_LIKE=debian

ANSI_COLOR="1;31"
HOME_URL="https://osmc.tv"
SUPPORT_URL="https://osmc.tv"
BUG_REPORT_URL="https://osmc.tv"

Not sure if it just decided to work now for no apparent reason, or if the updates are actually the cause, as it seems I still have the October release, but in any case, hope anyone else stumbling into this problem in the future gets it resolved too. I know I won’t be touching my HDMI cable for a long while.

OSMC crashed during playback and had to restart, lo and behold, no output after the splash screen. Now I’m back to checking for updates every day until something changes.

Which version of OSMC are you now using?

cat /proc/version outputs

Linux version 5.10.78-7-osmc (root@jenkins) (gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2) #1 SMP PREEMPT Fri Sep 2 03:06:27 UTC 2022

and sudo apt-get dist-upgrade does nothing.

This is not the latest version of OSMC.

  1. Login via the command line
  2. Run the following command to add the staging repository:
    echo 'deb http://apt.osmc.tv bullseye-devel main' | sudo tee /etc/apt/sources.list.d/osmc-devel.list
  3. Run the following commands to update: sudo apt-get update && sudo apt-get dist-upgrade && reboot
  4. Your system should have have received the update.

Please see if the issue is resolved.

I also recommend you remove /etc/apt/sources.list.d/osmc-devel.list after updating.

This will deactivate the staging repository. You can do so with the following command:
sudo rm /etc/apt/sources.list.d/osmc-devel.list.

Please note that we will automatically disable this update channel after 14 days on your device in case you forget to do so to ensure that your system reverts to the stable update channel.

1 Like

No luck. Version is now

Linux version 5.15.83-2-osmc (root@jenkins) (gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2) #1 SMP PREEMPT Sat Jan 7 04:20:21 UTC 2023

and still no output after the splash screen.

Do you still get the errors you initially described?

I’d suggest posting some fresh logs and potentially trying a fresh install

Sam

new grab-logs -A and dmesg.

kodi.log has the same error trying to open devices for playback,

2023-01-11 00:22:38.722 T:663      INFO <general>: CAESinkALSA - Unable to open device "default" for playback
2023-01-11 00:22:38.738 T:663      INFO <general>: CAESinkALSA - Unable to open device "sysdefault" for playback
2023-01-11 00:22:38.747 T:663      INFO <general>: CAESinkALSA - Unable to open device "bluealsa" for playback
2023-01-11 00:22:38.750 T:663      INFO <general>: CAESinkALSA - Unable to open device "btaudio" for playback
2023-01-11 00:22:38.751 T:663      INFO <general>: CAESinkALSA - Unable to open device "sysdefault:CARD=vc4hdmi0" for playback
2023-01-11 00:22:38.752 T:663      INFO <general>: CAESinkALSA - Unable to open device "hdmi:CARD=vc4hdmi0,DEV=0" for playback
2023-01-11 00:22:38.752 T:663      INFO <general>: CAESinkALSA - Unable to open device "sysdefault:CARD=vc4hdmi1" for playback
2023-01-11 00:22:38.753 T:663      INFO <general>: CAESinkALSA - Unable to open device "hdmi:CARD=vc4hdmi1,DEV=0" for playback
2023-01-11 00:22:38.753 T:663      INFO <general>: No Devices found - retry: 4

then repeatedly logging

2023-01-11 00:23:39.782 T:664      INFO <general>: CActiveAESink::OpenSink - initialize sink
2023-01-11 00:23:39.782 T:664      INFO <general>: CAESinkALSA::Initialize - Attempting to open device "sysdefault:CARD=vc4hdmi0"
2023-01-11 00:23:39.804 T:664      INFO <general>: CAESinkALSA - Unable to open device "sysdefault:CARD=vc4hdmi0" for playback
2023-01-11 00:23:39.804 T:664     ERROR <general>: CAESinkALSA::Initialize - failed to initialize device "sysdefault:CARD=vc4hdmi0"
2023-01-11 00:23:39.804 T:664     ERROR <general>: CActiveAESink::OpenSink - no sink was returned
2023-01-11 00:23:39.805 T:663     ERROR <general>: ActiveAE::InitSink - returned error

dmesg output doesn’t have the original issue with hdmi-audio-codec, but an error that wasn’t there before is

[    7.157146] brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.bin failed with error -2

Using vc4-fkms-v3d again, successful launch, no sound, kodi.log now omits some devices in the list it was unable to open (probably something related to the hdmi causing the issue then):

2023-01-11 00:42:00.892 T:2568     INFO <general>: CAESinkALSA - Unable to open device "default" for playback
2023-01-11 00:42:00.902 T:2568     INFO <general>: CAESinkALSA - Unable to open device "bluealsa" for playback
2023-01-11 00:42:00.904 T:2568     INFO <general>: CAESinkALSA - Unable to open device "btaudio" for playback
2023-01-11 00:42:00.905 T:2568     INFO <general>: No Devices found - retry: 4

Guess my only option at this point is a clean install, which really sucks because I’ve customized it quite a lot ¯\_(ツ)_/¯.

Pull the ~/.kodi folder over to some other storage location and once you get the clean install done just systemctl stop mediacenter then put that back. That will get Kodi back to where it was.

1 Like

Tried a fresh install, used the osmc installer to install 2022.10-1 onto my SD card. During setup I connected my Pi to my PC monitor.

First try I selected wireless connection in the installer, but after getting into osmc and checking networks I got errors every time I touched anything, the log including hundreds of lines of net.connman.Error.OperationTimeout.

Second try I chose wired and manually set up wireless after setup, which worked just fine. Logged in with ssh and updated adding the repository (e.g. echo 'deb http://apt.osmc.tv bullseye-devel main' | sudo tee /etc/apt/sources.list.d/osmc-devel.list and then sudo apt-get update && sudo apt-get dist-upgrade && reboot).

Once it was done with everything I shut down the Pi, moved it to my TV, connected it aaand… Nothing. Black screen after osmc splash screen, TV doesn’t detect any input.

Here are the new logs shortly after start.
Same errors as last time.

Came here to report that I’m having the exact same issue as OP. Adding my logs https://paste.osmc.tv/kenacizelu in case they might be helpful. Points which are noteworthy are the edid-decode failure. Issue started right after the update. I did not try to update to the staging kernel version yet.

1 Like

Is your issue still present if you comment out the hdmi_safe=1 you added to config-user.txt?

Nope, that is expected to fail on a RPi and it is there for the Vero devices.

I added that as a last resort, when I was trying to determine what the issue was. The problem originally started without hdmi_safe=1 being in the config-user.txt. Adding it didn’t change anything. Observed boot process from turn on till failure is:

  • Boot loader screen is shown
  • Blue OSMC Splash with logo screen is displayed
  • Black screen with TV showing “No HDMI input” however Kodi services are reachable (such as the web interface) via Yatse.