Laptop monitor not turning on when external monitors are connected at boot

Hey all,

I installed Fedora 42 on my Asus n552vx and have been having trouble with it for days. At first the issue was getting the OS to even load, I found articles online that suggested downgrading the BIOS to a previous version (304 → 300), which helped with that issue!

Now the issue is with the monitors: When external monitors are already plugged in during system boot, they work, but the laptop monitor itself does not work and is set to off. When I don’t have the external monitors plugged in during boot, the laptop monitor works, and I can then plug in the external monitors and all of them work.

The question is why does the laptop monitor not work when everything is plugged in? Having to unplug the monitors before every boot and then plug them back in is a bit unwanted I would say.

I have dual boot with windows 10, all monitors load correctly for windows just to mention.

Here is my inxi -Fxz:

System:
  Kernel: 6.15.10-200.fc42.x86_64 arch: x86_64 bits: 64 compiler: gcc
    v: 15.2.1
  Desktop: GNOME v: 48.4 Distro: Fedora Linux 42 (Workstation Edition)
Machine:
  Type: Laptop System: ASUSTeK product: N552VX v: 1.0
    serial: <superuser required>
  Mobo: ASUSTeK model: N552VX v: 1.0 serial: <superuser required>
    UEFI: American Megatrends v: N552VX.300 date: 08/31/2016
Battery:
  ID-1: BAT0 charge: 24.0 Wh (51.6%) condition: 46.5/36.0 Wh (129.2%)
    volts: 15.0 min: 15.0 model: ASUSTeK ASUS Battery status: discharging
CPU:
  Info: quad core model: Intel Core i7-6700HQ bits: 64 type: MT MCP
    arch: Skylake-S rev: 3 cache: L1: 256 KiB L2: 1024 KiB L3: 6 MiB
  Speed (MHz): avg: 3100 min/max: 800/3500 cores: 1: 3100 2: 3100 3: 3100
    4: 3100 5: 3100 6: 3100 7: 3100 8: 3100 bogomips: 41599
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
  Device-1: Intel HD Graphics 530 vendor: ASUSTeK driver: i915 v: kernel
    arch: Gen-9 bus-ID: 00:02.0
  Device-2: NVIDIA GM107M [GeForce GTX 950M] vendor: ASUSTeK driver: nvidia
    v: 575.64.05 arch: Maxwell bus-ID: 01:00.0
  Device-3: IMC Networks USB2.0 HD UVC WebCam driver: uvcvideo type: USB
    bus-ID: 1-4:2
  Display: wayland server: X.Org v: 24.1.8 with: Xwayland v: 24.1.8
    compositor: gnome-shell driver: dri: iris gpu: i915 resolution:
    1: 1920x1080~60Hz 2: 2560x1440~60Hz
  API: OpenGL v: 4.6 vendor: intel mesa v: 25.1.7 glx-v: 1.4
    direct-render: yes renderer: Mesa Intel HD Graphics 530 (SKL GT2)
  API: EGL Message: EGL data requires eglinfo. Check --recommends.
  Info: Tools: api: glxinfo gpu: nvidia-settings,nvidia-smi x11: xdriinfo,
    xdpyinfo, xprop, xrandr
Audio:
  Device-1: Intel 100 Series/C230 Series Family HD Audio vendor: ASUSTeK
    driver: snd_hda_intel v: kernel bus-ID: 00:1f.3
  API: ALSA v: k6.15.10-200.fc42.x86_64 status: kernel-api
  Server-1: PipeWire v: 1.4.7 status: active
Network:
  Device-1: Realtek RTL8192EE PCIe Wireless Network Adapter vendor: Lite-On
    driver: rtl8192ee v: kernel port: d000 bus-ID: 02:00.0
  IF: wlp2s0 state: up mac: <filter>
  Device-2: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
    vendor: ASUSTeK driver: r8169 v: kernel port: c000 bus-ID: 03:00.1
  IF: enp3s0f1 state: down mac: <filter>
Bluetooth:
  Device-1: SINO WEALTH RK Bluetooth Keyboard driver: hid-generic,usbhid
    type: USB bus-ID: 1-6:4
  Device-2: Realtek Bluetooth Radio driver: btusb v: 0.8 type: USB
    bus-ID: 1-9:5
  Report: ID: hci0 rfk-id: 0 state: up address: <filter> bt-v: 4.0 lmp-v: 6
Drives:
  Local Storage: total: 1.14 TiB used: 15.62 GiB (1.3%)
  ID-1: /dev/sda vendor: LITE-ON model: CV1-8B256 CV1-8B256 size: 238.47 GiB
  ID-2: /dev/sdb vendor: HGST (Hitachi) model: HTS721010A9E630
    size: 931.51 GiB
Partition:
  ID-1: / size: 54.7 GiB used: 15.6 GiB (28.5%) fs: ext4 dev: /dev/sda6
  ID-2: /boot/efi size: 953.7 MiB used: 19.3 MiB (2.0%) fs: vfat
    dev: /dev/sda5
Swap:
  ID-1: swap-1 type: zram size: 8 GiB used: 0 KiB (0.0%) dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 67.0 C pch: 43.5 C mobo: N/A
  Fan Speeds (rpm): cpu: 2600
Info:
  Memory: total: 16 GiB available: 15.5 GiB used: 3.3 GiB (21.3%)
  Processes: 309 Uptime: 7m Init: systemd target: graphical (5)
  Packages: 7 note: see --rpm Compilers: gcc: 15.2.1 Shell: Bash v: 5.2.37
    inxi: 3.3.38

xrandr isn’t even showing my laptop monitor, only the two external ones:

Screen 0: minimum 16 x 16, current 3640 x 1920, maximum 32767 x 32767
HDMI-1 connected 1080x1920+2560+0 left (normal left inverted right x axis y axis) 520mm x 290mm
   1920x1080     59.96*+
   1440x1080     59.99  
   1400x1050     59.98  
   1280x1024     59.89  
   1280x960      59.94  
   1152x864      59.96  
   1024x768      59.92  
   800x600       59.86  
   640x480       59.38  
   320x240       59.52  
   1680x1050     59.95  
   1440x900      59.89  
   1280x800      59.81  
   1152x720      59.97  
   960x600       59.63  
   928x580       59.88  
   800x500       59.50  
   768x480       59.90  
   720x480       59.71  
   640x400       59.95  
   320x200       58.96  
   1600x900      59.95  
   1368x768      59.88  
   1280x720      59.86  
   1024x576      59.90  
   864x486       59.92  
   720x400       59.55  
   640x350       59.77  
HDMI-2 connected primary 2560x1440+0+176 (normal left inverted right x axis y axis) 600mm x 340mm
   2560x1440     59.91*+
   1920x1440     59.90  
   1600x1200     59.87  
   1440x1080     59.87  
   1400x1050     59.86  
   1280x1024     59.76  
   1280x960      59.94  
   1152x864      59.78  
   1024x768      59.68  
   800x600       59.86  
   640x480       59.38  
   320x240       59.52  
   1920x1200     59.88  
   1680x1050     59.85  
   1440x900      59.89  
   1280x800      59.81  
   1152x720      59.75  
   960x600       59.63  
   928x580       59.88  
   800x500       59.50  
   768x480       59.38  
   720x480       59.71  
   640x400       59.20  
   320x200       58.96  
   2048x1152     59.90  
   1920x1080     59.88  
   1600x900      59.82  
   1368x768      59.88  
   1280x720      59.86  
   1024x576      59.90  
   864x486       59.45  
   720x400       59.55  
   640x350       59.77 

inxi -Gxx - here you can see eDP-1 is off:

Graphics:
  Device-1: Intel HD Graphics 530 vendor: ASUSTeK driver: i915 v: kernel
    arch: Gen-9 ports: active: HDMI-A-1,HDMI-A-2 off: eDP-1 empty: DP-1
    bus-ID: 00:02.0 chip-ID: 8086:191b
  Device-2: NVIDIA GM107M [GeForce GTX 950M] vendor: ASUSTeK driver: nvidia
    v: 575.64.05 arch: Maxwell pcie: speed: 2.5 GT/s lanes: 8 bus-ID: 01:00.0
    chip-ID: 10de:139a
  Device-3: IMC Networks USB2.0 HD UVC WebCam driver: uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 bus-ID: 1-4:2 chip-ID: 13d3:5666
  Display: wayland server: Xwayland v: 24.1.8 compositor: gnome-shell
    v: 48.4 driver: gpu: i915 display-ID: 0
  Monitor-1: HDMI-A-1 model: Samsung S24F350 res: 1920x1080 dpi: 94
    diag: 598mm (23.5")
  Monitor-2: HDMI-A-2 model: Dell S2722QC res: 3840x2160 dpi: 163
    diag: 685mm (27")
  Monitor-3: eDP-1 model: LG Display 0x04d4 res: 3840x2160 dpi: 284
    diag: 395mm (15.5")
  API: OpenGL v: 4.6 vendor: intel mesa v: 25.1.7 glx-v: 1.4 es-v: 3.2
    direct-render: yes renderer: Mesa Intel HD Graphics 530 (SKL GT2)
    device-ID: 8086:191b display-ID: :0.0
  API: EGL Message: EGL data requires eglinfo. Check --recommends.
  Info: Tools: api: glxinfo gpu: nvidia-settings,nvidia-smi x11: xdriinfo,
    xdpyinfo, xprop, xrandr

I have searched online and have been working on this for days, any help with this would be great. If you need any more info just let me know and I will provide it.

Thanks!

Can you login still? If so have a look in the System-Settings - Display & Monitor.

Do you see a check box to turn the laptop screen on? (I don’t have a 2 monitor setup to test with, so I’m going by memory).

Does KDE remember this setting when you reboot?

Yes I can login, but if I boot the laptop with the screens connected, the display settings tab doesn’t show any options for the laptop display, only the external ones.

My (hopefully) temporary fix for this is every time I either restart or just turn on the laptop, I remove the HDMI cable, and then from the moment the Asus logo shows on the laptop display, I can plug the HDMI cable back in and all monitors work. I just want to fix it so that I don’t have to unplug it every time.

The laptop display may be disabled before linux boots. Ideally there would be an option in UEFI/BIOS settings.

Have you looked for vendor firmware updates?

Unfortunately Asus doesn’t have any graphic settings in the UEFI/BIOS settings. But yes, it seems the laptop display is disabled before linux boots, but, it is the same for windows, the difference is that windows turns the laptop display on at some point, while linux doesnt.

Yep, didn’t find any.

I see lots of laptop specific code going into the linux kernel these days.
I wonder if enabling the laptop screen is something else the kernel needs vendor specific code for?

Yes, but accomanpied by efforts to replace vendor specific code with “standards” used by multiple vendors. If vendors don’t update firmware, older laptops may lose functionality.

1 Like

Just updated to kernel 6.16, hoping it would maybe fix the issue but it did not, sadly.

Please provide details of the issue:

  • which OS version failed to load?
  • what error messages did you get?

You may need the 304 version to better support recent kernels. With a newer kernel. it is possible the update may not prevent loading, but since 304 is from 2020, it may still not fully support current kernels.

You may have to use command-line tools to manage the laptop screen. https://wiki.archlinux.org/title/Display_Power_Management_Signaling has some examples, but predates Wayland.

https://www.baeldung.com/linux/cli-monitor-turn-on-off has examples of command-line methods to turn displays on and off using vbetool, xset, or xrandr. These rely on the DPMS standard to control monitor power. In the distant past, Fedora provided a vbetool package. It is still present in Debian.

Fedora provides xrandr, but I have seen comments that some capabilities are not supported in Wayland.

I found a user manual: https://dlcdnet.asus.com/pub/ASUS/nb/N552VX/0409_E10589_N552VX_C.pdf, but it doesn’t appear to mention DPMS, so you will need to experiment with your hardware.

Fedora 42 is what failed, with different kernals also (14, 15, 16).

When I would turn on the computer, it would just show a blank sreen after boot. I had the 304 BIOS, downgrading to 300 fixed that issue. That is no longer an issue.

The only issue now is the laptop monitor not being turned on after boot when a monitor is connected through HDMI. I have to have the monitor unplugged, turn on the computer, wait for the laptop screen to turn on, and then plug the HDMI in. Windows seems to handle this by turning on the laptop monitor after boot. Linux fedora doesn’t seem to be doing this.

Glad you got Fedora working. As you can see from the linked articles on display power management, problems with enabling displays are not unusual and may need some command-line tools. Once you find the right command-line mechanism, there are ways to automate them so system boots without having to mess with unplugging cables. Vendors that focus on Windows will spend time making sure things work properly, but with linux they leave solving such problems to the user community.

I spent a few days working with command line and trying to create processes that will turn on the laptop display. I searched online, tried what ever I found, used AI chats to set quite a lot of different things up and just tried so many different things, but nothing seemed to work.

Then I came here to ask as a last resort before I gave up.