Difference between revisions of "FAQ"

From sigrok
Jump to navigation Jump to search
(Update IRC link to libera.chat)
 
(9 intermediate revisions by 3 users not shown)
Line 7: Line 7:
{| border="0" style="font-size: smaller;"
{| border="0" style="font-size: smaller;"
|- align=left
|- align=left
| [[File:Saleae_logic.jpg|link=Supported_hardware#Logic_analyzers|80px|thumb|<small>[[Supported_hardware#Logic_analyzers|Logic analyzers]]</small>]]
| [[File:Saleae Logic.png|link=Supported_hardware#Logic_analyzers|100px|thumb|<small>[[Supported_hardware#Logic_analyzers|Logic analyzers]]</small>]]
| [[File:Polabs poscope basic2 device top.jpg|link=Supported_hardware#Mixed-signal_devices|80px|thumb|<small>[[Supported_hardware#Mixed-signal_devices|MSOs]]</small>]]
| [[File:Link Instruments MSO-19 front.png|link=Supported_hardware#Mixed-signal_devices|100px|thumb|<small>[[Supported_hardware#Mixed-signal_devices|MSOs]]</small>]]
| [[File:Hantek dso-5200a device front.jpg|link=Supported_hardware#Oscilloscopes|80px|thumb|Scopes|<small>[[Supported_hardware#Oscilloscopes|Oscilloscopes]]</small>]]
| [[File:Hantek dso-5200a device front.png|link=Supported_hardware#Oscilloscopes|100px|thumb|Scopes|<small>[[Supported_hardware#Oscilloscopes|Oscilloscopes]]</small>]]
| [[File:Voltcraft vc820 device.jpg|link=Supported_hardware#Multimeters|80px|thumb|<small>[[Supported_hardware#Multimeters|Multimeters]]</small>]]
| [[File:Voltcraft vc820 device.png|link=Supported_hardware#Multimeters|100px|thumb|<small>[[Supported_hardware#Multimeters|Multimeters]]</small>]]
| [[File:Rding temper front.jpg|link=Supported_hardware#Dataloggers|80px|thumb|<small>[[Supported_hardware#Dataloggers|Dataloggers]]</small>]]
| [[File:Tondaj sl-814.png|link=Supported_hardware#Multimeters|100px|thumb|<small>[[Supported_hardware#Sound_level_meters|Sound level meters]]</small>]]
| [[File:Prologix-usb.jpg|link=Supported_hardware#GPIB_interfaces|80px|thumb|<small>[[Supported_hardware#GPIB_interfaces|GPIB interfaces]]</small>]]
|- align=left
| [[File:Rding temper front.png|link=Supported_hardware#Thermometers|100px|thumb|<small>[[Supported_hardware#Thermometers|Thermometers]]</small>]]
| [[File:EL-USB-2.png|link=Supported_hardware#Hygrometers|100px|thumb|<small>[[Supported_hardware#Hygrometers|Hygrometers]]</small>]]
| [[File:Mastech ms6252b device front.jpg|link=Supported_hardware#Anemometers|100px|thumb|<small>[[Supported_hardware#Anemometers|Anemometers]]</small>]]
| [[File:Lutron YK-2005LX.png|link=Supported_hardware#Light_meters|100px|thumb|<small>[[Supported_hardware#Light_meters|Light meters]]</small>]]
| [[File:Maul studio i device.jpg|link=Supported_hardware#Dataloggers|100px|thumb|<small>[[Supported_hardware#Dataloggers|Dataloggers]]</small>]]
|- align=left
| [[File:Siglent sdg1010 device front 8116.png|link=Supported_hardware#Function_generators|100px|thumb|<small>[[Supported_hardware#Function_generators|Function generators]]</small>]]
| [[File:Manson hcs3202 front.jpg|link=Supported_hardware#Power_supplies|100px|thumb|<small>[[Supported_hardware#Power_supplies|Power supplies]]</small>]]
| [[File:Prologix-usb.png|link=Supported_hardware#GPIB_interfaces|100px|thumb|<small>[[Supported_hardware#GPIB_interfaces|GPIB interfaces]]</small>]]
|}
|}


Line 23: Line 32:
== What is the correct spelling of the name? ==
== What is the correct spelling of the name? ==


The name is spelled '''sigrok''' (yes, a lower-case "s", even at the beginning of sentences). It is '''not''' spelled "sigrock".
The name is spelled '''sigrok''' (yes, a lower-case "s", even at the beginning of sentences). It is '''not''' spelled "sigrock" or "SigRock" or "Sigrock" or "Sigrok".
 
== What is the official sigrok logo and where can I get it? ==
 
See the [[Logo]] wiki page for PNG and SVG versions of the sigrok logo, which is intended for things '''developed by the sigrok project'''.
 
If you want to advertise that '''your product can be used with sigrok''', we have a specific "[[Advertising sigrok compatible products|works with sigrok]]" logo that you can use (as long as you follow [[Advertising sigrok compatible products#Rules|certain rules]]).
 
The logo was created by [http://benbois.posterous.com/ Benjamin "wooz" Bois] (thanks!) and is licensed under the [https://creativecommons.org/licenses/by-sa/3.0/ CC-BY-SA 3.0] license.
 
<gallery>
File:Sigrok logo.svg|<small>[[Logo|sigrok logo]]</small>
File:Works with sigrok.svg|<small>[[Advertising sigrok compatible products|"Works with sigrok" logo]]</small>
</gallery>


== Is my measurement device supported? ==
== Is my measurement device supported? ==
Line 31: Line 53:
== Will you add support for my measurement device? ==
== Will you add support for my measurement device? ==


Maybe. We generally try to support as much hardware as possible. However, as there are really [[Logic analyzer comparison|many]], [[Mixed-signal device comparison|many]], [[Oscilloscope comparison|many]], [[Multimeter comparison|many]], [[Datalogger comparison|many]], [[GPIB interface comparison|many]] devices out there, this is of course a non-trivial task. We only have limited spare time, and a limited amount of money, too. Thus, naturally, we're happy about both code contributions as well as hardware donations (contact [mailto:bert@biot.com Bert Vermeulen] and [mailto:uwe@hermann-uwe.de Uwe Hermann] if you want to help out).
Maybe. We generally try to support as much hardware as possible. However, as there are really [[Logic analyzer comparison|many]], [[Mixed-signal device comparison|many]], [[Oscilloscope comparison|many]], [[Multimeter comparison|many]], [[Datalogger comparison|many]], [[GPIB interface comparison|many]] devices out there, this is of course a non-trivial task. We only have limited spare time. Thus, naturally, we're happy about any code contributions for yet unsupported devices!
 
'''Note:''' We generally do ''not'' take requests for adding specific hardware support. We already have a huge list of hardware that we plan to support eventually, and there are only a limited amount of developers and a limited amount of time in a day. Telling us "please add support for device XYZ" is not necessary (since we already want to support all devices out there). If you want to see your ''specific'' device supported, the best method is to figure out the protocol and add the respective [[libsigrok]] driver yourself. We're happy to help with any API or protocol questions, please join us on IRC for that ([https://web.libera.chat/#sigrok #sigrok@libera.chat]).


== Do you build/sell/design logic analyzers? ==
== Do you build/sell/design logic analyzers? ==
Line 51: Line 75:
A logic analyzer is a device which can display and/or analyze the state of one or more signals of a circuit or target device. For a quick introduction see also the respective [http://en.wikipedia.org/wiki/Logic_analyzer Wikipedia page], but make sure to read some of the documents from [[FAQ#Where_can_I_read_more_about_logic_analyzers.3F|this entry]] for more details.
A logic analyzer is a device which can display and/or analyze the state of one or more signals of a circuit or target device. For a quick introduction see also the respective [http://en.wikipedia.org/wiki/Logic_analyzer Wikipedia page], but make sure to read some of the documents from [[FAQ#Where_can_I_read_more_about_logic_analyzers.3F|this entry]] for more details.


== Where can I read more about logic analyzers? ==
== Where can I learn more about logic analyzers? ==


Here is a list of recommended readings on various topics related to logic analyzers.
Here is a list of recommended readings on various topics related to logic analyzers.
Line 105: Line 129:


A '''multimeter''' or '''digital multimeter''' (DMM) or '''Volt-Ohm meter''' (VOM) is a measurement device which can measure multiple things (such as voltage, current, resistance, temperature, and others). We won't go into all the details here, see the [https://en.wikipedia.org/wiki/Multimeter multimeter page on Wikipedia] for more information.
A '''multimeter''' or '''digital multimeter''' (DMM) or '''Volt-Ohm meter''' (VOM) is a measurement device which can measure multiple things (such as voltage, current, resistance, temperature, and others). We won't go into all the details here, see the [https://en.wikipedia.org/wiki/Multimeter multimeter page on Wikipedia] for more information.
== Where can I learn more about multimeters? ==


Here's a small selection of good video tutorials on multimeters:
Here's a small selection of good video tutorials on multimeters:
Line 125: Line 151:
* [http://www.electroline.com.au/articles/26521-The-ABCs-of-multimeter-safety ElectronicsOnline: The ABCs of multimeter safety] (seems to be adapted from [http://support.fluke.com/SW-Common/SW-Find_It.asp this Fluke PDF])
* [http://www.electroline.com.au/articles/26521-The-ABCs-of-multimeter-safety ElectronicsOnline: The ABCs of multimeter safety] (seems to be adapted from [http://support.fluke.com/SW-Common/SW-Find_It.asp this Fluke PDF])
* [http://www.fluke.com/fluke/usen/training/safety/default.htm Fluke: Electrical Measurement Safety Program] (various articles)
* [http://www.fluke.com/fluke/usen/training/safety/default.htm Fluke: Electrical Measurement Safety Program] (various articles)
Other external sources of information:
* [https://www.eevblog.com/forum/testgear/multimeter-spreadsheet/ eevblog multimeter spreadsheet] An extensive list of multimeters which is maintained by an eevblog forum member. Also has many more external links on multimeter operation and safety.
= Miscellaneous =
== Getting a usable lsusb for USB HID devices ==
Sometimes you might see output like this in an lsusb of a USB HID device:
<small>
Report Descriptors:
** UNAVAILABLE **
</small>
In order to get HID descriptor output in lsusb on Linux you need to perform one of the steps descibed below:
'''Option 1 (recommended):'''
For each HID device, also a ''hidraw'' device is registered. The corresponding sysfs entry also contains a report descriptor:
<small>
'''hexdump /sys/bus/usb/drivers/usbhid/1-1\:1.0/0003\:1A86\:E008.0008/report_descriptor'''
</small>
A more readable representation can be generated using the [http://eleccelerator.com/usbdescreqparser/ USB Descriptor and Request Parser]
'''Option 2:'''
Just '''unbind a specific driver instance'''. This will leave all other USB HID devices on your system in a working state.
Example:
<small>
$ '''ls /sys/bus/usb/drivers/usbhid'''
3-2:1.0  4-3:1.4  5-3:1.0  bind  module  new_id  uevent  unbind
$ '''echo 5-3:1.0 > /sys/bus/usb/drivers/usbhid/unbind'''
</small>
(you'll have to find out which number refers to your device using e.g. lsusb and checking the contents of the '''/sys/bus/usb/drivers/usbhid''' directory; in this case it is '''5-3:1.0''')
'''Option 3 (easier, but will disable ''all'' USB HID devices):'''
You can run '''rmmod usbhid'''. However, this will disable ''all'' USB HID devices, including your USB keyboard/mouse! Do this only if you are sure you can recover from this again (i.e. run '''modprobe usbhid''') afterwards. This can be achieved by logging in via ssh or a serial console, or by using a PS/2-attached keyboard instead of a USB-attached keyboard.

Latest revision as of 11:02, 4 June 2021

General sigrok questions

What is sigrok?

sigrok is a portable, cross-platform, Free/Libre/Open-Source signal analysis software suite that supports various device types:

It is licensed under the terms of the GNU GPL.

What does the name sigrok mean?

sigrok is a software suite that groks signals for you.

What is the correct spelling of the name?

The name is spelled sigrok (yes, a lower-case "s", even at the beginning of sentences). It is not spelled "sigrock" or "SigRock" or "Sigrock" or "Sigrok".

What is the official sigrok logo and where can I get it?

See the Logo wiki page for PNG and SVG versions of the sigrok logo, which is intended for things developed by the sigrok project.

If you want to advertise that your product can be used with sigrok, we have a specific "works with sigrok" logo that you can use (as long as you follow certain rules).

The logo was created by Benjamin "wooz" Bois (thanks!) and is licensed under the CC-BY-SA 3.0 license.

Is my measurement device supported?

Check the Supported hardware page for a list of supported devices, and those that are currently being worked on. Also, each device has its own wiki page, which lists the details of the hardware support for the respective device.

Will you add support for my measurement device?

Maybe. We generally try to support as much hardware as possible. However, as there are really many, many, many, many, many, many devices out there, this is of course a non-trivial task. We only have limited spare time. Thus, naturally, we're happy about any code contributions for yet unsupported devices!

Note: We generally do not take requests for adding specific hardware support. We already have a huge list of hardware that we plan to support eventually, and there are only a limited amount of developers and a limited amount of time in a day. Telling us "please add support for device XYZ" is not necessary (since we already want to support all devices out there). If you want to see your specific device supported, the best method is to figure out the protocol and add the respective libsigrok driver yourself. We're happy to help with any API or protocol questions, please join us on IRC for that (#sigrok@libera.chat).

Do you build/sell/design logic analyzers?

No. The sigrok project is a pure (open-source) software project. We're not designing, building, or selling hardware. We only add software support for already existing hardware.

Which device do you recommend buying?

We generally don't make any buying recommendations. There are many devices from different companies, with highly different capabilities and features out there, in price ranges from $60 up to $5000 or more. It all depends on your specific needs and preferences, and on the amount of money you are willing to spend.

However, as a small starting point for your own research in order to find a device which fits your need, we provide comparison tables for logic analyzers, mixed-signal devices, oscilloscopes, multimeter, dataloggers, and GPIB interfaces, which list some (but not all) relevant data points which you may want to compare.

Logic analyzer questions

What is a logic analyzer?

An 8-channel logic analyzer

A logic analyzer is a device which can display and/or analyze the state of one or more signals of a circuit or target device. For a quick introduction see also the respective Wikipedia page, but make sure to read some of the documents from this entry for more details.

Where can I learn more about logic analyzers?

Here is a list of recommended readings on various topics related to logic analyzers.

Note: Some of the Agilent/Tektronix documents are geared towards higher-end/expensive standalone logic analyzers, i.e. not the usual USB-based ones supported by sigrok. Thus, some of the information in those documents may not necessarily be relevant or important for most people. They do also provide lots of generally useful information, though, so reading them is recommended.

Introduction to logic analyzers:

Samplerate, bandwidth, timing issues:

Comparing or buying logic analyzers:

Triggers:

Probing issues:

Other:

What kind of logic analyzer probes are available?

Small probe collection.

There are many logic analyzer probes of varying quality and price on the market (see photo for a small subset).

See Probe comparison for more information about the usefulness and quality of various probe types, where to buy them, and so on.

Multimeter questions

What is a multimeter?

A digital multimeter

A multimeter or digital multimeter (DMM) or Volt-Ohm meter (VOM) is a measurement device which can measure multiple things (such as voltage, current, resistance, temperature, and others). We won't go into all the details here, see the multimeter page on Wikipedia for more information.

Where can I learn more about multimeters?

Here's a small selection of good video tutorials on multimeters:

Some information about multimeter safety and the IEC61010 categories:

Other external sources of information:

  • eevblog multimeter spreadsheet An extensive list of multimeters which is maintained by an eevblog forum member. Also has many more external links on multimeter operation and safety.

Miscellaneous

Getting a usable lsusb for USB HID devices

Sometimes you might see output like this in an lsusb of a USB HID device:

Report Descriptors:
** UNAVAILABLE **

In order to get HID descriptor output in lsusb on Linux you need to perform one of the steps descibed below:

Option 1 (recommended): For each HID device, also a hidraw device is registered. The corresponding sysfs entry also contains a report descriptor:

hexdump /sys/bus/usb/drivers/usbhid/1-1\:1.0/0003\:1A86\:E008.0008/report_descriptor

A more readable representation can be generated using the USB Descriptor and Request Parser

Option 2:

Just unbind a specific driver instance. This will leave all other USB HID devices on your system in a working state.

Example:

$ ls /sys/bus/usb/drivers/usbhid
3-2:1.0  4-3:1.4  5-3:1.0  bind  module  new_id  uevent  unbind

$ echo 5-3:1.0 > /sys/bus/usb/drivers/usbhid/unbind

(you'll have to find out which number refers to your device using e.g. lsusb and checking the contents of the /sys/bus/usb/drivers/usbhid directory; in this case it is 5-3:1.0)

Option 3 (easier, but will disable all USB HID devices):

You can run rmmod usbhid. However, this will disable all USB HID devices, including your USB keyboard/mouse! Do this only if you are sure you can recover from this again (i.e. run modprobe usbhid) afterwards. This can be achieved by logging in via ssh or a serial console, or by using a PS/2-attached keyboard instead of a USB-attached keyboard.