I have a Surface Go tablet that I switched over to Linux a while back, and just came across a problem that I don’t know how to approach. I use an iDataLink Maestro module in my car to make an aftermarket stereo do what I want it to do. I want to check for a firmware update on it, but the management software tool is windows or mac only.
So I installed WINE and the PlayonLinux front end. I successfully installed the tool (Weblink) but the keyboard doesn’t work so I can’t log into it. The trackpad works though, and this is a directly connected keyboard/trackpad, so for one to work but not the other seems weird. I can find threads about non-functional keyboards with some games, but I honestly don’t understand the guidance being dished out.
How can I troubleshoot and fix this keyboard issue?
Wine doesn’t support USB. Unless the peripheral connects over a serial or parallel port, you will have to use a virtual machine.
It definitely requires a USB connection between the computer and the Maestro unit. Shoot, didn’t know USB was unsupported and was hoping to avoid a VM just due to the extra space required. Looks like I have to though, thanks for the help.
afaik USB can be used for serial, car diag programs often work like that too, so this might not be the problem
The S in USB is serial.
But OP didn’t provide much detail on the device, hardware, software, or communication method. A VM is probably easier.
You can be pedantic if you want, but it’s pretty obvious OP meant RS232 serial.
Didn’t realize this, shoot. The VM will take more space than I really like, but I guess I can remove it when I’m done.
You could try tunneling usb from the host into wine with usbip, but I have a feeling that this wouldn’t work
yeah, had the same deal with Xiaomi’s unlock tool. no WINE, no VM, bare-metal Windows only. oh yeah, doesn’t even work on Ryzens, has to be Intel, like wtfff…
Doesn’t work on Ryzens??? Is that recent? Because I did unlock on my Zen+ system just fine back in '22
I unlocked my POCO f4 pro less than year ago on Windows 10 Pro and Ryzen 5 5600X without a hich.
What? My keyboard and mouse both work on wine apps on my desktop Arch system. Although I used Lutris, and not wine on its own.
Software running in Wine is not accessing your mouse or keyboard directly, so it doesn’t matter how they are connected as long as they work in Linux.
But you’re saying that other external devices will need to access the device directly through USB, and Wine doesn’t support the pass-through?
Yes, Wine doesn’t support USB passthrough. You would need a VM for that.
Okay, thanks for the warning.
deleted by creator
You’ll have to use a virtual machine and pass through the USB device.
You’ll have to install QEMU (ideally
qemu-desktop
since you’ll only need the x86 VM),libvirt
, andvirt-manager
. Start thelibvirtd
service (enables the management interface), then runvirsh net-start default
as root (enables networking). Create and install a Windows virtual machine in the Virtual Machine Manager application. I recommend Windows 10 or earlier because 11 needs extra steps. Once the VM is running, open the Virtual Machine menu, click on “Redirect USB Device”, then choose the device you want to configure. It will be detached from the host OS and passed through directly to the guest.Excellent, thanks! There was a thread the other day where someone posted instructions on a lighter weight IoT version of Win10 that doesn’t have much bloat. I think I’ll try that one.
There is also Tiny11 iso flying around somewhere which is a lot smaller and less resource heavy then usual windows vm.
My experience (which is admittedly many years out-of-date) is that WINE isn’t very good at anything except games, because games are what the people who use it and work on it are most interested in. When other software works, it tends to be as much by coincidence as anything.
I wish that we could get KNX ETS6 in WINE. But it has a USB component though many or most people use IP configuration instead.
Running boxes is really easy in fedora. I fix my iPods via windows 10 on a boxes VM
Also running Linux on a surface haha
Sounds like a job for WinApps.
Hey, I don’t have answers to your question, but how is Linux working on a Surface? I have a Surface 7 Pro which is the last Windows machine I own. I would love to replace Windows on that. I need the touch screen, pen, and webcams to continue working though. What distro did you use?
I run Mint and the touchscreen and pen both work. I haven’t tried anything with the web cam to confirm or deny that one.
The system programs let you scroll on the touch screen (looking through the app store for example) but, frustratingly, Firefox doesn’t support this. I haven’t looked too hard for an alternative or work around though.
Okay thank you. Firefox does support it, but you have to change a setting to make it scroll instead of select text. I remember that from my regular laptop touch screen install. I don’t remember what the setting is, but I’m sure you can find it with a quick search.
I have a Surface 7 Pro running KDE Neon. I don’t have a pen, but touch screen works perfectly (you might need to manually install an on-screen keyboard beforehand, as usually Linux doesn’t preinstall one by default), and I’d assume pen would too. Webcams are going to be an issue. You can find all information and support tables/matrix on the linux-surface website.
https://github.com/linux-surface/linux-surface/wiki/Supported-Devices-and-Features#feature-matrix
Here’s a long explanation on the work being done to make the cameras work (hint -they don’t, for our SP7 for now): https://github.com/linux-surface/linux-surface/wiki/Camera-Support
Thank you.
I use surface pro 3 with pop os, basically u can install latest ubuntu and install this custom kernel. https://github.com/linux-surface/linux-surface And staying on Wayland it’s handle much better multi touch fingers especially on gnome which feels like designed for exactly such devices and gestures feels and works much than on windows my fav one 3 finger swipe between virtual desktops
Thanks!
Would this kernel work with Pop?
Sure,just pop is by default running x11 so need enable it in gdm config file