STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
lc_calibration_gui Namespace Reference

Classes

class  UDPReceiver
class  SettingsWindow
class  LCPlotWindow

Functions

Optional[Tuple[int, int, int]] parse_packet_header (bytes data)
Optional[Tuple[dict, List[dict]]] parse_sensor_data_packet (bytes data)
 main ()

Variables

 _QT_HORIZ = QtCore.Qt.Horizontal
 antialias
 False
 useOpenGL
int MAX_PACKET_SIZE = 512
 PacketType = type("PacketType", (), {"SENSOR_DATA": 3})
str PACKET_HEADER_FORMAT = "<BBI"
int PACKET_HEADER_SIZE = 6
str SENSOR_DATA_PACKET_FORMAT = "<BB"
int SENSOR_DATA_PACKET_SIZE = 2
str SENSOR_DATA_CHUNK_FORMAT = "<I"
int SENSOR_DATA_CHUNK_SIZE = 4
str SENSOR_DATAPOINT_FORMAT = "<Bf"
int SENSOR_DATAPOINT_SIZE = 5
int DEFAULT_PORT = 5006
float DEFAULT_WINDOW_SECONDS = 30.0
int MAX_POINTS = 10000
int UPDATE_INTERVAL_MS = 100
int NUM_LC_CONNECTORS = 10
int NUM_LC_SENSORS = 5
list SENSOR_TO_CONNECTOR = [1, 2, 3, 6, 7]
list LC_COLORS

Detailed Description

LC Calibration GUI – Live plots for LC_Calibration

Receives DAQv2-Comms SENSOR_DATA packets over UDP from LC_Calibration firmware,
decodes them, and displays real-time voltage plots for each LC connector (1, 2, 3, 6, 7).

Ensure the firmware's receiverIP matches this machine's IP (or use 192.168.2.20)
and that the GUI listens on port 5006.

  pip install -r requirements.txt
  python lc_calibration_gui.py [-p 5006] [-a 0.0.0.0]

  On macOS, if you get a segfault: use PyQt5 instead of PyQt6
  (pip install PyQt5; this script will try PyQt5 if PyQt6 is unavailable).

Function Documentation

◆ main()

lc_calibration_gui.main ( void )

Definition at line 558 of file lc_calibration_gui.py.

References main().

◆ parse_packet_header()

Optional[Tuple[int, int, int]] lc_calibration_gui.parse_packet_header ( bytes data)

◆ parse_sensor_data_packet()

Optional[Tuple[dict, List[dict]]] lc_calibration_gui.parse_sensor_data_packet ( bytes data)

Definition at line 100 of file lc_calibration_gui.py.

References parse_packet_header().

Referenced by lc_calibration_gui.UDPReceiver.run().

Variable Documentation

◆ _QT_HORIZ

lc_calibration_gui._QT_HORIZ = QtCore.Qt.Horizontal
protected

Definition at line 33 of file lc_calibration_gui.py.

◆ antialias

lc_calibration_gui.antialias

Definition at line 53 of file lc_calibration_gui.py.

◆ DEFAULT_PORT

int lc_calibration_gui.DEFAULT_PORT = 5006

Definition at line 67 of file lc_calibration_gui.py.

◆ DEFAULT_WINDOW_SECONDS

float lc_calibration_gui.DEFAULT_WINDOW_SECONDS = 30.0

Definition at line 68 of file lc_calibration_gui.py.

◆ False

lc_calibration_gui.False

Definition at line 53 of file lc_calibration_gui.py.

◆ LC_COLORS

list lc_calibration_gui.LC_COLORS
Initial value:
1= [
2 (255, 80, 80), # Red - LC 1
3 (80, 255, 80), # Green - LC 2
4 (80, 150, 255), # Blue - LC 3
5 (255, 200, 80), # Orange - LC 4
6 (200, 80, 255), # Purple - LC 5
7 (80, 255, 255), # Cyan - LC 6
8 (255, 150, 150), # Light Red - LC 7
9 (150, 255, 150), # Light Green - LC 8
10 (150, 200, 255), # Light Blue - LC 9
11 (255, 255, 80), # Yellow - LC 10
12]

Definition at line 77 of file lc_calibration_gui.py.

◆ MAX_PACKET_SIZE

int lc_calibration_gui.MAX_PACKET_SIZE = 512

Definition at line 56 of file lc_calibration_gui.py.

◆ MAX_POINTS

int lc_calibration_gui.MAX_POINTS = 10000

Definition at line 69 of file lc_calibration_gui.py.

◆ NUM_LC_CONNECTORS

int lc_calibration_gui.NUM_LC_CONNECTORS = 10

Definition at line 71 of file lc_calibration_gui.py.

◆ NUM_LC_SENSORS

int lc_calibration_gui.NUM_LC_SENSORS = 5

Definition at line 72 of file lc_calibration_gui.py.

◆ PACKET_HEADER_FORMAT

str lc_calibration_gui.PACKET_HEADER_FORMAT = "<BBI"

Definition at line 58 of file lc_calibration_gui.py.

◆ PACKET_HEADER_SIZE

int lc_calibration_gui.PACKET_HEADER_SIZE = 6

Definition at line 59 of file lc_calibration_gui.py.

◆ PacketType

lc_calibration_gui.PacketType = type("PacketType", (), {"SENSOR_DATA": 3})

Definition at line 57 of file lc_calibration_gui.py.

◆ SENSOR_DATA_CHUNK_FORMAT

str lc_calibration_gui.SENSOR_DATA_CHUNK_FORMAT = "<I"

Definition at line 62 of file lc_calibration_gui.py.

◆ SENSOR_DATA_CHUNK_SIZE

int lc_calibration_gui.SENSOR_DATA_CHUNK_SIZE = 4

Definition at line 63 of file lc_calibration_gui.py.

◆ SENSOR_DATA_PACKET_FORMAT

str lc_calibration_gui.SENSOR_DATA_PACKET_FORMAT = "<BB"

Definition at line 60 of file lc_calibration_gui.py.

◆ SENSOR_DATA_PACKET_SIZE

int lc_calibration_gui.SENSOR_DATA_PACKET_SIZE = 2

Definition at line 61 of file lc_calibration_gui.py.

◆ SENSOR_DATAPOINT_FORMAT

str lc_calibration_gui.SENSOR_DATAPOINT_FORMAT = "<Bf"

Definition at line 64 of file lc_calibration_gui.py.

◆ SENSOR_DATAPOINT_SIZE

int lc_calibration_gui.SENSOR_DATAPOINT_SIZE = 5

Definition at line 65 of file lc_calibration_gui.py.

◆ SENSOR_TO_CONNECTOR

list lc_calibration_gui.SENSOR_TO_CONNECTOR = [1, 2, 3, 6, 7]

Definition at line 74 of file lc_calibration_gui.py.

◆ UPDATE_INTERVAL_MS

int lc_calibration_gui.UPDATE_INTERVAL_MS = 100

Definition at line 70 of file lc_calibration_gui.py.

◆ useOpenGL

lc_calibration_gui.useOpenGL

Definition at line 53 of file lc_calibration_gui.py.