InsideGadgets Logic Observer

From sigrok
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
insideGadgets Logic Observer
Status planned
Channels 8
Samplerate 50MHz
Samplerate (state)
Triggers high, low
Min/max voltage 2V — 5.5V
Threshold voltage ?
Memory 131ksamples/ch
Compression none
Website insidegadgets.com

The insideGadgets Logic Observer is an 8-channel logic analyzer with up to 50MHz sampling rate. It is a mostly open project with all source code (CPLD, MCU) available, as well as a schematic of the PCB.

See insideGadgets Logic Observer/Info for more details (such as lsusb -v output) about the device.

Hardware

Protocol

The device is controlled entirely via USB control messages. The command is encoded in the request value of the control message; value and index are unused.

The following requests are defined:

USB_TRANSFER (1)

This tells the device to transfer the samples captured in memory to the host. This is called multiple times; the buffer memory is transferred 254 bytes at a time, with the address increasing automatically. The address is reset when a capture is started or settings are updated.

USB_SETTINGS (2)

Send new settings to the device. The settings consist of the following eight bytes sent along with the control request:

Byte Description
0 Bitmask of the channels to trigger on. All channels marked according to the trigger level must match before a trigger is considered to have fired.
1 Level to trigger on (0 or 1).
2 Delay after trigger, in milliseconds.
3 Trigger count: number of times the trigger must fire before the capture starts.
4 Sample rate, as follows:
Value Sample rate
80 50 MS/S
0 10 MS/S
1 5 MS/S
3 2.5 MS/S
9 1 MS/S
19 500 KS/S
39 250 KS/S
99 100 KS/S
5 Number of samples to capture
6 Start capture flag: a capture is started if this is not 0.
7 Always 0.

USB_STATUS (3)

Returns a 2-byte status field. The first byte indicates whether capturing has finished (1) or not (0). The second byte is always 0.

USB_CANCEL (4)

This cancels a capture in progress.

Resources