How to manipulate data post recording?

Hi, I just received my Joulescope JS220 and am playing around with it on a simple circuit. It works exactly as expected and is awesome. I went to save a recording and saw the .jls format so did some more digging. I now see all the previous discussions and questions regarding .csv limitations and so on and I understand all that.

What I am confused about is once I do take a recording, say for example, 30-60 seconds at 100kHz how do I further process the data? Like run a Fourier transform on the data. Do I just write a python script to do so and the matplotlib to make plots, etc? I am just a little confused about the workflow once I have the .jls file and how to call the data into a script that can then be further processed. I’m not terribly proficient in python which is probably why I am confused but I can make do.

Apologies if I am missing something and appreciate any feedback.

Hi @cabala and welcome to the Joulescope forum! Congrats on your new JS220, and great to hear that it is working well for you.

There is no one way to further process data, as analysis means different things to different people.

The easiest way is with the Joulescope UI. It enables quite a bit for manual inspection. Adding dual markers is the key. Right-click on the x-axis, and you will see the option in the context menu. In general, right-click (control-click on Mac) to get a context-sensitive menu.

You can double-click on the JLS file to open it in the UI in file viewer mode, or you can open it from within the Joulescope UI with File → Open. To keep things clean, I recommend selecting View → File first. You can then add dual markers. Right-click on one of the dual markers, click Analyze, then select Frequency. This will give you a Fourier transform.

The next step is to use some of our command-line tools. You can quickly plot the JLS file with:

python -m pyjls plot <file.jls>

If you just want a downsampled version for Excel:

python -m pyjls csv <in.jls> <out.csv> --count 10000

The next step from there is using the pyjls package to open the JLS file in Python and do whatever you want with the data. Here is one example. The pyjls entry points are good, too. Docs here.


Does this help?