Index: dialin/common/hd_defs.py =================================================================== diff -u -rc61eff081973c9fb186c353e9ff0360549b57a78 -r57b7159edd44ae10a59545530f6623e4c87eedf0 --- dialin/common/hd_defs.py (.../hd_defs.py) (revision c61eff081973c9fb186c353e9ff0360549b57a78) +++ dialin/common/hd_defs.py (.../hd_defs.py) (revision 57b7159edd44ae10a59545530f6623e4c87eedf0) @@ -18,13 +18,89 @@ @unique class HDDefs(DialinEnum): - MODE_FAUL = 0 # Fault mode - MODE_SERV = 1 # Service mode - MODE_INIT = 2 # Initialization & POST mode - MODE_STAN = 3 # Standby mode - MODE_TPAR = 4 # Treatment Parameters mode - MODE_PRET = 5 # Pre-Treatment mode - MODE_TREA = 6 # Treatment mode - MODE_POST = 7 # Post-Treatment mode - MODE_NLEG = 8 # Not legal - an illegale mode transition occurred - NUM_OF_MODES = 9 # Number of HD operation modes \ No newline at end of file + MODE_FAUL = 0 # Fault mode + MODE_SERV = 1 # Service mode + MODE_INIT = 2 # Initialization & POST mode + MODE_STAN = 3 # Standby mode + MODE_TPAR = 4 # Treatment Parameters mode + MODE_PRET = 5 # Pre-Treatment mode + MODE_TREA = 6 # Treatment mode + MODE_POST = 7 # Post-Treatment mode + MODE_NLEG = 8 # Not legal - an illegale mode transition occurred + NUM_OF_MODES = 9 # Number of HD operation modes + + +@unique +class HD_Pre_Treatment_Mode_States(DialinEnum): + HD_PRE_TREATMENT_START_STATE = 0 # Start pre-treatment mode state + HD_PRE_TREATMENT_WATER_SAMPLE_STATE = 1 # Water sample state + HD_PRE_TREATMENT_SELF_TEST_NO_CART_STATE = 2 # Self tests with no cartridge state + HD_PRE_TREATMENT_CART_INSTALL_STATE = 3 # Consumable and cartridge installation state + HD_PRE_TREATMENT_SELF_TEST_DRY_STATE = 4 # Self tests dry state + HD_PRE_TREATMENT_PRIME_STATE = 5 # Prime blood and dialysate circuits and run wet self-tests state + HD_PRE_TREATMENT_RECIRCULATE_STATE = 6 # Re-circulate blood and dialysate circuits state + HD_PRE_TREATMENT_PATIENT_CONNECTION_STATE = 7 # Patient connection state + NUM_OF_HD_PRE_TREATMENT_STATES = 8 # Number of pre-treatment mode states + +class HD_Pre_Treatment_Sample_Water_States(DialinEnum): + SAMPLE_WATER_SETUP_STATE = 0 # Sample water setup state of the sample water sub-mode state machine + SAMPLE_WATER_STATE = 1 # Sample water state of the sample water sub-mode state machine + NUM_OF_SAMPLE_WATER_STATES = 2 # Number of sample water sub-mode states + +class HD_Pre_Treatment_No_Cart_Self_Tests_States(DialinEnum): + NO_CART_SELF_TESTS_START_STATE = 0 # No cartridge self-tests starting state. + NO_CART_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE = 1 # Wait for door to be closed before running self-tests. + NO_CART_SELF_TESTS_OCCLUSION_SENSORS_STATE = 2 # No cartridge occlusion sensors self-test state. + NO_CART_SELF_TESTS_BLOOD_FLOW_METERS_STATE = 3 # No cartridge blood flow meter self-test state. + NO_CART_SELF_TESTS_DIALYSATE_FLOW_METERS_STATE = 4 # No cartridge dialysate flow meter self-test state. + NO_CART_SELF_TESTS_PUMPS_STATE = 5 # No cartridge self-test for blood pump, dialysate in pump, dialysate out pump state. + NO_CART_SELF_TESTS_LEAK_DETECTORS_STATE = 6 # No cartridge leak detectors self-test state. + NO_CART_SELF_TESTS_BOARD_TEMPERATURE_STATE = 7 # No cartridge board temperature self-test state. + NO_CART_SELF_TESTS_DOOR_SWITCH_STATE = 8 # No cartridge door switch self-test state. + NO_CART_SELF_TESTS_HOME_VALVES_AND_PUMPS_STATE = 9 # No cartridge home valves and pumps self-test state. + NO_CART_SELF_TESTS_HOME_IDLE_STATE = 10 # Wait for valves and pumps finish homing state. + NO_CART_SELF_TESTS_STOPPED_STATE = 11 # No cart self-test stopped state. + NO_CART_SELF_TESTS_COMPLETE_STATE = 12 # No cartridge self-test complete state. + NUM_OF_NO_CART_SELF_TESTS_STATES = 13 # Number of no cartridge self-tests states. + +class HD_Pre_Treatment_Cartridge_Install_States(DialinEnum): + CARTRIDGE_INSTALL_STATE = 0 # Pre-treatment Cartridge Install state. + NUM_OF_CARTRIDGE_INSTALL_STATES = 1 # Number of pre-treatment Cartridge Install states. + +class HD_Pre_Treatment_Dry_Self_Tests_States(DialinEnum): + DRY_SELF_TESTS_START_STATE = 0 # Dry self-tests starting state. + DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE = 1 # Wait for door to close before executing self-tests. + DRY_SELF_TESTS_BUBBLE_DETECTOR_STATE = 2 # Bubble detectors dry self-test state. + DRY_SELF_TESTS_AIR_TRAP_STATE = 3 # Air trap fill level ultrasonic sensor dry self-test state. + DRY_SELF_TESTS_OCCLUSION_SENSORS_STATE = 4 # Occlusion sensors dry self-test state. + DRY_SELF_TESTS_PRESSURE_SENSORS_SETUP_STATE = 5 # Pressure sensors dry self-test setup valves and pump state. + DRY_SELF_TESTS_PRESSURE_SENSORS_STATE = 6 # Pressure sensors verify pressure readings state. + DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_STATE = 7 # Preassure sensors verify normal pressure readings state. + DRY_SELF_TESTS_STOPPED_STATE = 8 # Dry self-test stopped state. + DRY_SELF_TESTS_COMPLETE_STATE = 9 # Dry self-test complete state. + NUM_OF_DRY_SELF_TESTS_STATES = 10 # Number of dry self-tests states. + + +class HD_Pre_Treatment_Prime_States(DialinEnum): + HD_PRIME_START_STATE = 0 # Prime start state + HD_PRIME_WAIT_FOR_USER_START_STATE = 1 # Wait for user to start prime state + HD_PRIME_SALINE_SETUP_STATE = 2 # Saline setup state + HD_PRIME_SALINE_PURGE_AIR_STATE = 3 # Saline purge air state + HD_PRIME_SALINE_CIRC_BLOOD_CIRCUIT_STATE = 4 # Circulate blood circuit state + HD_PRIME_RESERVOIR_ONE_FILL_COMPLETE_STATE = 5 # Wait for reservoir 1 fill complete + HD_PRIME_DIALYSATE_DIALYZER_STATE = 6 # Dialysate dialyzer fluid path state + HD_PRIME_RESERVOIR_TWO_FILL_COMPLETE_STATE = 7 # Wait for reservoir 2 fill complete + HD_PRIME_DIALYSATE_BYPASS_STATE = 8 # Dialysate bypass fluid path state + HD_PRIME_WET_SELF_TESTS_STATE = 9 # Perform wet self-tests after priming complete + HD_PRIME_PAUSE = 10 # Prime pause state, waits to be resumed + HD_PRIME_COMPLETE = 11 # Prime complete state + NUM_OF_HD_PRIME_STATES = 12 # Number of prime sub-mode states + +class HD_Pre_Treatment_Recirc_States(DialinEnum): + PRE_TREATMENT_RECIRC_STATE = 0 # Pre-treatment recirculate state. + PRE_TREATMENT_RECIRC_STOPPED_STATE = 1 # Pre-treatment recirculate stopped state. + NUM_OF_PRE_TREATMENT_RECIRC_STATES = 2 # Number of pre-treatment recirculate states. + +class HD_Pre_Treatment_Patient_Connection_States(DialinEnum): + PATIENT_CONNECTION_STATE = 0 # Pre-treatment Patient Connection state. + NUM_OF_PATIENT_CONNECTION_STATES = 1 # Number of pre-treatment Patient Connection states. \ No newline at end of file Index: dialin/ui/hd_simulator.py =================================================================== diff -u -r4923706568f2f70f48c12401bff2039b01513ca9 -r57b7159edd44ae10a59545530f6623e4c87eedf0 --- dialin/ui/hd_simulator.py (.../hd_simulator.py) (revision 4923706568f2f70f48c12401bff2039b01513ca9) +++ dialin/ui/hd_simulator.py (.../hd_simulator.py) (revision 57b7159edd44ae10a59545530f6623e4c87eedf0) @@ -1852,6 +1852,7 @@ installation_state, dry_self_test_state, prime_state, + recirculate_state, patient_connection_state): """ sends the broadcast message of the pre-treatment states @@ -1861,6 +1862,7 @@ :param installation_state : (U32) installation state :param dry_self_test_state : (U32) dry self-test state :param prime_state : (U32) prime state + :param recirculate_state : (U32) recirculate state :param patient_connection_state : (U32) patient connection state :return: """ @@ -1870,6 +1872,7 @@ payload += integer_to_bytearray(installation_state) payload += integer_to_bytearray(dry_self_test_state) payload += integer_to_bytearray(prime_state) + payload += integer_to_bytearray(recirculate_state) payload += integer_to_bytearray(patient_connection_state) message = DenaliMessage.build_message(channel_id=DenaliChannels.hd_sync_broadcast_ch_id,