# Dialin Changelog All notable changes to this project will be documented in this file. ### [0.8.0] - 2020-10-21 - DEN-5329: Fixed msg defs conflict - DEN-5329: Updated hd simulator to show realistic priming screen behavior - DEN-4308 removed try and except clauses from the publish function - DIAL-37: Using struct.pack to convert from integer to bytearray instead of unhexlify. - DIAL-32: Updated scripts to generate user needs - DEN-5136, DEN-4787: Renamed ui/hd_proxy.py to hd_simulator, updated alarms simulator - DEN-5053: Added HD and DG s/w reset request commands. - DEN-4308 added air trap valve status to the publish function - DEN-5136: Updated create, confirm, priming, begin workflow and alarms test code - DEN-5053: Added HD class for Air Trap module. - DEN-4856: Added HD simulator functions to listen for treatment start messages. - DEN-4856: Added capability to simulate priming in the UI - DEN-4169: Use common msg id and address code review - DEN-4169: Added alarm module to dg - DEN-4589: Created version.py symlink, fixed setup.py import - DEN-4589: Fixed drain pump bug, added dg get_fpga_version() - DEN-4589: Removed pkg-resources dependency - DEN-4589: Version fix - DEN-4589: Added missing get_fpga_version to ui proxy, adjusted treatment parameters response ordering. ### [0.7.0] - 2020-08-27 - DIAL-29: Added DG temperature sensors enum - DEN-4344, DIAL-9: Documentation fixes - Removed empty file - DIAL-28, DEN-4589, DEN-4344: Ensure unit tests don't mix with hardware reliant tests, finalized import test - DIAL-28, DEN-4589, DEN-4344: Simplified dialin import system - DEN-4322: Removed alignment per code review - DEN-4589 Fixed HD import issue and reworked version.py to work outside of git repos. - DEN-4322: Removed RO rejection ratio override command - Updated hd simulator test - DEN-4322: Updated Dialin API for DG RO rejection ratio - Added canbus convenience functions - Fixed ro pump msg ids, added fpga version to dg and hd versions, added test imports to unit tests, cleaned up get alarm states - Added common, improved ui folder structure - Updated hd_simulator, hd buttons, and test hd simulator - DEN-4436: Denali Investigate and Fix the new VM issues - Updated changelog ### [0.6.0] - 2020-08-06 #### Added - Added constraints to HD documentation - `dialin.dg.conductivity_sensors` - Conductivity sensor override command - Conductivity values get function - Conductivity sensor data broadcast interval override command - Rejection reasons to `hd.ui_proxy`, accessible via `get_reject_reasons()` - `dialin.utils.base` - Added convenience function to simplify lookups of a group of constants (e.g. message ids, alarm ids, etc.) - Added `create_logger` function to simplify logging in dialin scripts - Added `_LogManager` class - Integration with bamboo unit tests runner - Automatically generated file headers #### Changed - Converted all print statements to log messages - Dialin internal logging levels `["DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL", "CAN_ONLY", "PRINT_ONLY"]` #### Fixed - Removed unneeded imports - Added Logger type information - DG RO Pump message ID definitions ### [0.5.0] - 2020-07-20 #### Added - The following alarms have been added: - `ALARM_ID_VALVE_CONTROL_FAILURE = 51` - `ALARM_ID_BLOOD_PUMP_FLOW_VS_MOTOR_SPEED_CHECK = 52` - `ALARM_ID_DIAL_IN_PUMP_FLOW_VS_MOTOR_SPEED_CHECK = 53` - `ALARM_ID_DIAL_OUT_PUMP_FLOW_VS_MOTOR_SPEED_CHECK = 54` - `ALARM_ID_BLOOD_PUMP_MOTOR_SPEED_CHECK = 55` - `ALARM_ID_DIAL_IN_PUMP_MOTOR_SPEED_CHECK = 56` - `ALARM_ID_DIAL_OUT_PUMP_MOTOR_SPEED_CHECK = 57` - `ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_TOO_HIGH = 58` - `ALARM_ID_INLET_WATER_TEMPERATURE_OUT_OF_RANGE = 59` #### Fixed - Fixed base class subclassing and base class initialization of `utils.base._AbstractSubSystem` in - `dialin.dg.hd_proxy` - `dialin.dg.pressures` - `dialin.dg.reservoirs` - `dialin.dg.ro_pump` - `dialin.hd.buttons` - `dialin.hd` - `dialin.hd.rtc` - `dialin.hd.treatment` - `dialin.hd.ui_proxy` - `dialin.hd.watchdog` - Fixed code styling in - `dialin.dialysate_generator` - `dialin.dg.drain_pump` - `dialin.base` - Fixed inaccurate initialization function docstrings ### [0.4.1] - 2020-07-20 #### Fixed - Fixed invalid DG operation mode handler function registration ### [0.4.0] - 2020-07-20 #### Added - Migration of squishapi to dialin - `dialin.squish.crc` - `dialin.squish.denaliMessages` - `dialin.squish.globals` - `dialin.squish.messageBuilder` - `dialin.squish.unittests` - `dialin.squish.utils` - Test script to generate requirements - Unit test to sort the valve state dictionaries - Convenience script to build dialin wheel file and install it to a virtual environment #### Fixed - DG valves test to be compatible with valve state dictionary format - Improved PEP8 compliance - Method spacing: (1 line) - Function spacing: (2 lines) - Missing copyright headers ### [0.3.0] - 2020-07-15 #### Added - DG Dialysate Temperature monitoring - `dg.temperature_sensors` #### Fixed - PEP8 compliance of `dg.heaters` - Integration test for `dg.heaters` ### [0.2.0] - 2020-06-30 #### Added - Ability to attach / detach multiple observers - `dialin.base.AbstractObserver` class - `dialin.base._AbstractSubSystem` class - `dialin.base._publish` decorator - Getter functions for all publicly accessible variables - Branch and commit hash to docs - Data publishing from all subsystem classes (using the `@_publish` decorator) - Demo tests - Alarm simulation - `CAN-ONLY` logging with candump styled output #### Changed - Parent class for all submodules - Dialin version configuration and integration with sphinx, pip - Documentation now generated by sphinx instead of Doxygen - Handler functions are private - README #### Removed - Doxygen configuration #### Fixed - DG valves rate test - Alarms initialization - Valves bit masking - Documentation cleanup - Logging isolation - Ultrafiltration test script - Copyrights ### [0.1.0] - 2020-05-28 #### Added - Submodules: hd, dg, utils, and protocols - Setup dialin as a python package - Internal API Logging - Copyright headers - Unit test to import classes - HD demo test script - HD / DG integration tests #### Changed - Ensure PEP8 Compliance - Ensure snake case is used for all variables and functions - README - HD / UI messaging - Split up HD / DG subclasses into separate files #### Removed - Softlinks - Deprecated code #### Fixed - Doxygen output