MagicMirror² v2.14.0 is available! For more information about this release, check out this topic.

Using vc4-kms-v3d lost control on tvservice

  • Hi,

    recently using latest 2.4.1 i wanted to use the dtoverlay=vc4-kms-v3d to offload rendering effort of electron to GPU. That is working great, CPU usage decreased.

    However I noticed that my screen blanks sometimes. After a little bit of digging I recon I used the “tvservice -o” and “tv-service -p” in cron to schedule the LCD monitor off/on. (I’ve old monitor which is not power efficient and heats a lot in the mirror chasis - so when I’m not using it I scheduled cron to turn on/off the monitor for night etc)

    So now when vc4-kms-v3d is enable I can turn monitor off by using “tvservice -o”, but when it’s again time to turn that off the tvservice is thinking there is no monitor at all. As a result i’m not able to resurrect the monitor again. I can do reboot and obviosly it’s fine.
    Also notice then commands like “vcgencmd display_power 0/1” has also no control of monitor over vc4-kms-v3d .

    Do you guys know how I can control the monitor ? (it’s not CEC anyhow)

    If I use f(ake)-kms will that help to control it?

    some src:


  • @gregoryorciuch I am in the exact same boat as you, and I have not had any luck as of yet. Tried the normal overlay and the “fake” kms, to no avail. To be honest, I’ve just given up for a little bit until people that know what they’re doing have found a solution or the drivers are more stable. I might just do a fresh raspbian install and start anew, to see if that fixes things.

    As a side note that doesn’t help much right now, using ‘vcgencmd monitor_on’ (or ‘off’) if you’re able is much, much better than ‘tvservice’.

  • @pyrosmiley thanks for sharing your experience. Actually because I cannot wakup the screen I put /sbin/reboot in crontab, that is nasty solution but works. But it costs the reboot.

  • @gregoryorciuch Yeah, it’s an ugly solution, but it works! I’d do the same, but my screen is blanking after about 25 minutes at most, and I just can’t justify a full reboot ever half hour.

  • @gregoryorciuch I just remembered – are you using a PIR sensor? It seems like that’s been the source of the problem for a lot of people, and there seems to be a fix. Unfortunately, I am not so that doesn’t impact me and I didn’t remember to mention it.

  • Hi Gregory
    tvservice isnt compatible with the KMS driver, you need to use fkms to retain that compativility

  • @cdelaorden I’ve changed the driver from kms to fkms and tvservice commands are now working as is display_rotate=1 in config.txt which is great, the issue I now have is transitions on the screen, compliments changing, news headlines etc are not smooth at all in fact they are quite jittery, any suggestions?

  • @bradau no sorry, thats not my case

    if you dont have any problem with the full kms maybe you will have to search of a tvservice alternative, something that works on any linux desktop and not specific to RPI

Log in to reply