2.2.8 is a small follow up release after the big 2.2.7 release from last week. It mainly focuses on exception handling and memory management. The app now properly clears old memory when recording in looping mode, and it deletes sessions on a background thread to keep the UI responsive when restarting captures or closing tabs.
Reminder: releases now include a new interface for writing high-level protocol decoders in Python. Check out the documentation here: github.com/saleae/logic2-examples
Bug Fixes:
fixed frequent crash in digital rendering that occurred after some digital data had been deleted
now properly delete memory when the capture buffer gets full.
moved session deletion to a new thread, so it doesn’t block the UI.
changed most USB error handling from hard crashing to an error notification.
Thank you for the update! I have verified that this version does fix the memory leak when recording in looping mode. I am occasionally seeing Logic stop a looping recording on its own though. It doesn’t seem consistent as to when it does this, so I’m guessing it is not an intended feature.
Unfortunately, I am still seeing a crash when running an analyzer on a clip. The max clip size seems to be around 5 seconds for my setup. I have the crash reporting turned on, and my machine ID is as follows:
{“Environment”:“production”,“Branch”:“master”,“Commit”:“5580bf9ed258ac0195f1192743f9c47360277c55”,“Version”:“2.2.8”,“MachineID”:“a09981d1-9b65-4f80-944e-90c572bd4901”}
I appreciate the frequent updates so far, and getting this crash issue resolved would be very helpful.
I’m having trouble finding that crash report, but I am currently working on fixing a crash related to analyzers, and it sounds like the same crash you are hitting. A fix for it should be in the next release - I’ll be curious to hear if it resolves your issue!
I’m having trouble running for long periods of time. I have the Memory Buffer Size set to 0.1 GB, it’s in Trigger mode waiting for D0 to go low, and I let it run for several hours waiting for a trigger. Normally the Memory usage line (in orange) just goes to 100MB, but after several hours of running, it stops taking data, the Memory usage line says 409.9 MB, and the red stop button doesn’t do anything anymore. Here’s what it looks like :
I only need to see about 2 seconds before the trigger and maybe 1 second after. My hope with setting the buffer so small was that any problems associated with Logic using large amounts of RAM would be minimized. Would using a larger buffer possibly help?
Also, I’m not sure it was hours - I set it up before I went to bed last night, and this morning when I checked on it it had locked up. It may have been 10 minutes, or 6 hours, I don’t know.
Is there any debug information I can send you to help?
It might help but it’s hard to say (at least until we’ll identifying the bug…)
Can you share you capture settings? I’ll try reproducing it here
Sure. Four digital channels (D0-D3) and two analog channels (A4,A5) , 6.25MS/s (digital) and 1.5625 MS/s (analog). Trigger on falling edge of D0. Trigger mode.
After trying it a couple more times while watching it this morning, it doesn’t take but maybe 15 minutes before something goes awry. Instead of just 100MB of memory usage on the orange line, I see 1.4GB and the traces have stopped updating. This appears to be repeatable for me. At that point the stop button does nothing, but I can close Logic by clicking the window’s X.
I have had multiple times with this latest version and prior version where Logic will cause my computer to lockup, where I need to do a hard reset to fix it (the computer is super busy doing something, but never recovers - perhaps another memory leak?) I was running with the same settings as above.
Note: I am running an up-to-date manjaro install.