From sigrok
(Redirected from Pulseview)
Jump to navigation Jump to search
PulseView (10-Aug-2014)
PulseView + scope

PulseView (sometimes abbreviated as "PV") is a Qt based logic analyzer, oscilloscope and MSO GUI for sigrok.

It is licensed under the terms of the GNU GPL, version 3 or later.


  • Fast O(log N) signal rendering at all zoom levels.
  • Protocol decoder support
  • Trace groups support


Please refer to the PulseView manual for a lot more information. Previous versions for released software also exist: 0.4.2.

If you are updating the manual and want to check what your changes look like, you can use "make manual" to build it.

There's also a video made by the original author of PulseView on YouTube that explains the basics of logic analyzers in general, how to use them and how they work with PulseView: 001 Sigrok and Logic Analyzers


Binaries, distro packages and source code tarballs are available from Downloads.


$ git clone git://sigrok.org/pulseview.git

You can also browse the source code via GitWeb.


See build requirements for PulseView.


See building PulseView on Linux (or any other of the OS-specific instruction pages).

Additional notes:

  • Use PKG_CONFIG_PATH=/<prefix-of-libsigrok-installation>/lib/pkgconfig/ if libsigrok and libsigrokdecode are installed to a non-standard prefix. See also Building#Installing_to_a_non-standard_directory_using_LD_LIBRARY_PATH for more details.
  • To change the install prefix: cmake -DCMAKE_INSTALL_PREFIX=<prefix-dir>/ ..
  • To show compiler arguments during the build: make VERBOSE=1
  • To make a non-stripped debug build cmake -DCMAKE_BUILD_TYPE=Debug ..
  • To enable unit tests: cmake -DENABLE_TESTS=y ..
  • To enable decoders: cmake -DENABLE_DECODE=y ..
  • To disable -Werror: cmake -DDISABLE_WERROR=y ..
  • To build with Clang: CXX=clang++ cmake ..


PulseView supports translations and so it would be nice if users like you would contribute translations of the user interface that we can include. All you need is a clone of the PulseView repository (either using our Git repo or the GitHub repo), lupdate and Qt Linguist - on Ubuntu, the last two are included in the qttools5-dev and qttools5-dev-tools packages.

After obtaining a copy of the repository, look up the ISO 639-1 code for the language you want to translate to and create an untranslated language file. Using Germany (DE) as an example, you'd do

cd where/you/unpacked/the/PulseView/repo
lupdate -recursive . -ts l10n/de.ts

or, if the language has a regional flavor, additionally with a Alpha-2 ISO code (here for Mexican Spanish):

cd where/you/unpacked/the/PulseView/repo
lupdate -recursive . -ts l10n/es_mx.ts

Then, open the newly created .ts file in Qt Lingust and go through the translations just like its manual describes. We are aware that some terms are unique to sigrok/PulseView and thus hard to translate, but please try to preserve the spirit of the word, even if there isn't any literal translation. Sometimes, this is however not possible, and that's okay. For the German translation, for example, the words "annotation" and "decode trace row" have no suitable equivalents, so we had to make use of translations in spirit ("decoded values" for annotations and "category" for decode trace row), as unfortunate as this is.

When you're done with your translations, set the language of the translations in Qt Linguist (menu EditTranslation File Settings) and put it somewhere where we can access it - e.g., the bug tracker or the mailing list. We'll then take the file and incorporate it into the build. Either way, we'll add your name to the application credits and keep your email on file, so that we can contact you when additional translations are needed - there isn't any obligation, but we'd appreciate if you'd then update the translation for the language you chose to submit to us.