Dell XPS 13 (7390)

From ArchWiki
Jump to navigation Jump to search
Device Status Modules
Video Working i915
Wireless Working iwlwifi
Bluetooth Working btusb
Audio Working snd_hda_intel
Touchpad Working hid_multitouch (mousedev)
Webcam Working ?
USB-C / Thunderbolt 3 Working thunderbolt
Wireless switch Working intel_hid
Function/Multimedia Keys Working ?

Video

Install acpilight to set the display backlight with xbacklight. Add the following udev rule and your user to the video group:

/etc/udev/rules.d/90-backlight.rules
SUBSYSTEM=="backlight", ACTION=="add", \
  RUN+="/bin/chgrp video /sys/class/backlight/%k/brightness", \
  RUN+="/bin/chmod g+w /sys/class/backlight/%k/brightness"

It might be necessary to supply the acpi_backlight=vendor kernel parameter, see backlight.

Screen glitching or flickering

Some units show screen glitching or flickering, to fix this add i915.enable_psr=0 to your Kernel parameters.

Warning: Enabling this kernel parameter may reduce battery life

Grub

/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.enable_psr=0"

And then automatically re-generate the grub.cfg file with:

# grub-mkconfig -o /boot/grub/grub.cfg

Battery

It is possible to set the start and stop charging thresholds similar to TLP for ThinkPads using dell-command-configureAUR.

Example:

# /opt/dell/dcc/cctk --PrimaryBattChargeCfg=custom:75-80
PrimaryBattChargeCfg=Custom:75-80

To reset the thresholds at reboot simply add a cronjob:

@reboot /opt/dell/dcc/cctk --PrimaryBattChargeCfg=custom:50-80

To reset battery tresholds using a systemd-timer and a corresponding unit:

edit /etc/systemd/system/dell_battery.timer:

/etc/systemd/system/dell_battery.timer
[Unit]
  Description=Set chraging tresholds for battery
  
  [Timer]
  OnBootSec=5
  
  [Install]
  WantedBy=timers.target

edit /etc/systemd/system/dell_battery.service:

/etc/systemd/system/dell_battery.service
[Unit]
  Description=Set chraging tresholds for battery
   
  [Service]
  ExecStart=/usr/local/bin/dell_battery_tresholds.sh
  RemainAfterExit=yes
  
  [Install]
  WantedBy=default.target

edit /usr/local/bin/dell_battery_tresholds.sh:

/usr/local/bin/dell_battery_tresholds.sh
#!/bin/bash
  /opt/dell/dcc/cctk --PrimaryBattChargeCfg=custom:75-87

make the script executable:

$ chmod +x /usr/local/bin/dell_battery_tresholds.sh

activate the timer:

# systemctl enable dell_battery.timer

Function/Multimedia Keys

Function Key Status Description Key
Fn + F1 Working Mute audio XF86AudioMute
Fn + F2 Working Decrease volume XF86AudioLowerVolume
Fn + F3 Working Increase volume XF86AudioRaiseVolume
Fn + F4 Working Play previous track/chapter XF86AudioPrev
Fn + F5 Working Play/Pause XF86AudioPlay
Fn + F6 Working Play next track/chapter XF86AudioNext
Fn + F7 Working Task view sends Super + Tab followed by a key with keycode 0x0
Fn + F8 Working Switch to external display sends Super + p
Fn + F9 Working Search XF86Search
Fn + F10 Working Toggle keyboard backlight
Fn + F11 Working Print screen Print
Fn + F12 Working Insert Insert
Fn + Home Working Toggle wireless XF86RFKill
Fn + End Working Sleep XF86Sleep
Fn + Up Working Increase brightness XF86MonBrightnessUp
Fn + Down Working Decrease brightness XF86MonBrightnessDown

Keybindings

Check out Keyboard shortcuts#Customization, your DE/WM's documentation or the relevant articles in the wiki (e.g. backlight, PulseAudio#Keyboard volume control, ...) to learn how to set up keybindings and shortcuts for your environment.

Volume keys

Tango-edit-clear.pngThis article or section needs language, wiki syntax or style improvements. See Help:Style for reference.Tango-edit-clear.png

Reason: Xkeybinds is one program and not a general approach, better to refer to more general wiki entries on keybindings. (Discuss in Talk:Dell XPS 13 (7390)#)

Use xbindkeys to map the volume buttons.

~/.xbindkeysrc
# Increase volume
"pactl set-sink-volume @DEFAULT_SINK@ +1000"
   XF86AudioRaiseVolume

# Decrease volume
"pactl set-sink-volume @DEFAULT_SINK@ -1000"
   XF86AudioLowerVolume

# Mute volume
"pactl set-sink-mute @DEFAULT_SINK@ toggle"
   XF86AudioMute

Change thermal settings to reduce fan noise

Under default setting, the thermal tables controlling fan speed are fairly aggressive; they apparently try to keep the CPU below 40 degrees celsius. This is useful to have a large thermal buffer for spikes in CPU usage, but it does keep the fan constantly running even when idle (depending on ambient conditions).

The smbios-thermal-ctl utility can be used to select one of four pre-defined thermal profiles. Ensure libsmbios is installed. Then, run

# smbios-thermal-ctl -i

to see the supported profiles. Executing

# smbios-thermal-ctl --set-thermal-mode=Quiet

gave a silent-in-idle operation under light use in a warm room. See Dell XPS 13 (9370)#Thermal Modes / Fan profiles for more information.

References