I have a box running kodi in standalone mode with X11. My TV displays “no signal” if I leave it for too long, does anyone know how to stop this from happening?
I can still ssh into the box and use the remote app Kore so the system hasn’t suspended or anything like that.
Pressing up/down etc on the kore remote, which should change what is displayed on screen, doesn’t wake kodi up. However, I can wake it up if I tell Kodi to play a video.
Edit /etc/X11/xorg.conf.d/10-monitor.conf and set dpms to false
Thanks, I will try this and let you know if it works. The file didn’t exist so I created it with the following contents because I saw online the option is supposed to go in the monitor section:
Section “Monitor” # Identifier “???” Option “dpms” “false” EndSection
I don’t know what the identifier should be so I haven’t set it.
---- edit
That didn’t work for me, I got this error and kodi won’t start
[ 4.485] Parse error on line 6 of section Monitor in file /etc/X11/xorg.conf.d/10-monitor.conf This section must have an Identifier line. [ 4.485] (EE) Problem parsing the config file [ 4.485] (EE) Error parsing the config file [ 4.485] (EE) Fatal server error: [ 4.485] (EE) no screens found(EE) [ 4.485] (EE) Please consult the The X.Org Foundation support at http://wiki.x.org for help. [ 4.485] (EE) Please also check the log file at “/var/log/Xorg.0.log” for additional information. [ 4.485] (EE) [ 4.485] (EE) Server terminated with error (1). Closing log file.
I can’t work out what that display should be called though
kodi@kodi:~$ sudo xrandr Can’t open display
kodi@kodi:~$ sudo xdpyinfo | grep -A4 ‘^screen’ >xdpyinfo: unable to open display “”.
Any ideas?
Apparently you can put whatever you like in the identifier field and it’s not verified by X. So I changed to
Section “Monitor” Identifier “TV” Option “dpms” “false” EndSection
That got rid of the error but it still wasn’t working.
Trying another method with xset:
kodi@kodi:~$ xset -dpms xset: unable to open display “”
I figured out I need to specify a display since I’m connecting with ssh:
DISPLAY=:0 xset -q
This shows me that dpms was still on even after rebooting with the /etc/xorg.conf.d/10-monitor.conf file in place.
Anyway I ran the following commands:
DISPLAY=:0 xset -dpms DISPLAY=:0 xset s off DISPLAY=:0 xset s noblank DISPLAY=:0 xset s noexpose DISPLAY=:0 xset s 0 0
The commands are explained here: https://wiki.archlinux.org/title/Display_Power_Management_Signaling
Now an xset query returns:
kodi@kodi:~$ DISPLAY=:0 xset -q Keyboard Control: auto repeat: on key click percent: 0 LED mask: 00000000 XKB indicators: 00: Caps Lock: off 01: Num Lock: off 02: Scroll Lock: off 03: Compose: off 04: Kana: off 05: Sleep: off 06: Suspend: off 07: Mute: off 08: Misc: off 09: Mail: off 10: Charging: off 11: Shift Lock: off 12: Group 2: off 13: Mouse Keys: off auto repeat delay: 660 repeat rate: 25 auto repeating keys: 00ffffffdffffbbf fadfffefffedffff 9fffffffffffffff fff7ffffffffffff bell percent: 50 bell pitch: 400 bell duration: 100 Pointer Control: acceleration: 2/1 threshold: 4 Screen Saver: prefer blanking: no allow exposures: no timeout: 0 cycle: 0 Colors: default colormap: 0x20 BlackPixel: 0x0 WhitePixel: 0xffffff Font Path: /usr/share/fonts/X11/misc,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,built-ins DPMS (Energy Star): Standby: 600 Suspend: 600 Off: 600 DPMS is Disabled
I also added the commands above to ~/.xinitrc so hopefully they will be run automatically every time
– edit:
So, although those xset commands work I have to run them every time, the commands in .xinitrc clearly aren’t being run.
I have a feeling this is because kodi is being started using xinit run from a systemd unit file so it isn’t reading /kodi/home/.xinitrc.
So the plan is to set the home environment variable in the unit file (like below) and see if that works. Will test when the box is free.
Environment=“HOME=/home/kodi”
I spent a few years looking for this solution. I will be able to check the exact config on that system tomorrow. If I forget to reply just send me a message.
The system has an intel onboard gpu, some low powered cpu with hdmi out. It’s running Arch with Mesa drivers, hooked directly to TV.
Thanks, I’m pretty sure I found a solution a few years ago but didn’t write it down. Then the drive failed so I had to set everything up from scratch again!
Finally found a solution that works to disable power management! I added the following line to the service section of my systemd unit file:
ExecStartPost = /usr/bin/sh -c ‘DISPLAY=:0 xset s off -dpms’
If I check with the command below I can see DPMS is off
DISPLAY=:0 xset -q
You can also simply turn dpms off in a startup script run when your user session starts. The command is
xset -dpms
Thanks, in this case that wasn’t suitable for me because it wasn’t a full desktop environment, just Kodi in standalone mode. So there was no easy way to run the command like there would be on a desktop or laptop, I had to add it to my systemd unit file.
Sounds fine is there any benefit to running kodi in standalone mode vs fullscreen at startup in a simple wm?
I think standalone mode is just the normal binary with some preset options enabled to allow better control of system/screen settings, auto mounting USB drives etc.
deleted by creator
What Linux distro and what desktop environment?
Debian 12 No desktop environment, I’m running kodi in standalone mode via xinit (my systemd unit file is like the one below):
https://github.com/graysky2/kodi-standalone-service/blob/master/x86/init/kodi-x11.service