Framework Laptop 16 (AMD Ryzen 7040 Series)

I’m just the author of the thread; all credit for this tip should go to @SteveC

3 Likes

I had this set up automatically for me when I was using Qubes with KDE and SDDM. There was a “Virtual Keyboard” button in the bottom left corner on login screen. I don’t have it when I use XFCE , but according to the screenshots from their documentation XFCE should have this ability too, although I was not able to quickly find it (no need it myself right now).

1 Like

To answer my own question I did some testing on this device. There are 6 controllers but it’s not as useful as that sounds.

1 - USB 2.0 Hub, not mapped to any port
2 - USB 2.0 Hub, not mapped to any port
3 - Top Left port
4 - Top Right Port
5 - Keyboard, Mediatek Wireless Device, Fingerprint Reader, Bottom 4 ports
6 - USB Camera

I don’t know what the first two controllers are for maybe the GPU module?
The fifth controller shares the keyboard and internet bluetooth so probably not acceptable for anyone that cares about isolating this. The camera is more isolated than the keyboard. You can maybe share some less important ports with the keyboard (chargers are maybe less likely to be a problem) but if you want ethernet that takes up 1 of the two other isolated ports you have because there is no dedicated ethernet pci port.
There are 3 controllers you can isolate ports with in total.

A framework 13 would at least be better because the keyboard and mouse is PS/2 Framework - Laptop 13 (Intel 13th Gen) - #6 by leee

But maybe a NovaCustom is better for isolation? NovaCustom NV41 Series - #19 by novacustom
It seems to have isolated keyboard/mouse, internet and audio with up to 3 isolated groups of USB ports?

2 Likes

Mainboard circuit diagram is here Framework-Laptop-16/Mainboard at main · FrameworkComputer/Framework-Laptop-16 · GitHub but my testing shows that JUSB5 and the Input Module is connected to the USB 3.1 Gen2 Hub even though it’s not drawn connected. Not sure why that is.

1 Like

Thanks for the HCL! I’ve been playing around with Qubes for the first time after (finally!) receiving my 16 and I’ve been kind of stuck on the audio portion, which you mention works fine for you. I haven’t been able to get it to work by following this guide.

  1. Which audio devices did you pass through to the sys-audio vm? I tried selecting both “audio” devices in the list, but when I started the qube I just an error message that the PCI device could not be reset. When I also added the multimedia controller, the system crashed whenever the app vm was started.
  2. How did you manage to pass through the bluetooth mediatek device? Currently, this device is attached to the sys-net qube. Or is it not possible to use bluetooth (for audio, via sys-audio) and wifi (via sys-net) at the same time?

Sorry if any of these questions are obviously “incorrect” / don’t make sense - first time Qubes user, as I said :slight_smile:

1 Like

Do you have sys-net-usb qube that has both Network and USB controllers attached to it instead of having separate sys-net and sys-usb?
Bluetooth controller should be connected to USB based on info in this topic so you should be able to connect it from your sys-usb/sys-net-usb to your sys-audio using Qubes Devices widget:

1 Like

Managed to get it working as expected with the links provided, thanks :slight_smile:
I have a split sys-net and sys-usb setup, but the passthrough of the mediatek device worked as expected.
I’m now suddenly hitting some other issues with sys-usb and the USB keyboard, but I don’t think that belongs in this thread :smiley:

1 Like

I know this is an old thread, but I figured I’d ask here as it is framework 16 specific. Has anyone who has the dgpu managed to get GPU passthrough working on their framework 16? I have not managed to get it to succeed. Windows does not recognize the GPU when it is attached, and Linux struggles to output. The closest I have got is attaching it to a Ubuntu hvm created from the iso. That Ubuntu gives output when it is booting, but as soon as it has booted, nothing. If anyone has got it working, it would be great to know what you did.

1 Like

I just got my Framework 16 a week ago, so far the main issues I’ve encountered are the sys-usb issues mentioned in this thread, and working on GPU pass-through for the RX 7700S.has anyone had any luck at this point solving either issue?

1 Like

Still no luck for me regarding gpu passthrough, xen 4.18 has improvements regarding amd gpu passthrough so I am waiting until qubes 4.3 which will be on xen 4.19 to try again. For the sys-usb disconnecting the keyboard, I used the cron job mentioned earlier to have sys-usb restart after a minute if it is not on. I have not found anything better yet.

1 Like

Okay, I’ll implement the cron job then for now, are there any notable downsides to having it check more often?

I’ll keep trying to get GPU pass-through working, were you trying to use a Linux guest or Windows?

Has anyone else actually put the thermal pads in as recommended by the LTT review? I didn’t expect it to make the keyboard feel so much better, completely worth the $17 for thermal pads.

1 Like

I’ve been setting up Qubes on my Framework 16 this weekend (more or less the same machine specs), and I’ve got a lot working thanks to this HCL. I’m new here, should I create a new HCL thread for myself?

I was having a lot of trouble getting accustomed to Qubes, so I decided to install i3wm to make things extra hard on myself :grimacing:

I’m very happy with the result now that I pretty much have all the important stuff configured, I customized i3 and wrote a script to launch the default browser of whatever VM belongs to the currently-focused window in case anyone is interested.

The wake after sleep issue is the only major problem I’m having, so hopefully that cronjob I just configured does the trick. Has anyone figured out a more permanent fix?

3 Likes

I tried with both Linux and windows, closest I got was when output was displayed during the boot of a Ubuntu hvm from iso but only while it was booting/shutting down, not when the desktop had loaded. If I recall, that thermal pad thing from ltt was to fix keyboard flex, and I believe framework added a keyboard deflection kit in later batches

1 Like

if i run cat /sys/power/mem_sleep I get s2idle. I thought that means that deep sleep is not supported. Correct me if I am wrong.

EDIT:
just tested it. with deep sleep I get failed to start qubes-core.service on boot.
changed it to s2idle. Keyboard not working after closing the lid. But the error is gone. (not sure if it worked before tho did not test it).

related discussion about wrong mem_sleep causing qubes-core.service to error Qubes-core Service failed to start - #2 by apparatus

1 Like

I am not expert on that much. I wonder that does it work with QubesOS v4.2.4?

1 Like

It works fine for me. There aren’t any major changes from earlier 4.2.x versions that would break compatibility.

Edit: spelling

1 Like