Saleae - Logic 2

Logic 2.1.3 (Alpha 16)

Edit: we’ve revved the release after fixing a few small defects. 2.1.2 has been replaced with 2.1.3.

This is the 16th alpha release, 2.1.3. It’s another minor release with a handful of fixes and improvements.

We would love to hear your feedback on every release! Please reply here and share your experience - screen recordings are welcomed!

We’re still focused on the experience of protocol analyzers.

Windows
http://logic-io.s3.amazonaws.com/test-builds/Logic+Setup+2.1.3-master.exe

MacOS
http://logic-io.s3.amazonaws.com/test-builds/Logic-macOS-2.1.3-master.zip

Linux
http://logic-io.s3.amazonaws.com/test-builds/Logic-2.1.3-master.AppImage
The *.AppImage file will require execute permissions, e.g. chmod +x Logic-2.1.3-master.AppImage

Alpha Mailing List
Join the Alpha Users Mailing List to be notified about the next release!

What’s new

  • New tab management! No more “Capture” tab - record data from any tab, each with its own capture settings.
  • Added a glitch filter, used to remove pulses in the capture narrower than a specified number of samples.

Improvements

  • Easily enable device channels when editing an analyzer, in case you forgot to enable a required channel before configuring an analyzer’s settings.
  • Improved the visibility of the selected tab
  • New right-click menu item on channel labels which lets you reset all channel heights to match the clicked channel.
  • 2.1.3: added raw binary as an export option.

Bug Fixes

  • Fixed really embarrassing bug in the last release that occured when checking for updates.
  • Properly close elasticsearch process (java) on exit, which is used by the protocol search feature.
  • Fixed bug where sometimes analyzers would not produce any results, and report 0% complete.
  • Restored Windows 7 support
  • 2.1.3: fixed crash bug with device selection menu.
  • 2.1.3: fixed visual glitch in grid lines when restarting the capture, for channels that have analyzers.

New tab management allows you to create as many tabs as you like, and capture from any tab.

image

Right-click menu allows resizing all channels to matching heights

Forgot a channel? Enable a disabled channel directly from the analyzer settings menu! (blank tabs only)

Setup a glitch filter before recording digital data to filter out pulses narrower than a specified sample width. Useful for slower rise time signals like I2C.

Improvement - Hint of how to create Timing Pairs

As a new user it is not obvious to me how to create Timing Pairs besides the suggested ones .

A little (?)-Box behind “Timing Pairs” as used for the Glitch Filter which states something like “Hold down Ctrl while selecting clicking on two Timing Markers” would make this handy feature more popular. Also this Ctrl-Hotkey might find a place in the hotkey list of the documentation.

1 Like

You’re absolutely right. It’d be much easier in the next version, no worries :slight_smile:
There will be a button and a keyboard shortcut for that.

1 Like

Exporting I2C analyzer data error

I’m trying to export I2C Analyzer data, and I’m getting this after typing in the file name (export.csv)
image

The export file name I’m using is: export.csv, and saving it on the desktop.
image
image
This is what the capture looks like:

I noticed that next to the I2C analyzer, there is a small empty circle and 99%. The capture of multiple I2C cycles is complete, so I don’t understand why this is not 100%.

I’m not sure if it is complaining about the file name or there is something in the export data it does not like.

Thanks @markp, that’s my fault! Just fixed it, and we’re preparing 2.1.3 for testing right now. Normally it would be out Monday, but we have a new developer starting that day so it could be a little later in the week.

One more note which we need to explain in the export process. We’ve simplified the heck out of export.
The save dialog actually takes a folder name, and then exports two files - one for digital channels, and one for analog. This avoids the need to have two different time columns in the same CSV file, and should simplify post-processing.

So if you enter the name “export” in the save dialog, you will get one folder named “export” containing two CSV files, one for digital and one for analog.

2.1.3 introduces a binary export format that also creates a folder, inside of which is one file per exported channel.

Which reminds me, we need to publish the documentation for export format – we wrote a sample python application that can be used to read our binary export format. We’ll be sure to do that when we ship 2.1.3.

The simplification of the export was motivated by the state of export in the 1.x app. There were dozens of possible export format variations by the end of it, and at least 5 or 6 complete implementations. It was a nightmare to maintain, and confusing for customers. At the end of it, it seemed like providing a wide selection of export options didn’t really provide anything useful to the end user.

Feedback on export is quite welcome! We had an older implementation of export a few releases ago, which we discarded in favor of an even simpler implementation.

Here is what we have internally on the CSV export format right now, which will be updated a bit before being published (somewhere, tbd)

Digital

Format:

Time,Channel0,Channel1
0,1,1
0.23,0,1
0.343,1,1
0.931,0,0
0.938,1,0
1.024,1,0

The time column is the time in seconds since the beginning of the exported range. The first line (time 0) is the initial state of the channels. Each row after that, except for the last row is the time at which a transition occurred on 1 or more channels, and the state of the channels after the transition. The last row contains the final state at the end of the time range requested. If there was a transition right at that sample, you will get 2 duplicate lines (one for the transition, one for the final state).

Analog

Format:

Time,Channel0,Channel1
0,-0.004883,-0.004883
0.080,-0.004883,9.995117
0.160,-0.004883,-0.004883
0.240,-0.004883,-10.000000
0.320,-0.004883,-0.004883
0.400,-0.004883,9.995117
0.480,-0.004883,-0.004883
0.560,-0.004883,-10.000000
0.640,-0.004883,-0.004883
0.720,-0.004883,9.995117
0.800,-0.004883,-0.004883
0.880,-0.004883,-10.000000
0.960,-0.004883,-0.004883
1.040,-0.004883,9.995117

The time column is the time in seconds since the beginning of the exported range. Each row is a snapshot of the analog channel values at a certain point in time. Downsampled values are not interpolated - they are the actual values at that point in time.

One more thing: The save dialog should say "folder name’ not ‘file name’ if it is a folder that it is exporting to. That would help with the confusion.

Ok, we just fixed a few things, and rather than create a new post, we just updated this one with the latest build. You should also get a notification the next time you open the app that 2.1.3 is available.

A few quick fixes:

  • we fixed CSV export, and added binary export. The problem was that we accidentally included the back-end implementation of binary export without the front-end implementation, which was just waiting on a few minor changes.
  • we fixed the crash that occurred when opening the device selector dialog from the main menu.
  • we fixed a minor visual glitch in the graph background grid when restarting an capture, if an analyzer was present.

New Feature - General Notes to file about test setup
Is there some feature in the queue for adding notes to a file. Like where I can put in all infos about the test-setup etc?

Maybe a free text field encouraging you to something like a grey autotext:
“Put in here relevant info about the recorded trace. Think about HW and SW-Version or the git-tag you have used. Don’t forget to note suspicious behavior or the final result you’ve drawn from this test.”

For this feature markdown support would be really nice.

More ideas into this direction

  • Make place holder possible like the OS-Version
  • the git-id of the source code the time it has been captured
  • capture date
1 Like

New Feature - Presets for Channels / Analyzer
Is it possible to store/load presets?
those presets should include:

  • the order and property of the channels
  • the name of the channels
  • bit-rate, assigned analyzers

As a project manager I would like to “set” one configuration, so that all traces of my colleges have the same format. So something like a global header file everyone may include.
As a developer I would like this, because I can manage different setups really quick. I tend to craft special adapter for every setup and then just plug in the saleae. To load a configuration to present the pinning of the adapter would be handy.

Probably a message like: “Trace recorded with preset MyCompanniesPreset.cfg version 1.2.3 hash:12345566445” possible button: [export configuration]

1 Like

It’s not possible yet, but it’s on our roadmap.
Thanks for the detailed explanation, it’s super helpful!

Quick question: Does this release have the ability to generate reports from the different analyzers?

That is suppose I capture data using the USB LS and FS D+/D- analyzer. With the current released (actually last beta one) I would go to the different options, and for example with control transfers, I would export a CSV file.

I might then bring it into sublime-text to remove the majority of the bulk to just give me real data, and then bring into excel. When I say real data, I get rid of all of the things, like keep alive, NAK, start of … And actually maybe combine a few messages into one, so I just have the higher level things like: A request for data, responses…

I started off here asking if you were going to extend the reporting in here and make suggestions, but I don’t actually see any reports…

Not yet. We’re planning on adding that in the near future though.
You’ll also be able to filter and export from the results table directly instead of doing that in Excel.

I just spent a couple days using 2.1.3 heavily, and I really miss the ability to create marker pairs just by using the “1”, “2”, “3”, etc. keys (from the old version of Logic). As I’m zooming in and out of my capture, one of the most common things I need to do is measure time deltas between edges across channels - thus the maker pair need. The current 2.1.3 method of creating pairs of timing markers is slower and clunkier for this use. (other than that - I’m loving the new version!)

You’re absolutely right, it’s a clunky at the moment, but the next version will be much better imo. We’re hoping to release it today :slight_smile:

I’d love to get your feedback on it.

p.s. the next next version is going to be even better!

I have no doubt. You’re making amazing progress on each new version. We’re just loving these new Alpha versions at work.

Hello! After the update, short pulses are filtered. In the last working (for Win7) version - Alpha 12 everything worked fine))


How short are they? Could it be the “Glitch filter” in the capture settings?