The saleae-logic16 driver doesn't work as expected if channel 0 is not enabled/used. Happens with both sigrok-cli and PulseView, so it's likely a libsigrok or hardware issue. Example when only channel 0 is enabled (works correctly): $ sigrok-cli -d saleae-logic16 -c samplerate=1mhz --samples 10 -C 0 -l 5 sr: libsigrok loglevel set to 5. sr: backend: Sanity-checking all drivers. sr: backend: Sanity-checking all input modules. sr: backend: Sanity-checking all output modules. sr: backend: Sanity-checking all transform modules. srd: libsigrokdecode loglevel set to 5. sr: hwdriver: Initializing driver 'saleae-logic16'. sr: saleae-logic16: Found a Logic16 device. sr: hwdriver: Scan of 'saleae-logic16' found 1 devices. sr: saleae-logic16: Firmware upload was not needed. sr: saleae-logic16: Original Saleae Logic16 detected. sr: saleae-logic16: Uploading FPGA bitstream at /home/uwe/sr/share/sigrok-firmware/saleae-logic16-fpga-18.bitstream. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 6668 bytes. sr: saleae-logic16: FPGA bitstream upload done. sr: saleae-logic16: Original Saleae Logic16 using old bitstream. sr: saleae-logic16: Opened device on 3.76 (logical) / usb/3-2 (physical), interface 0. sr: hwdriver: sr_config_set(): key 30000 (samplerate) sdi 0x1aff190 cg NULL -> uint64 1000000 sr: hwdriver: sr_config_set(): key 50001 (limit_samples) sdi 0x1aff190 cg NULL -> uint64 10 sr: session: Starting. sr: std: saleae-logic16: Starting acquisition. sr: std: saleae-logic16: Sending SR_DF_HEADER packet. sr: session: Running transform module 'nop'. sr: transform/nop: Received packet of type 10000, passing on unmodified. sr: session: bus: Received SR_DF_HEADER packet. cli: Received SR_DF_HEADER. sr: hwdriver: sr_config_get(): key 30000 (samplerate) sdi 0x1aff190 cg NULL -> uint64 1000000 sr: session: Running. sr: saleae-logic16: receive_transfer(): status LIBUSB_SUCCESS / LIBUSB_TRANSFER_COMPLETED received 1536 bytes. sr: session: Running transform module 'nop'. sr: transform/nop: Received packet of type 10004, passing on unmodified. sr: session: bus: Received SR_DF_LOGIC packet (20 bytes, unitsize = 2). cli: Received SR_DF_LOGIC (20 bytes, unitsize = 2). sr: hwdriver: sr_config_get(): key 30000 (samplerate) sdi 0x1aff190 cg NULL -> uint64 1000000 libsigrok 0.4.0-git Acquisition with 1/16 channels at 1 MHz sr: session: Running transform module 'nop'. sr: transform/nop: Received packet of type 10001, passing on unmodified. sr: session: bus: Received SR_DF_END packet. 0:00000000 00 cli: Received SR_DF_END. sr: saleae-logic16: Closing device on 3.76 (logical) / usb/3-2 (physical) interface 0. Example when only channel 3 is enabled (doesn't work as expected, i.e. it doesn't return 10 samples, and says "status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes" instead): $ sigrok-cli -d saleae-logic16 -c samplerate=1mhz --samples 10 -C 3 -l 5 sr: libsigrok loglevel set to 5. sr: backend: Sanity-checking all drivers. sr: backend: Sanity-checking all input modules. sr: backend: Sanity-checking all output modules. sr: backend: Sanity-checking all transform modules. srd: libsigrokdecode loglevel set to 5. sr: hwdriver: Initializing driver 'saleae-logic16'. sr: saleae-logic16: Found a Logic16 device. sr: hwdriver: Scan of 'saleae-logic16' found 1 devices. sr: saleae-logic16: Firmware upload was not needed. sr: saleae-logic16: Original Saleae Logic16 detected. sr: saleae-logic16: Uploading FPGA bitstream at /home/uwe/sr/share/sigrok-firmware/saleae-logic16-fpga-18.bitstream. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 15872 bytes. sr: saleae-logic16: Uploaded 6668 bytes. sr: saleae-logic16: FPGA bitstream upload done. sr: saleae-logic16: Original Saleae Logic16 using old bitstream. sr: saleae-logic16: Opened device on 3.76 (logical) / usb/3-2 (physical), interface 0. sr: hwdriver: sr_config_set(): key 30000 (samplerate) sdi 0x1e22d30 cg NULL -> uint64 1000000 sr: hwdriver: sr_config_set(): key 50001 (limit_samples) sdi 0x1e22d30 cg NULL -> uint64 10 sr: session: Starting. sr: std: saleae-logic16: Starting acquisition. sr: std: saleae-logic16: Sending SR_DF_HEADER packet. sr: session: Running transform module 'nop'. sr: transform/nop: Received packet of type 10000, passing on unmodified. sr: session: bus: Received SR_DF_HEADER packet. cli: Received SR_DF_HEADER. sr: hwdriver: sr_config_get(): key 30000 (samplerate) sdi 0x1e22d30 cg NULL -> uint64 1000000 sr: session: Running. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: saleae-logic16: receive_transfer(): status LIBUSB_TRANSFER_TIMED_OUT received 0 bytes. sr: session: Running transform module 'nop'. sr: transform/nop: Received packet of type 10001, passing on unmodified. sr: session: bus: Received SR_DF_END packet. cli: Received SR_DF_END. sr: saleae-logic16: Closing device on 3.76 (logical) / usb/3-2 (physical) interface 0.
This works for me with the MCUpro version. $ sigrok-cli -d saleae-logic16 -c samplerate=1mhz --samples 20 -C 3 libsigrok 0.5.0-git-782c5d1 Acquisition with 1/16 channels at 1 MHz 3:00000000 00000000 0000