Hello, I have extracted the firmware from Logic v1.2.10 and placed it to the necessary directory. Now PulseView fails with the following log:
sr: resource: Opened '...\PulseView\share\sigrok-firmware\saleae-logic16-fx2.fw'. sr: ezusb: Uploading firmware 'saleae-logic16-fx2.fw'. sr: ezusb: Uploaded 4096 bytes. sr: ezusb: Uploaded 1121 bytes. sr: ezusb: Firmware upload done. sr: ezusb: setting CPU reset mode off... sr: hwdriver: Scan found 1 devices (saleae-logic16). sr: device: saleae-logic16: Opening device instance. sr: saleae-logic16: Waiting for device to reset. sr: saleae-logic16: Waited 594ms. ... sr: saleae-logic16: Waited 2021ms. saleae-logic16: Failed to receive reply to EP1 command 0x7d: LIBUSB_ERROR_IO. sr: saleae-logic16: Failed to init device. sr: saleae-logic16: Waited 2132ms. ... sr: saleae-logic16: Device failed to renumerate. Notifying user of session error: "generic/unspecified error" I think, what can be improved is that the error message "Failed to receive reply to EP1 command 0x7d: LIBUSB_ERROR_IO" is shown to the user, that's anyway better than "generic/unspecified error". On 2020-01-12 13:39, Dmitry Katsubo wrote: > Hello, > > On 2020-01-10 11:07, Paul Fertser wrote: >> Saleae is using its own firmware and also probably the kernel driver >> they install is not providing WinUSB API. >> >> Since you're on windows, have you tried using Zadig to install WinUSB >> driver for this device? > > I have uninstalled Saleae software and drivers (just to have everything > clean) and then I have installed WinUSB (v6.1.7600.16385) via Zadig (see > attached screenshot). I run PulseView and got the same > error (see below for transcript). > > On 2020-01-10 10:50, soe...@apelpie.net wrote: >> Yes, you can do that. Either run "pulseview -l 5" from the command line or >> open the settings dialog, go to logging, set the log level to 5 and try to >> connect to the Saleae Logic 16. >> >> Then you can go back to the logging window and have a look at what it says >> there. > > Thanks for pointing that out. It turned out that PulseView was trying to > locate a different firmware: > > sr: backend: libsigrok 0.5.1/5:0:1 (rt: 0.5.1/5:0:1). > sr: backend: Libs: glib 2.44.1 (rt: 2.44.1/4401:1), libzip 1.5.1, > libserialport 0.1.1/1:0:1 (rt: 0.1.1/1:0:1), libusb-1.0 1.0.20.11003-rc3 API > 0x01000104, libftdi 1.2. > sr: backend: Host: x86_64-w64-mingw32.static.posix, little-endian. > ... > sr: hwdriver: Scan found 0 devices (saleae-logic-pro). > sr: ezusb: uploading firmware to device on 3.15 > sr: ezusb: setting CPU reset mode on... > sr: resource: Attempt to open > '...\PulseView\share\sigrok-firmware\saleae-logic16-fx2.fw' failed: No such > file or directory > sr: saleae-logic16: Firmware upload failed, name saleae-logic16-fx2.fw. > sr: hwdriver: Scan found 1 devices (saleae-logic16). > sr: device: saleae-logic16: Opening device instance. > sr: saleae-logic16: Firmware upload was not needed. > saleae-logic16: Failed to open device: LIBUSB_ERROR_ACCESS. > sr: saleae-logic16: Unable to open device. > Notifying user of session error: "generic/unspecified error" > > while correct (or, let's say, one that is present) is > '...\PulseView\share\sigrok-firmware\fx2lafw-saleae-logic.fw' > > I got confused... Where to get saleae-logic16-fx2.fw from? It is not a part > of binary download [1], right? > > While trying to locate it I found the issue #650 which looks to be the same > as I experience. In particular comment#3 reads: > >> You should use the "sigrok-fwextract-saleae-logic16" [3] script mentioned in >> the wiki to extract the three firmware/bitstream files from the Saleae >> software. >> 1. Download the Linux version (either 32-bit or 64-bit will do), and unpack >> it to find the main binary called "Logic". >> 2. To extract the firmware/bitstreams, run the following command: >> $ sigrok-fwextract-saleae-logic16 Logic" > > On the other hand comments #22 > >> $ pulseview -l 3 >> sr: saleae-logic16: Firmware upload was not needed. >> sr: saleae-logic16: mcupro Saleae16 detected. >> sr: saleae-logic16: Opened device on 20.11 (logical) / usb/20-2 (physical), > > and #25 > >> Finally got it working on all my Windows 7/10 Systems. >> This is what i did, with Zadiag: >> Install libusb-Driver, re-connect Device, install winUSB-Driver, re-connect >> Device, install libusbK, re-connect Device, then again installed libusb. >> And voila, started Pulsview and all OK. > > generally assume that no firmware is needed. WinUSB driver was installed by > PulseView, right? So I decided to install libusb driver as that comment > advises. However instructions on [4] generally > contradict with comment #25: > >> Currently, this means installing *one of* Microsoft's WinUSB, libusb-win32 >> or libusbK drivers. >> Use the most recent version of Zadig, an Automated Driver Installer GUI >> application for WinUSB (recommended), libusb-win32 (not working well, not >> recommended) and libusbK (only if you hit WinUSB > limitations). > > Now I am lost what to do next... > > Thanks in advance for help. > > [1] https://sigrok.org/download/binary/sigrok-firmware-fx2lafw/ > [2] https://sigrok.org/bugzilla/show_bug.cgi?id=650#c3 > [3] > https://sigrok.org/gitweb/?p=sigrok-util.git;a=tree;f=firmware/saleae-logic16 > [4] https://github.com/libusb/libusb/wiki/Windows#driver-installation > -- With best regards, Dmitry _______________________________________________ sigrok-devel mailing list sigrok-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sigrok-devel