Skip to content

Plot and curving compare data continuously read from serial port ; using pyside6 & pyqt; All platform supported

Notifications You must be signed in to change notification settings

biching/serial_port_data_plotting_comparator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

serial_com_data_plotting_comparator

1. Function:

  • continuously reading multiple set of data from serial com,
  • plotting them to curve,
  • and making camparison.
  • with clean UI

2. Toolset

  • Create UI and interaction functions with pyside6(QT for python);
  • Plot data with pyQtGraph
  • All platform supported: MacOS(tested), Linux, Windows

3. How to use

3.1 Use case on Mac

select setting:

Full setting:

3.2 The input data(serial port data stream) format is simple like this:

// group 1(must)
$x1:-3257.31
$y1:-3257.14
$z1:-3257.14
// group 2(option)
$x2:-3257.31
$y2:-3257.14
$z2:-3257.14

4. Deploment for mac

4.1 Use PyInstaller

# Install the PyInstaller via pip:
pip install pyinstaller

# Then package the application with the following command in the root directory:
pyinstaller --name="Serial Plotter" --windowed --icon resource/icon.icns  main.py

You can find the packaged application in the dist folder.

4.2 Use pyside6-deploy

It compile pyside6 into diferent modules instead of whole package, so you can reduce the useless ones pyside6-deploy is along with pyside6, you don't need to install it separately.

pyside6-deploy -c pysidedeploy.spec 
cd src/deployment/serialPlotter.app/Contents/MacOS
rm QtPdf QtQml QtQmlModels QtQuick libcrypto.3.dylib QtNetwork

5. Thanks

comtool is very useful tool for serial port data reading, but it's graph plugin for mac is not working. That's why I made this clean tool.

About

Plot and curving compare data continuously read from serial port ; using pyside6 & pyqt; All platform supported

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages