When plugging in an external monitor via micro-hdmi, the whole system freezes. I can’t even connect via SSH anymore to reboot. Only a hard shutdown via the OLED menu works.
I’m running Sway.
EDIT: When booting with an HDMI monitor connected, the boot messages only use half the internal display and the external screen receives no signal, even though swaymsg -t get_outputs lists both. When unplugging the HDMI cable from that state, the system also fully freezes.
I have similar issues to report, I have a feeling this is 6.15.4 regression, HDMI was a bit more stable before the latest update, now it’s barely usable.
I’m on Sway as well, my external screen is QHD, I’ll test on FHD tomorrow
Plugging HDMI when Pocket is working twice resulted in a reboot, like power cycle (Pocket screen quickly dimmed without change in picture), other times it’s fine
Unplugging HDMI didn’t give me freezes or reboots
Bizarrely, external display blinks all the time ONLY when I have Firefox/Chromium as a sole window on that workspace. It doesn’t blink at all if the space is split between say a browser and a terminal, or a browser and Thunar. Dillo browser doesn’t trigger blinking for some reason, but NetSurf does!
Pocket display doesn’t blink at all
I can see more color artifacts in both Firefox and Chromium, like blinking on the header of wiki.archlinux.org (sorry, don’t have a camera in the camp, will post the video later)
In dmesg all I can see is an occasional dwhdmiqp-rockchip fdea0000.hdmi: Rate 241500000 missing; compute N dynamically , no error messages
For more context: when I just received my Pocket that HDMI wasn’t working at all, no matter what I did (didn’t recognize any displays/cables, dead silent in logs). Turned out that RK3588 SOM itself was faulty, I had to use a warranty, it worked after replacement.
Looks like all my woes with HDMI were due to bad cables and microHDMI adapters. I’ve used Raspberry Pi microHDMI output as a reference, thinking that if it works on Raspberry Pi and stable - it should work on Pocket.
Turns out that assumption was incorrect. Pocket seems to be quite a bit more sensitive to cable/adapter quality. When I replaced my cable and adapter with some premium ones - all issues went away, it’s been rock solid for few hours. I even switched to QHD@144Hz and it still works great.
Cable/adapter quality shouldn’t be the deciding factor whether the whole system locks up though.
And I can’t always choose the cable anyway. Pretty much the only time I use an external display is when plugging into a projector for a presentation and those cables are usually fixed.
You are absolutely right (although microHDMI adapter I have to bring usually), I was just reporting my findings. Also I’ve found that FHD mode works fine at 60 Hz even with some sketchy cables, and projectors around me are FHD at best, maybe I’ll see some issues with higher resolution.
I am using HDMI all the time but normally at max. 1440p@120Hz resolution. @selfawaresoup which monitor model(s) did you try that make the Pocket freeze with 6.15? Does the system also freeze when connecting/disconnecting outside of sway, on the linux console?
Edit: to rule out some kind of power/brownout issue (there’s a 5V connection going on with HDMI), are there any other peripherals connected at the same time (USB?), and is the Pocket on a power supply or running from batteries?
I did some more testing. I tried connecting to my HP Z27 monitor and to my Lilliput 7’’ field monitor, both resulted in freezes both ohn plugging in and unplugging.
I’m using a ugreen microHDMI adapter.
External power vs battery power doesn’t seem to make a difference either.
When booting while an external display in connected, the machine boots as normal, but there’s no signal on the HDMI display’s side.
OK, it’s notable (and a bit strange) that the system doesn’t freeze when HDMI is connected before boot. If you stay in the Linux console (Sway not loaded), with HDMI not plugged in initially, and then plug in HDMI, does it freeze? Can you execute dmesg -n7 and then dmesg -w before doing that as root? Do you get any console output before it freezes?
If you boot with HDMI already plugged in, and then run Sway, could you try swaymsg -t get_outputs and paste the result here? Does the HDMI output show up at all?
EDIT: I see that you already mentioned get_outputs in the original post, sorry. Could you try something like this:
With the 6.15.6+1-mnt-reform-arm64 kernel from @josch’s trixie-backports (https://reform.debian.net/debian), the HDMI freeze issue is resolved. I can plug in a display, it get’s detected, I can use it, and when I unplug it everything returns to normal too.
There’s some residual weirdness when playing (some?) games, for example Super Hexagon: If I launch it on the external display, the game seems to only be aware of half the screen width, but die render fullscreen somehow.
For comparison: how it looks on the external display vs the internal one
I’m happy that this is an acceptable workaround for you. HDMI is weird. It works fine for me with kernel 6.12 on the RK3588 Reform with the projector in our lecture hall that I connect the Pocket to via hdmi…
I discussed with @minute yesterday that maybe it’s something weird about my system due to the way I downgraded sid to Trixie and maybe it would work fine on a fresh Trixie image, but I still need to test this for real.
Just an update for others from this thread, an upgrade of the kernel module to 6.15.4 fixed the issue. The issue manifested on kernel 6.12 on the Debian stable (unofficial) system.