ASUS TUF DASH F15 (2022)
This page contains instructions and tips for configuring Arch Linux on the ASUS TUF DASH F15 Laptop.
Hardware | PCI/USB ID | Working? |
---|---|---|
Touchpad | Yes | |
Keyboard | Yes | |
GPU (Intel) | 8086:46a3 | Yes |
GPU (NVIDIA) | 10de:25a0 | Yes |
Webcam | 322e:202c | Yes |
Ethernet | 8086:1a1e | Yes |
Bluetooth | 8087:0026 | Yes |
Audio | 8086:51c8 | Yes |
Wireless | 8086:51f0 | Yes |
TPM | Untested |
Accessibility
This laptop uses the standard American Megatrends UEFI interface, it is very bright and has both simple and advanced mode (F7
to swap between them). It has touchpad support in both modes though scrolling does not work in advanced mode meaning you need to use the keyboard to navigate the longer menus.
Simple mode provides basic functions in a visual manner using defined box areas the user can click to open a sub menu. Most normal operations can be done here using either the keyboard or touchpad. This mode should not be difficult for visually impaired users to navigate.
Advanced mode is a more traditional menu driven layout. It is simply text on a coloured background and while the touchpad does work, scrolling does not so the keyboard must be used for most menus. This mode might be difficult for users with a visual impairment to navigate.
Installation
This section contains instructions for installing and configuring Arch Linux
Kernel parameters
The kernel parameter is required for the laptop to successfully boot if using the proprietary NVIDIA GPU driver (or the variant, see the note in NVIDIA#Installation). It is not required if using or .
ASUS Linux
Advanced power management (Laptop Power Profile selection, battery charge limit and Panel Overdrive) need the ASUS Linux stack installed and running.
Install asusctlAUR then start/enable .
Keyboard RGB control
As of October 2022, there is no way to control the keyboard RGB from Linux yet. Brightness control for the RGB does work using the function keys.
A kernel patch which adds TUF laptop support to the kernel module is available, has been submitted and is expected to be mainlined in kernel 6.1.
Adventurous users can find the patch on asus-linux GitLab.
See Kernel#Compilation for instructions on compiling a custom kernel.
Battery charge status
Since Kernel version 5.11 the battery charge polling issue has been fixed in the mainline kernel. Running the G14 kernel from Asus Linux is now no longer necessary.
Firmware
Other than changing the boot device order, no firmware changes are required for this laptop.
supports this device.
Secure Boot
Firmware will allow you to easily put Secure Boot into Setup/Custom mode so you can deploy your own keys with .
There is no need to reset the TPM state to put firmware into setup mode, and also, if you have a usb thumbdrive with your CA files, or they are placed inside your ESP, you can deploy these certificates directly from the firmware as well.
Also, right after deploying your CA information, this laptop firmware will delete any additional EFI external drive boot entry it might have configured(USB, CD, PXE).
Switching to the dedicated NVIDIA GPU
Cleaning Up Old Files
It is very important you start out with no existing configuration files in place from any of the Optimus Laptop managers and/or nvidia-xconfig. optimus-managerAUR provides all of its own configs and existing files can interfere with its operation.
Ensure there are no files relating to Optimus, Bumblebee, supergfxctl, NVIDIA or Intel in any of the following locations.
/etc/X11/xorg.conf.d/ /etc/modprobe.d/ /etc/udev/rules.d/
If they exist, you should also delete or rename from /etc/X11/
Initramfs
Do not include or any of the NVIDIA modules in your early start up filesystem. Doing so can affect the discrete GPUs ability to properly power down.
Edit and remove i915 and all NVIDIA modules from the modules section then regenerate the initramfs.
Kernel Parameters
Adding additional kernel parameters manually is not necessary when using optimus-managerAUR, it handles everything including blacklisting nouveau when running the discrete GPU and power management functions of the discrete GPU.
Installation
Install the optimus-managerAUR package.
Configuration
You should edit optimus-manager.conf
at before you start/enable .
The laptop fully supports NVIDIA fine grained power management which allows the discrete GPU to fully power down when not in use meaning there really should be no need to ever switch from hybrid mode however from testing, forcibly removing the card from the bus and powering it down does offer a slight increase in battery time over hybrid mode. Ultimately the choice is yours, luckily both options are easily handled and can co exist happily.
If you want to use hybrid mode and allow the GPU to handle its own power state then change the following
If you plan to manually switch between modes as your need dictates and would like the extra battery time then first you need to install (or if using a custom kernel) then change the following
Finally, for either scenario you need to change the following
/etc/optimus-manager/optimus-manager.conf
... [intel] driver=modesetting ...
Now start/enable . Using mode allows the GPU to power itself down and mode will forcibly remove the card from the bus and power it down.
Switching Modes
offers 3 modes, those are , and .
To switch between modes simply use
$ optimus-manager --switch MODE
Using the NVIDIA GPU in hybrid mode
NVIDIA drivers since version 437.17 have Prime GPU rendering offload support included.
See PRIME#Configure applications to render using GPU for details on how that works.
D-Bus notifications
Notifications provide feedback when a setting is changed using asusctl
and are especially useful when a setting has been bound to a custom keyboard shortcut. They are provided by the user unit which needs to be started/enabled.
Tips and tricks
To maximize the battery life, follow the general tips at power management.
Battery charge limit
Setting a limit to the battery charge can be useful to preserve its longevity when the laptop is used as a static workstation for long period of times. Set your preferred limit (in percent, from 20 to 100) using:
# asusctl -c 60
60% is usually considered a stable charge state for lithium-based batteries.
Power profile
The power profile controls three settings: CPU scaling (only on Intel CPUs), Boost mode and fans speed. By default, three profiles are provided: , and . Custom profiles can be defined.
is automatically bound to switch power profile. This will imitate the way the original ASUS service works on Windows. Notifications should be enabled in order to know which profile is selected each time the shortcut is pressed. A specific profile can be manually selected using:
# asusctl profile -P quiet
Disabling turbo boost
While not necessarily saving power, some user prefer to disable turbo boost for smoother power delivery and less heat. To temporarily disable boost, execute the following:
# echo 0 > /sys/devices/system/cpu/cpufreq/boost
Or use the power profiles from asusctl
to handle this automatically, as explained in #Power profile.
Function Keys
These is the list of functions keys and how they are handled by the system. Some of them like Fn+F2
are not visible to meaning they are hardwired or lack of additional implementation to better handle them since they behave differently on Windows.
The first four keys on the following table are the dedicate buttons located right above to and since they are dedicated multimedia keys, combination isn't needed.
Key | Visible? | Marked? | Effect |
---|---|---|---|
Volume Down | Yes | Yes | . |
Volume Up | Yes | Yes | XF86AudioRaiseVolume . |
Mic Mute | Yes | Yes | Function key. |
Asus Key | Yes | code 202 . This key has a generic stamp on it which is bound to Asus internal design. | |
Yes | Yes | . | |
Fn+F2 | Yes | Lower keyboard brightness directly through hardware. | |
Yes | Raise keyboard brightness directly through hardware. These two keyboard brightness behave differently on Windows, changing also led style/patterns. | ||
Yes | code . Function named "Aura" which does not explain it's meaning | ||
A key with a Fan icon on it, which on Windows is used to change fan profiles. Does not work however, a merge request to fix that is already in place | |||
Yes | Yes | Shortcut to + Shift + , which is the screenshot crop hotkey for Windows. Keycap logo makes sense in some way. | |
Yes | Yes | . | |
Fn+F8 | Yes | Yes | . |
Yes | Yes | Shortcut to + , which is the external monitor tool for Windows. Keycap logo makes sense. | |
Yes | Key maps to (press and release) and after that a sequence of + code 85 keystroke. Logo seems to be a crossed touchpad but prints out this unusual sequence. | ||
Yes | Yes | code . Little Zzz on key makes it meaningful. | |
Key should be Airplane mode but does not show on libinput, neither disables network interfaces. | |||
Yes | Yes | KEY_PAGEDOWN code . | |
Yes | Yes | code 104 . | |
Yes | Yes | code . This laptop has a dedicated Home key at the top of the numpad, and this key combination for it as well. | |
Yes | Yes | code . | |
Yes | Yes | KEY_INSERT code . This laptop has these dual keys around the numpad, some of them repeating keys that are elsewhere. | |
Yes | Yes | No effect so all. Pressing or Pause it will issue code on both cases | |
Yes | Yes | It will send BOTH keys, and in that sequence, no matter if using or . Really weird. | |
Yes | Yes | code . | |
Fn+Numpad Enter | Yes | Yes | . |
Yes | Yes | code 127 . | |
Yes | Issuing this key combination will lock into sending code , until you issue again to change this behavior. | ||