Just adding in that I followed the workaround now as well and it worked! Super simple fix, just three commands.
Ooh, interesting!
$ zgrep CROS_EC /proc/config.gz
CONFIG_KEYBOARD_CROS_EC=m
CONFIG_I2C_CROS_EC_TUNNEL=m
CONFIG_GPIO_CROS_EC=m
CONFIG_SENSORS_CROS_EC=m
CONFIG_CROS_EC_WATCHDOG=m
CONFIG_MFD_CROS_EC_DEV=m
CONFIG_CEC_CROS_EC=m
CONFIG_SND_SOC_CROS_EC_CODEC=m
CONFIG_CROS_EC_UCSI=m
CONFIG_LEDS_CROS_EC=m
CONFIG_RTC_DRV_CROS_EC=m
CONFIG_CROS_EC=m
CONFIG_CROS_EC_I2C=m
CONFIG_CROS_EC_ISHTP=m
CONFIG_CROS_EC_SPI=m
CONFIG_CROS_EC_UART=m
CONFIG_CROS_EC_LPC=m
CONFIG_CROS_EC_PROTO=y
CONFIG_CROS_EC_CHARDEV=m
CONFIG_CROS_EC_LIGHTBAR=m
CONFIG_CROS_EC_DEBUGFS=m
CONFIG_CROS_EC_SENSORHUB=m
CONFIG_CROS_EC_SYSFS=m
CONFIG_CROS_EC_TYPEC_ALTMODES=y
CONFIG_CROS_EC_TYPEC=m
CONFIG_EXTCON_USBC_CROS_EC=m
CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_CROS_EC_MKBP_PROXIMITY=m
CONFIG_PWM_CROS_EC=m
I have CONFIG_IIO_CROS_EC_LID_ANGLE
, but I donāt have CONFIG_CROS_EC_LID_ANGLE
.
$ zgrep CONFIG_IIO /proc/config.gz
CONFIG_IIO=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER_DMA=m
CONFIG_IIO_BUFFER_DMAENGINE=m
CONFIG_IIO_BUFFER_HW_CONSUMER=m
CONFIG_IIO_KFIFO_BUF=m
CONFIG_IIO_TRIGGERED_BUFFER=m
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_GTS_HELPER=m
CONFIG_IIO_TRIGGER=y
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
CONFIG_IIO_SW_DEVICE=m
CONFIG_IIO_SW_TRIGGER=m
CONFIG_IIO_TRIGGERED_EVENT=m
CONFIG_IIO_BACKEND=m
CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_ST_ACCEL_3AXIS=m
CONFIG_IIO_ST_ACCEL_I2C_3AXIS=m
CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m
CONFIG_IIO_KX022A=m
CONFIG_IIO_KX022A_SPI=m
CONFIG_IIO_KX022A_I2C=m
CONFIG_IIO_RESCALE=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS=m
CONFIG_IIO_CROS_EC_SENSORS_LID_ANGLE=m
CONFIG_IIO_INV_SENSORS_TIMESTAMP=m
CONFIG_IIO_MS_SENSORS_I2C=m
CONFIG_IIO_SSP_SENSORS_COMMONS=m
CONFIG_IIO_SSP_SENSORHUB=m
CONFIG_IIO_ST_SENSORS_I2C=m
CONFIG_IIO_ST_SENSORS_SPI=m
CONFIG_IIO_ST_SENSORS_CORE=m
# CONFIG_IIO_SIMPLE_DUMMY is not set
CONFIG_IIO_ST_GYRO_3AXIS=m
CONFIG_IIO_ST_GYRO_I2C_3AXIS=m
CONFIG_IIO_ST_GYRO_SPI_3AXIS=m
CONFIG_IIO_ST_LSM6DSX=m
CONFIG_IIO_ST_LSM6DSX_I2C=m
CONFIG_IIO_ST_LSM6DSX_SPI=m
CONFIG_IIO_ST_LSM9DS0=m
CONFIG_IIO_ST_LSM9DS0_I2C=m
CONFIG_IIO_ST_LSM9DS0_SPI=m
CONFIG_IIO_ADIS_LIB=m
CONFIG_IIO_ADIS_LIB_BUFFER=y
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_ST_MAGN_3AXIS=m
CONFIG_IIO_ST_MAGN_I2C_3AXIS=m
CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
CONFIG_IIO_MUX=m
CONFIG_IIO_HRTIMER_TRIGGER=m
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_TIGHTLOOP_TRIGGER=m
CONFIG_IIO_SYSFS_TRIGGER=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_IIO_ST_PRESS=m
CONFIG_IIO_ST_PRESS_I2C=m
CONFIG_IIO_ST_PRESS_SPI=m
Well, replying here again because it worked perfectly for me. However, I had to restart my system for something else, and now it isnāt working. Testing it shows the sensor is working, but KDE has stopped rotating. As far as I know, I havenāt done anything differently.
Hmm⦠Quick question, if I may: will the various fixes for Linux in this thread be included in the NixOS modules, if Framework will be maintaining any?
Probably not maintain by framework official, but maintain by framework community.
Iām experiencing this under kUbuntu, Fedora and Mint/Cinnamon. A reboot doesnāt clear the issue, but a suspend resolves the issue, as does a full shutdown.
Also my rotation sensor doesnāt seem to work. The workaround for rotation under Ubuntu doesnāt work (Iām running kUbuntu, so maybe itās different?), but Fedora would work out of the box and doesnāt.
Mine is a batch 1 i5.
Running sudo libinput debug-events
-event11 SWITCH_TOGGLE +9.303s switch tablet-mode state 1
This fires when I switch to tablet mode, but no event fires when I moved it back to laptop mode.
Iāve raised a ticket with support. Theyāve done basic troubleshooting and are escalating apparently. Glad itās not just me!
Did you try any other Distros? Iām just wondering if this is an Arch problem (which seems unlikely, given Iāve got the same issue under multiple distros) or is something wrong with some of the FW12 systems.
Anybody tried manually firing off tablet mode via framework_tool as a workaround? Iāve already got a shell script on my desktop to do manual screen rotation, which is actually fine tbh
FWIW, debian trixie, with kernel 6.12.33-1 (2025-06-19)
and iio-sensor-proxy
package version 3.7-2
, AND the same fix as Ubuntu 25.04 from up thread has both the rotation sensor AND the lid angle sensor (which is showing up as iio:device0
) working for me.
Going into tablet mode is disabling the keyboard, and coming out is successfully re-enabling it as well.
So thatāll be Debian testing?
And, it probably shouldnāt matter, but what desktop environment?
Yup, upcoming debian 13/trixie, upgraded from a debian 12/bookworm install. I gather 13 is supposed to be coming out soonish ā itās been really stable in the other places Iāve been running it (but I usually run testing or unstable, so Iām okay on the edge).
And Iām on Gnome at the moment ā settings reports Gnome 48 under wayland.
Also, fwiw, Iāve got an i3 model with a 1TB nvme drive and 32 GB of memory.
Iāve built framework_tool
sudo ./framework_tool --sensors
[ERROR] EC Response Code: InvalidParameter
Accelerometers:
Lid Angle: Unreliable
framework_tool --tablet-mode laptop / tablet manually seems to work pretty well
GitHub - thewishy/fw12_dirty_hax: Dirty hacks for the problems with the tablet mode setup for the early FW12 laptops is my āI just want to get something workableā attempt, just some shortcuts to pop on the desktop
Just a quick update without a new post. Framework have run had me run a diagnostic script (grabs kernel logs) and pushed that up to escalation support, who are unusually busy and will take a couple of days. Looking through the logs, Iām pretty sure the data they need isnāt there, so expecting some further ping-pong
This has now been reported in multiple threads, so creating FW12 - Problems returning from Tablet Mode - Tracking thread to track the issue
I just encountered a different problem from what was previously reported here :
Everything work as expected (lid sensor properly report angle, keyboard/trackpad is properly disabled/enabled when the lid go above ~180) except that the tablet-mode event is not fired, so KDE doesnāt auto-rotate when this setting is enabled :
For information Iām on arch using KDE and Iāve applied the necessary patch to
iio-sensor-proxy
.
The weird part is that it was working fine yesterday and I didnāt update anything since. I did install tlp, maybe itās linked ā¦
Iāve tried running libinput debug-events
and no event appear when I move the screen to tablet orientation.
Any idea of what to check next ?
EDIT :
Seems that I found the solution, Iāve posted a message here :
Maybe repost this in the new thread TheWishy created just above your post
I would say this seems like a different problem, and certainly note one Iāve seen reported before. Maybe try a Fedora LiveCD and see if the problem exists there too?
Fresh install, fully updated, no tweaks made. Fedora Workstation 42.
Bazzite/Bluefin would be the same. Folded back, tablet mode, unfolded back to normal, resumes proper operation.
Early on, we found it worked with KDE Plasma, but we do not have not tested it recently.
Bleeding edge, emphasis on the bleeding part
I think i was having some issues with getting Arch to behave with Wayland etc on my FW13 a couple years ago, albeit with the 12th gen Intel board. Itās fun but only for so long. Hereās to hoping enough tinkerers get into Framework that thereās a huge amount of support for the 12 and 13 and 16 in the future.
Glad to see this, planning to use Bluefin. Any weird stuff on Fedora so far?
Probably not something specific to the FW12, but I note that in tablet mode, the default virtual keyboard for Fedora KDE (Maliit) sometimes does not appear when I select a text input field in certain applications e.g. browsers. Does anyone know of a fix or workaround, e.g. an icon on the Task Manager that would force the keyboard to display?
Iāve generally found problems in KDE around the onscreen keyboard. I think mostly because kUbuntu is taking first steps with Wayland?
Gnome worked a lot better in that respect, but I couldnāt hate the interface more!
Iām just switching out of tablet mode if I need to type!
Just got my Sage unit and tried running OpenSUSE as an alternative (European) unsupported Linux distro on it - and despite having a recent enough kernel (6.15.6-1-default) and iio-sensor-proxy available on it, it doesnāt seem to run the iio-sensor-proxy service at all sadly.
(Running it through OpenSUSE Tumbleweed > KDE > Wayland, in case this might be relevant.)