I received my FW12 and now I have cyberdeck mode working! One thing I didn’t anticipate was you need to disable the touchscreen in addition to the display, or else it will register touch inputs that are mapped to the external display (maybe some interesting possibilities there…)
So my final scripts are as follows.
Enable cyberdeck mode:
kscreen-doctor output.eDP-1.disable;
sudo framework_tool --tablet-mode laptop;
sudo framework_tool --touchscreen-enable false;
Return to normal
kscreen-doctor output.eDP-1.enable;
sudo framework_tool --tablet-mode auto;
sudo framework_tool --touchscreen-enable true;
I have a bash script that wraps these up in on/off/toggle commands and setup instructions available at GitHub - wmurphyrd/framework-12-cyberdeck-mode: Tools for using the Framework 12 2-in-1 laptop with AR glasses instead of the built-in display
RE doing this all via EC, I did find a command in Frameworks EC repo that looks like it would toggle the display, but it doesn’t appear to be mapped in framework_tool. So I guess the next step is developing a rust app to send the EC commands for tablet mode, touchscreen, and lcd directly. Then it should work cross-platform (even Windows).