Zadig is dead, long live libdwi

It’s time to bid adieu to Zadig. It’s a great tool, but far too confusing for the average user. It turns out that Zadig isn’t the only way to use libdwi though. There is a simple way to compile libdwi into a command-line tool. Of course, a command-line tool would be even harder for users to use, but command-line tools can be scripted… into an installer!

Say hello to my little friend:

https://fredrik.hubbe.net/lightsaber/proffie-dfu-setup.exe

This little tool does the same thing zadig does, and nothing else.
No need to choose a device, and the Proffieboard doesn’t have to be in bootloader mode to use it! In fact, it doesn’t have to be connected at all!

This works just fine on my computer, but I’d like a few people to test it before I change all the instructions everywhere to use the new tool. To test it, you will need to:

  1. uninstall the zadig-installed driver, or use zadig to change the driver to something other than WinUSB.
  2. download and run the proffie-dfu-setup.exe (and maybe virus check it just to be safe.)
  3. use zadig, or device properties to check that the driver for the STM32 BOOTLOADER is now the right one.
  4. Test an upload from Arduino to make sure it works.
10 Likes

Apparently this is not easy to figure out.
Suggestions?
I feel a screenshot would take place of the following many words, but…

The device Properties > Driver window only has
“Driver Details” which you can’t do anything in. Other options are greyed out, except a button to "Change Settings, with a Windows Security Shield. Clicking that opens a second, identical properties window, and that window’s driver tab has things not greyed out.
However, they are:
“Driver Details” - info only
“Update Driver” which thinks the best one is already installed.
“Roll Back Driver” which IS greyed out
“Uninstall Device”, which includes checkmark to delete Driver… However, after doing that, and disconnecting/reconnecting, it comes back as STM32BOOTLOADER and the driver is still intact anyway.

Zadig does not present any other options for different drivers to be installed. Not that I can see anyway.

Zadig has little up/down buttons next to the “WinUSB” box, which lets you choose other things.

:person_facepalming::person_facepalming::person_facepalming::person_facepalming:
Sorry. There are little arrows to scroll through other target drivers in Zadig.
Trying that. Will report back

PS: Screenshots are allowed when cut-n-paste won’t work you know…

ok, replaced driver for STM32BOOTLOADER in Zadig with libusbK (v3.1.0.0).
Confirmed in Devices and Printers.
Left board plugged in in bootloader mode and ran proffie-dfu-setup.exe.
It installed itself and auto-ran.
After which, Zadig showed the correct driver under Current, as did Devices and Printers.
I hit upload in Arduino while in this state and it worked fine as expected.

Rebooted Machine (VMWare virtual Windows 10 by the way).

Repeated the above (overwriting I guess) except this time I unplugged the board before running proffie-dfu-setup.exe.
This did not work so it seems.
Still showing libusbK.

So I cycled connection and ran proffie-dfu-setup.exe a 3rd time, but this time with the board normally booted in ProffieOS.
After which, booting as STM32BOOTLODER showing libusbK.

Interesting, so for you the board does have to be connected and in bootloader mode for this to work…

(I don’t think it does for me, but I will have to experiment some more to see…)

Hmm. Well, not having the board connected doesn’t seem super necessary.
Just having the program reboot the board into bootloader would be a big plus.
Plus you can already can do that, right?
(Configurator page uploader, Proffieboard programmer )

So, I tried this on a new install, and proffie-dfu-setup was able to install the right driver even though the proffieboard was not connected.

Clearly there is more to it than that, but for now I think I’m going to make everybody use this setup program, and only tell people to use zadig if proffiboard-dfu-setup doesn’t work for some reason.

Basically, the step would be:

  1. run the program
  2. if that doesn’t work, try running it with a proffeiboard in bootloader mode attached.
  3. if that doesn’t work, try the zadig method
  4. Switch to a better operating system.
1 Like

The URL seems to be dead now?

Google (falsly) flagged the binary as malware.
I’m waiting for their review to finish before I put it back.
Sorry about the inconvenience.

1 Like

The malware false positive should be resolved now.
I’ve put the binary back. Please let me know if you notice any problems with it.

Managed to download and run the installer just fine.
Don’t have my board yet so I can’t attest to that part of the functionality sadly.

That didn’t last long.
Google flagged my binary AGAIN, even though they said it had been resolved.

Boogle

Would it help if you put it in a .zip folder

No, putting it in a zip or something just makes it look like I’m hiding something.
Plus, virus scanners will just look inside the zip file anyways.

pod.hubbe.net is not listed as “harmful” anymore.
Waiting for confirmation before I put proffie-dfu-setup.exe back on the site again.

Ok, I put proffieos-dfu-setup.exe back on my site.
Let’s see if I’ll get booted off the internet again or not…

1 Like

My windows 11 computer will not let me download this file no matter what I do with network security settings. i have suspended the firewall, turned off file inspections in anti virus software, etc. Nothing. I get a “Failed-Virus detected” message everytime.