Troubleshooting

Connection Issues

"Connection failed: NetworkError"

  • PWA: Verify the CMS address matches the domain the player is served from (same-origin requirement). Use Electron or Chromium for cross-origin setups.
  • Electron/Chromium: Check that the CMS is reachable from the player. Try curl https://your-cms.example.com/xmds.php from the player machine.

"Display not authorized"

  1. Go to CMS → Displays
  2. Find your display (status: Waiting)
  3. Click Authorize
  4. Wait up to 30 seconds or press D in the player to force a collection

Player shows "OFFLINE" badge

The player has lost CMS connectivity but is still showing cached content. Check:

  • Network connection on the player machine
  • CMS availability
  • Firewall rules (port 443 for HTTPS, port 9505 for XMR WebSocket)

Display Issues

Black screen

Electron:

# Check PWA files exist
ls -la ~/.local/share/xiboplayer/electron/pwa/

# Reinstall if missing
sudo dnf reinstall xiboplayer-electron

Chromium:

# Check if the server is running
curl http://localhost:8765/player/pwa/

Layouts don't show

  • Check browser console (Electron: Ctrl+Shift+I in dev mode) for download errors
  • Verify schedule has active layouts assigned to this display in CMS
  • Press T to check the timeline — if empty, the schedule hasn't been received yet
  • Press D to check if media is still downloading

Video won't play

  • Install VAAPI drivers for hardware video decode:
    • Intel: sudo dnf install libva-intel-media-driver
    • AMD: sudo dnf install mesa-va-drivers
    • NVIDIA: sudo dnf install libva-nvidia-driver (from RPM Fusion)
  • Check vainfo to verify hardware decode is working
  • HLS streams require network access — they cannot be cached offline

Service Issues

Player won't start

# Check if port 8765 is in use
ss -tlnp | grep 8765

# Try a different port
xiboplayer-electron --port=8080

# Check service logs
journalctl --user -u xiboplayer-electron.service -n 50

Service won't auto-start

# Enable lingering (allows user service without login)
loginctl enable-linger $USER

# Re-enable the service
systemctl --user enable --now xiboplayer-electron.service

# Check status
systemctl --user status xiboplayer-electron.service

Can't exit kiosk mode

  • Electron: Press Ctrl+Shift+F12 for the system tray menu → Exit Player
  • Kiosk: Press Ctrl+R (keyd shortcut) to reconfigure, or SSH in and run pkill xiboplayer
  • From terminal: pkill -f xiboplayer-electron or pkill -f chromium

Performance Issues

High memory usage

  • Check if the content includes very large images or videos
  • The player caps downloads based on device RAM — low-memory devices (< 4GB) use smaller chunks
  • If memory keeps growing, check for layouts with many concurrent video elements

Slow media downloads

  • Press D to see download progress and speed
  • Check network bandwidth to the CMS
  • The player uses 4 parallel download chunks — ensure the CMS/reverse proxy allows concurrent connections
  • Check if a download window is configured in CMS display settings that might be blocking downloads

Kiosk-Specific Issues

Setup wizard doesn't appear

The wizard runs only on first boot when no CMS config exists. To re-trigger:

# Remove existing config and restart
rm -f ~/.config/xiboplayer/config.json
systemctl --user restart xibo-player.service

Or press Ctrl+R (keyd shortcut) to reconfigure.

Screen blanks / goes to sleep

The kiosk disables screen blanking via gsettings and logind, but if it still happens:

# Verify settings
gsettings get org.gnome.desktop.session idle-delay
# Should be 0

# Check logind
loginctl show-session $(loginctl | grep xibo | awk '{print $1}') -p IdleAction
# Should be ignore

Getting Help

  • Check the GitHub issues for your specific player
  • Include logs when reporting issues: journalctl --user -u xiboplayer-electron.service --no-pager -n 100
  • For Electron, include the browser console output (enable with --dev flag)