Update Bootloader problem

Hi,

I have managed to do a successful “make” of the .bin, but when I move to the next step, “make bootloader” I get the following error message.

Filter on vendor = 0x0483 product = 0xdf11
Opening DFU capable USB device… Cannot open device
Makefile.common:99: recipe for target ‘bootloader’ failed
make: *** [bootloader] Error 1

When I run the dfu-util command, I do get some indication that the dfu is found, but it is not quite the same as your example output.

Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=0, name=“UNDEFINED”
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=1, name=“UNDEFINED”
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=2, name=“UNDEFINED”
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=3, name=“UNDEFINED”

I’m doing this on Windows 8.1 with CygWin64

And just a note to add to the instructions: the OwlPatches directory needs to reside in the Source directory for he compile to be successful. That needs to be pointed out in the instructions or the OwlPatches directory should be added to the OwlWare repository.

I had a lot of trouble working with the zip file of the source code. Lots of compile errors and warnings. I gave up and sync’d the files from github and was able to compile successfully up to the point mentioned above.

Thanks for any help, and thanks for a cool pedal and project.

Right, I’d not anticipated this: when downloading the OwlWare zip, it doesn’t include OwlPatches.

We’ve used git submodules so that OwlPatches can live in its own repository and be shared between projects, but it does unfortunately make it a bit harder to get the code. I’ll update the instructions.

I take it you’ve been following the instructions on the wiki:
http://hoxtonowl.com/wiki/Update_Bootloader
Did you enter DFU mode by holding down the pushbutton while powering on via USB? Did the LED flash a few times and then go blank?

Also, which version of dfu-util have you got? Did you build from source? Did you follow the instructions on their website to register with the WinUSB driver? Note that in DFU mode, the pedal will show up as a different device than in normal MIDI mode.
http://dfu-util.gnumonks.org

I’ll set up a Windows 8 virtual machine to try this on, to see if I can recreate the problem. Perhaps it has something to do with the USB drivers.

best,

Martin

Thanks!

Yes, I followed the wiki instructions, held the LED button while powering up (and tried it a few times to be sure), it flashed a few times and went blank.

I downloaded the Win binary version 0.7 of dfu-util.

hmm, register the WinUSB driver?
I didn’t see that step mentioned anywhere. I’ll look into it later on tonight.

Thanks again.

That sorted it out. Thanks!

Now, I forget why I was updating… :stuck_out_tongue:

Here is what I did:

Following the instructions on this page, https://github.com/libusbx/libusbx/wiki/Windows-Backend
I used the zadig tool to install the drivers.

When zadig came up, it come up kind of blank.
Click the “Options” menu item, and select “List All Devices”

Then in the drop down box, find the pedal. It should be listed as something like “STM32 Bootloader”

zadig will show you what driver is installed for that device. I didn’t capture a screenshot of it, or I’d include it here.
But whatever it is, you need to change it to WinUSB.

So, select “WinUSB (version number)” from the drop down box and click the “Install Driver” button.

zadig will do its thing for a few seconds and when it’s done gives you a “Driver Installed Successfully” type of message.

I really should have captured the details as I went, but it was so quick and easy it didn’t seem necessary at the time.

And that’s it!
The dfu-util -l command gave more interesting details:

Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=0, name="@Internal Flash /0x08000000/04016Kg,01064Kg,07128Kg"
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=1, name="@Option Bytes /0x1FFFC000/01
016 e"
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=2, name="@OTP Memory /0x1FFF7800/01512 e,01016 e"
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=3, name="@Device Feature/0xFFFF0000/01*004 e"

More importantly, I was able to complete the “make bootloader” and “make dfu” steps to update my pedal.

I should say that while I am comfortable enough at a unix command line, I am not really up on developing (or even compiling) in that environment. Still, I was able to figure most things out from the error messages that I saw - up to a point. The zip file gave me the most trouble.
Once I used the repo sync method, things got infinitely easier. I’m guessing there was a difference in the content of the files between what I downloaded as a zip and what I eventually got sync’d.
As this is a work in progress, I think the better way to go is syncing the repository.
I tried to avoid the whole compile element of the process and just download binaries, and that just didn’t work out. I had the binaries, but I didn’t understand how I could upload them to the pedal. The compile instructions seemed to be the only way. From what I saw on the screen while doing the “Make bootloader” step, it was just a dfu-util command string. I would probably have been more comfortable typing that whole string in than just using “make bootloader” but that’s me. Now that I know what’s going on with that step, I’m good with it.
Anyway, my point is that, even for a relative noob to compiling in unix like me, it’s not that tough of an exercise. Could it be easier? Sure, but where’s the fun in that?

Thanks again!

Great, good to hear you got it working!

We will eventually provide a way to download the latest firmware (and bootloader) off the website from within OwlNest, to make it easier for people who don’t roll their own.