Framework Laptop: Issues & Feedback

Author: Jonathan Vasquez <jon@xyinn.org>
Last Updated: 2022-01-19
Tested on: Linux Mint 20.3 (5.13.0-25-generic)
BIOS Version: 3.07 (Originally the computer came with 3.06)

General Statement

Overall, this computer is amazing and I'm extremely happy to have purchased it and support the Framework folks. Having full control of the repair process (basically) and also having a "modular laptop" is something I've been wanting to have for a long time and the Framework laptop is an excellent base to start that ecosystem with. The below findings are nothing critical (since we have a workaround) but it of course means we don't have the most optimal and enjoyable OOTB experience and "papercuts" accumulate over time which will be burdensome for the user.

Issues

Hardware Support

Since I'm using Linux Mint (Originally 20.2 but I've upgraded to 20.3 since I originally wrote this page), it ships with a 5.4 kernel - which is too old for this laptop. You'll need at least a 5.13 kernel in order for everything to work smoothly. Maybe you could use 5.11 but I haven't tested that kernel. You can use Linux Mint's Kernel Management feature from within the Update Manager (Update Manager -> View -> Linux Kernels) in order to get other kernels easily installed. I deleted the 5.4 kernels afterwards through the same window since I'm never going to use them.

Touchpad

The touchpad will lose most gesture support and other basic functionality after sleep/resume. The workaround is to restart the hid-multitouch driver. We can automate the restart of the driver by adding this small script to the following file: /lib/systemd/system-sleep/touchpad

#!/bin/sh

case $1 in
  post)
    modprobe -r hid-multitouch
    modprobe hid-multitouch
    ;;
esac

Screen Resolution

The resolution of the screen yields a very awkward experience where if using a single monitor setup (Just the laptop), 100% is too small, and 200% is very sharp but we lost a lot of space.. and in a multi-monitor set up they are either both 100% or both 200% which is not good either. This is the standard "Fractional Scaling Issue" that affects a lot of users. Linux Mint 20.2 (And particularly as of Cinnamon 4.6) has Fractional Scaling support. This allows me to set different scaling options (i.e 100%, 150%, 200%, etc), but also allows each monitor to have a different scale. This has basically solved, the most glaring issues, but obviously because the Framework screen itself has to be pretty much be at 150% for me to feel comfortable with the space I have remaining, I have to sacrifice the crispness for the real estate.

Battery

The battery seems to be pretty bad, at least out of the box. Putting the computer to sleep before I went to bed (without me leaving the laptop plugged in) ended up with me either waking up to a battery that was almost dead, or completely dead. Investigating this issue yielded the following discussion. It seems my computer was on [s2idle] deep rather than s2idle [deep] (Meaning the sleep mode wasn't set to deep. You can see the output of the current settings before and after temporarily switching it to deep:

jon@leslie:~$ cat /sys/power/mem_sleep 
[s2idle] deep

jon@leslie:~$ echo deep | sudo tee /sys/power/mem_sleep         
deep

jon@leslie:~$ cat /sys/power/mem_sleep 
s2idle [deep]

To make this change permanent (at least in my distro), you'll need to update the grub bootloader settings.

  1. Edit /etc/default/grub
  2. Add the following to your GRUB_CMDLINE_LINUX variable: mem_sleep_default=deep.
  3. Save the file and run: sudo update-grub.

After rebooting, re-run the above commands and make sure that deep is selected.

As for how good the battery is during daily use, it seems to last a good amount of time, a few hours at least depending on what you are doing. I'll update with more useful results when I spend more time with the laptop in different situations.

Results for Deep Sleep

I charged the computer to 100% and put it to sleep at around 21:20. I turned it back on the next morning at 08:00. The battery went from 100% to 84%, so a 16% drop in about 10 hours. This is a huge improvement than having it drop 90-100%. I'll take the gains where I can get them haha.

Feedback