diff --git a/classCAN.py b/classCAN.py index 566a484..21a0eea 100644 --- a/classCAN.py +++ b/classCAN.py @@ -339,6 +339,9 @@ class CANBackend: print(f"[DEBUG] Writing ploop_setpoint {ploop_setpoint} to master OD 0x{setpoint_index:04X}:{pu_number:02X}") master_node.sdo[setpoint_index][1].raw = int(ploop_setpoint * 100) + print(f"[DEBUG] Writing qperm_setpoint {ploop_setpoint} to master OD 0x{setpoint_index:04X}:{pu_number:02X}") + master_node.sdo[setpoint_index][5].raw = int(qperm_setpoint) + except Exception as e: print(f"[MASTER SDO WRITE ERROR] PU{pu_number}: {e}") raise diff --git a/main.py b/main.py index f10a9c7..524a5a9 100644 --- a/main.py +++ b/main.py @@ -257,7 +257,7 @@ def send_command(state: str, pu_number: int, ploop_setpoint: float = Query(...), logging.info(f"Sending state '{state}' to PU {pu_number}") pu_number = [pu_number] if pu_number !=3 else [1,2] # Temporary way of starting two pus - print("pu_number", pu_number) + if state == "IDLE": set_patient_skid_users(0) url = f"http://192.168.1.28:8000/stop_test" @@ -270,16 +270,19 @@ def send_command(state: str, pu_number: int, ploop_setpoint: float = Query(...), try: for pu in pu_number: + # current_state = can_backend.read_current_state(pu) + # while current_state != state: can_backend.send_state_command(state, pu, ploop_setpoint, qperm_setpoint) current_state = can_backend.read_current_state(pu) - return { - "status": "success", - "command": state, - "pu": pu, - "ploop_setpoint": ploop_setpoint, - "qperm_setpoint": qperm_setpoint, - "current_state": current_state, - } + + return { + "status": "success", + "command": state, + "pu": pu, + "ploop_setpoint": ploop_setpoint, + "qperm_setpoint": qperm_setpoint, + "current_state": current_state, + } except Exception as e: raise HTTPException(status_code=500, detail=str(e))