nathandunk / BetterSerialPlotter

A drop-in replacement for the arduino serial plotter
MIT License
162 stars 25 forks source link

Suggestion: Add a Dash view with both plotted and non-plotted graphics #17

Open dapug opened 1 year ago

dapug commented 1 year ago

OK, this is probabaly WAY off scope for this project (or certainly a v2.x), but I have to toss this out there.

It would be TOTALY cool if we could represent data in custom ways, probably using python to describe graphics, in addition to plotting.

Example: A motor with an encoder shows the position of the motor as well as full 360 rotations, but also direction (forward/reverse). Here we see Direction appearing as basically HIGH/LOW. image

Above is good if you want to see behavior of things at any given point in time.

Also valuable, however, is to have a simple view showing CURRENT state of certain sensors, along with plotted data. So for example, if I don't care about the historic data of Direction, and I just want to see what CURRENT state it is right now, along with other plotted data.

image

Above, I've theoretically converted 0 or 1 to "Forward" or "Reverse", which is reflected in a simple graphic, and "data 0" 0 or 1 ended up being "on" or "off" in this example, each with their respective "modules", showing the last known (current or real-time) state. The module, BTW, might contain something like this simple python script that takes a single serial data value and renders it graphically.

Doing this allows for essentially the creation of "Dashboard" views while working on projects. Best case scenario, it could be done, perhaps, with simple custom modules defined in Python, and able to be placed on the canvas.

The blue vertical line, BTW, could be a "scrubber" wherein if you "pause" the real-time feed for a snapshot, you move that line back and forth and see the state of values (such as Direction, or data 0, or whatever) at that point and time.