Skip to content

Release Notes for v1.4.0

Choose a tag to compare

@DanielRossi1 DanielRossi1 released this 03 Dec 10:17
· 13 commits to main since this release

What's New

Performance Improvements

  • Event-driven rendering: Plot updates are now triggered by user interactions (pan/zoom) instead of fixed timer polling, reducing CPU usage significantly
  • OpenGL acceleration: Hardware-accelerated rendering for smooth 60+ FPS plotting (requires PyOpenGL)
  • Antialiasing: Smooth line rendering for better visual quality
  • Optimized data slicing: Only visible data points are rendered, improving performance with large datasets

Bug Fixes

  • Fixed plot not updating after stopping acquisition - pan/zoom now works correctly on historical data
  • Fixed graph synchronization issues between voltage, current, and power panels
  • Fixed race conditions when stopping/starting acquisition rapidly

Technical Changes

  • Replaced timer-based updates with sigRangeChanged signal from pyqtgraph ViewBox
  • Added rate limiting (max 60 FPS) to prevent excessive updates during rapid interactions
  • Improved buffer management with numpy array caching

Installation

Pre-built Binaries

Download the appropriate file for your platform from the assets below.

From Source

pip install PySide6 pyqtgraph pyserial reportlab matplotlib numpy PyOpenGL
python run.py