Installing Proprietary Windows Drivers on Linux

10,194

In short: no.

To go further, a driver is a piece of software that interact with the kernel of the operating system. When you're working in kernel world, interoperability doesn't exist. POSIX neither. Everything is totally OS-specific: the architecture, the sub-systems and the way they have been built and designed, the standard library offered by the kernel to driver writer, there's nothing in common between Linux and Windows.

The only ways you can get your oscilloscope working under linux is:

  • by using a Windows virtual machine and forwarding the USB device to it (possible with virtualbox or qemu).

  • by doing reverse engineering when using it with a Windows workstation: analyse USB exchanges, try to guess the protocol used and the command passed to achieve this or this operation... it's a very hard and long job ...

Share:
10,194

Related videos on Youtube

Nabeel Kirmani
Author by

Nabeel Kirmani

Updated on September 18, 2022

Comments

  • Nabeel Kirmani
    Nabeel Kirmani almost 2 years

    I have a PC Oscilloscope Instrustar ISDS205X which I used on Windows 10. Now that I have switched to Linux, I am unable to find the respective drivers for it. I have tried installing it on PlayOnLinux but the software doesn't install and so do its drivers.

    Is there any method to convert such Windows drivers to run on Linux?

    (My CPU is i5-4570 and Distro is Debian 10 KDE Plasma)

    • eike
      eike over 4 years
      There are plans for Sigrok Firmware to support this device (sigrok.org/wiki/Instrustar_ISDS205X), but currently, I don't see a way to use it in Linux without a Windows VM
    • Eduardo Trápani
      Eduardo Trápani over 4 years
      On the general question "Installing Proprietary Windows Drivers on Linux", the answer depends on the type of drivers. For some network drivers ndiswrapper does exactly that, for example.
    • K7AAY
      K7AAY over 4 years
      IIRC, ndiswrapper is intended for use with Win XP drivers, and not for modern drivers.
    • Hastur
      Hastur over 4 years
      Hi Nabeel, welcome on SuperUser. You should ask to the producer if it exists a version for Linux of their software. It is even possible they have a version for Matlab (or compatible) even if it is not probable they will share it. Moreover, you may want to separate the data acquisition moment from the possibility to manage (command) the device from the computer. They may suggest a procedure to acquire data from Linux and/or give the list of command codes to manage the device through other programs.
  • eike
    eike over 4 years
    Another alternative is doing it the other way around, i.e. flashing a new firmware on the device that is natively supported by Linux.
  • ygreaney
    ygreaney over 4 years
    A lot of Windows "drivers" are actually a package of a true device driver and a firmware blob that has to be pushed to the hardware at initialization time, loading it into RAM rather than storing on (EEP)ROM/flash. (They may actually have a separate file for the firmware blob, making the reverse engineering easier). I remember having devices on a dual-boot system that I could let the Windows driver initialize, then do a warm reboot into Linux, and the Linux driver worked fine until the system was shut down and the hardware lost that blob from memory.