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

Reply via email to