Description
This issue is currently to be considered living , so changes will occur
Right now there is a tight coupling between the Osee communication protocol and the companion code , e.g. all
Actions are using sendCommand with the Osee parameters , some states are saved as osee logical index instead of its human understandable actual value , e.g. pip size saved as 0 instead of 0.25 .
This makes is very static and tough to adapt to protocol changes
So a few implementation points
-
define a function interface between companion logic code and communication , this should as long as possible match the logic that is in the profile XML file . This would also allow to bundle messages
-
state should be saved as the human understandable value not index. Index can be used if saving references to internal arrays but not for usage in the device messaging , e.g. currenKey should be PIP in the state not a 3 . Translation is handled by the communication layer not by the companion layer