avrdude-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Improving Windows support for AVRDUDE


From: Joerg Wunsch
Subject: Re: Improving Windows support for AVRDUDE
Date: Tue, 30 Nov 2021 20:35:36 +0100

As Marius Greuel wrote:

> Now, for Windows users, it would be nice if avrdude just "works out of the
> box", as it does on Linux. One of the key points is to move away from the
> libusb0.sys driver to the WinUSB driver. WinUSB is the Windows equivalent of
> libusb, which is what people use (including Atmel) when you do not want to
> cook up your own USB driver. Some choose to use the HID stack, which works
> equally well.

The latter is what ARM went for, with their CMSIS-DAP spec. I think
it's a big crock, but the grok "every device looks like a human
interface" is quite present in many places, mainly due to Windows not
providing a generic USB driver for every device straight from the
beginning of their USB support (WinUSB came much later). As they
(obviously) did have to provide out-of-the-box HID support, people
went that way. ("Please install a device driver for your keyboard.
Press <Enter> to continue." :-)

Having said this, as long as it doesn't break libusb support (which is
the common baseline for all Unix-like systems), and doesn't add a
truckload of more #ifdefs, it's certainly fine to have that. If it
works well, I even think libusb support is no longer needed for
Windows anymore. It only went there in order to support Windows at
all.

> The easiest way to get Windows to load the WinUSB driver
> automatically, is to add a WinUSB compatibility descriptor to the device
> firmware.

That's again where I don't really understand Windows. Why is it
necessary to have *any* specific hack at all? Why couldn't they just
offer WinUSB for *every* device, at least for every device that hasn't
any more specific driver?

But OK, we won't change Microsoft here. It's just cumbersome to deal
with.

I'd be more than happy to have a Windows guy in the boat, hopefully
including someone who can roll native Windows binary releases as well.
So far, I've always been rolling them using a MinGW32
cross-compilation on my FreeBSD development system, but that isn't
something running very smoothely anyway. So well, if you want to
actively support AVRDUDE development on the Windows front, be welcome!

-- 
cheers, Joerg               .-.-.   --... ...--   -.. .  DL8DTL

http://www.sax.de/~joerg/
Never trust an operating system you don't have sources for. ;-)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]