ASUS Zenbook UM5606
Hardware | PCI/USB ID | Working? |
---|---|---|
Touchpad | PS/2 | Yes |
Touchscreen & stylus | PS/2 | Yes |
Keyboard | PS/2 | Yes |
GPU | 1002:150e |
Yes |
NPU | c5:00.1 |
Yes |
Webcam | 3277:0059 |
Yes |
ALS | Yes | |
Bluetooth | 13d3:3608 |
Yes |
SD-card reader | 17a0:9755 |
Yes |
Audio | 1022:15e3 |
Yes |
Wireless | 14c3:7925 |
Yes |
Thunderbolt | 1022:151c |
Yes |
TPM | 1022:17e0 |
Yes |
Fans | Yes |
This page is for the ASUS Zenbook S 16 (UM5606/UM5606WA), although this may help for other 2024 ASUS laptops with the Ryzen 9 AI chips (HX 365/370) such as the ASUS Vivobook S 16 (M5606) and the ProArt P16 (H7606/H7606WV).
Installation
When booting into the Arch Linux ISO, press the e
key to edit the chosen boot option and add the amdgpu.dcdebugmask=0x600
kernel parameter to prevent freezing during installation. This will not be needed after installing, as long as you install linux-mainline-um5606AUR afterwards. However, if you still have problems, it's advised to keep the kernel parameter.
If you're using KDE, you need to run systemctl edit --user plasma-kwin_wayland.service
and add this to the configuration:
~/.config/systemd/user/plasma-kwin_wayland.service.d/override.conf
[Service] Environment="KWIN_DRM_DISABLE_TRIPLE_BUFFERING=1"
Accessibility
The UEFI may be difficult to navigate using screen readers, and it may be difficult to see the boot menu edit options when inputting the temporary kernel parameter. If necessary, you should proceed with the assistance of a sighted person.
Firmware
fwupd shows the CPU/GPU, TPM, SMU, UEFI firmware, NVMe, System firmware (which can have an attestation added), and the webcam. Most of them show as updatable, but no OTA updates have been released as of the time of writing.
There is an important UEFI update that has been posted on ASUS's website -- to apply it, download the "BIOS for ASUS EZ Flash Utility" (not "for Windows") file, extract the contents to a FAT32 formatted USB drive, reboot and go into the firmware setup, and then go into the "EZ Flash" menu. The update can be found here: [1]
Power management
Install linux-mainline-um5606AUR to alleviate most power management problems, including high power usage during suspend and random freezing/hanging.
Fan Control
The firmware supports four fan profiles: standard, quiet, high-performance, and full-performance. Out of the box, it's set to standard, but this can be changed with asus-5606-fan-state-gitAUR.
Wake from suspend
There is currently known a problem when waking up from suspend (s2idle) that the screen will freeze for about 10 seconds. This problem is currently caused by the mt7925e
kernel module failing to properly re-initialize the MT7925 wireless card after resuming. It's fixed in Linux ≥6.14-rc1.
However, as a temporary workaround for older kernel, you can unbind the device from the driver before suspending and later rebind it after resuming. This can be achieved using the following two systemd service units:
unbind-wifi-before-suspend.service
[Unit] Description=Unbind Wi-Fi PCI device before suspend Before=suspend.target [Service] Type=oneshot ExecStart=/bin/bash -c "echo "0000:c3:00.0" > /sys/bus/pci/drivers/mt7925e/unbind" RemainAfterExit=false [Install] WantedBy=sleep.target
bind-wifi-after-resume.service
[Unit] Description=Bind Wi-Fi PCI device after resume After=suspend.target [Service] Type=oneshot ExecStart=/bin/bash -c "echo "0000:c3:00.0" > /sys/bus/pci/drivers/mt7925e/bind" RemainAfterExit=false [Install] WantedBy=suspend.target
Audio
Currently linux-mainline-um5606AUR and Linux ≥6.13 is needed to get audio fully working without sounding tinny.
Bluetooth
Linux ≥6.12 (rc1) is needed to get Bluetooth working. The aptX HD, LDAC, SBC-XQ codecs over Bluetooth have been tested for and work for wireless headphones.
NPU
Currently linux-mainline-um5606AUR, xrt-npu-gitAUR, and amdxdna-driver-binAUR are all needed to get the NPU to work. Tested against the AMD XDNA Linux driver's provided example on the arch-linux
branch of ThatOneCalculator's fork.
GPU
The GPU pretty much all works as expected.
However, GPU screen recording with tools like wl-screenrecAUR and gpu-screen-recorderAUR don't work with mesa 24.2 or 24.3, but does work with mesa-gitAUR (as of 8 December 2024). This will be backported to 24.3 with mesa MR !32542.
ALS
The Ambient Light Sensor (ALS) works out of the box on GNOME, and on wlroots/smithay compositors with wlumaAUR and this configuration:
~/.config/wluma/config.toml
[als.iio] path = "/sys/bus/iio/devices" thresholds = { 0 = "night", 2 = "dark", 5 = "dim", 8 = "normal", 13 = "bright", 15 = "outdoors" } [[output.backlight]] name = "eDP-1" path = "/sys/class/backlight/amdgpu_bl1" capturer = "none"
Keyboard
Backlight
Linux ≥6.12 (rc1) is needed to make keyboard backlight control work.
Function keys
Key | Visible?1 | Marked?2 | Effect |
---|---|---|---|
Fn+Esc |
No | Yes | Enables Fn lock |
Fn+F1 |
Yes | Yes | XF86AudioMuteToggle
|
Fn+F2 |
Yes | Yes | XF86AudioLowerVolume
|
Fn+F3 |
Yes | Yes | XF86AudioRaiseVolume
|
Fn+F4 |
No3 | Yes | Adjusts keyboard backlight |
Fn+F5 |
Yes | Yes | XF86MonBrightnessDown
|
Fn+F6 |
Yes | Yes | XF86MonBrightnessUp
|
Fn+F7 |
Yes | Screen mirroring icon | Super+P
|
Fn+F8 |
Yes | Smiley face icon | Super+.
|
Fn+F9 |
Yes | Yes | XF86AudioMicMute
|
Fn+F10 |
Yes | Yes | XF86Webcam
|
Fn+F12 |
Yes | Icon that looks like ⫽] | XF86Launch1
|
Copilot |
Partial | MS Copilot logo | Registers as Super+Shift , but supposed to input Super+Shift+F23
|
- The key is visible to
xev
,showmethekey
,screenkey
, and similar tools - The physical key has a symbol on it, which describes its function
- The key isn't visible to keycode viewer tools, but it sends a signal that D-Bus picks up on, and GNOME sees it (and shows the OSD popup). The signal looks like this:
signal time=XXXXXXXXX.XXXXXX sender=:1.44 -> destination=(null destination) serial=XXX path=/org/freedesktop/UPower/KbdBacklight; interface=org.freedesktop.UPower.KbdBacklight; member=BrightnessChanged int32 3
Where the int32
can be a value between 0 and 3, denoting which of the four brightness levels the keyboard backlight has been set to (0 = off, 1 = low, 2 = medium, 3 = high).