I’ve had my Framework 16 for a few weeks now as I was part of the Batch 1 finale in early March due to the wayward Linux keyboard affair. During the past few weeks, I installed Arch Linux on it and used it in a variety of non-travel scenarios. These are my thoughts on it so far.
The Good
- The chassis (minus the input deck - see below for details) is very well built with durable materials. It’s even more impressive than my previous all-aluminum HP Elite Book which also had a great build quality.
- The laptop is big but is small enough to fit in larger bags. It is fairly light for what it is.
- The snap-in input expansion module system is great. I wish more manufacturers offered this.
- The UEFI firmware is easy to navigate and is well designed. The menu layout reminds me of the Steam Deck’s “Insyde H2O” firmware menu.
- Compatibility with mainline Arch Linux and KDE Plasma 6 is decent as of Linux kernel 6.8. There are a few features (mainly the display’s variable refresh rate feature) that are not completely mature and/or supported out of the box yet but it is quickly getting there.
- Screen quality is excellent.
- The Ryzen 9 series processor is FAST. It seems like it is almost as fast as my desktop’s Ryzen 9 processor.
- Battery life seems pretty decent. I can run it for several hours as long as I keep it from over engaging the dGPU. Fully engaging the dGPU seems to burn through the battery in less than an hour.
- There’s a certain financial peace of mind that you get from using a system that is designed around repair instead of replacement.
The Bad
- I am glad that I only ordered the GPU expansion module because swapping between modules on the road looks irritating due to the reliance on a module specific screwed-in interposer module. As implemented, I look at the expansion slot system as more of a “future upgrade” slot than a “hot swap” slot.
- I hope Framework offers a combined keyboard and numeric keypad module in the future. While the modular system mostly works (except for the weird split backlight controls - see below), I would really like to see a more rigid unified module without the gap and separation between the keyboard and the numeric keypad area.
- Running on battery power tanks the frame rate on high end 3D games. I think this is more of a “current limits of mobile dGPU technology” issue than an actual Frameworks design problem.
- Out of the box, the current version of “libinput” on Linux does not support “disable trackpad while using keyboard” mode due to a missing configuration file. Uncorrected, this can cause some errant cursor movement during a heavy typing session. However, this issue is easy to correct through a configuration change and an official fix will be included in the next “libinput” release.
The Ugly
- While I appreciate what Framework was trying with the modular trackpad, they should have made 3 trackpad SKUs (right/center/left alignment) and avoided using spacers. The trackpad spacers suck and I had to manually bend mine to get them to fit properly. I really hope Framework goes back to the drawing board here because the keyboard and trackpad issues are the only bad apples on an otherwise excellent product.
- The numeric keypad module is in desperate need of a numlock indicator light. I am not really certain how design missed this critical feature.
- There is no synchronization of backlight mode between input modules. While this enables some unique use cases, most of the time I just want one set of backlight controls that keep both input modules on the same synchronized backlight configuration.
- I can not connect the laptop to the iPhone 15 Pro Max via USB-C. When connected, both devices go into a endless connect/disconnect loop. This needs to be fixed at the firmware level.