Skip to content

Commit

Permalink
Provide a workaround to return actual desired power
Browse files Browse the repository at this point in the history
  • Loading branch information
rjpearce committed Jan 21, 2024
1 parent 9096049 commit 0ed0eee
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 15 deletions.
25 changes: 10 additions & 15 deletions sofar-hyd-ep.json
Original file line number Diff line number Diff line change
Expand Up @@ -294,34 +294,29 @@
"write": true
},
{
"name": "desired_power",
"register": "0x1187",
"signed": true,
"read_type": "long"
},
"name": "desired_power",
"aggregate": [
"minimum_battery_power",
"maximum_battery_power"
],
"agg_function": "avg",
"desc": "Reading 0x1189 will always return 0. Min is typically -6000 or the value set to 0x1189. Max is typically +6000 or the value set to 0x1189"
},
{
"name": "minimum_battery_power",
"register": "0x1189",
"desc": "Minimum battery power in passive mode(-999999 to 999999) in watts",
"desc2": "Positive value=Charging, Negative value=Discharging",
"type": "I32",
"signed": true,
"passive": true,
"min": -999999,
"max": 999999,
"write": true
"read_type": "long"
},
{
"name": "maximum_battery_power",
"register": "0x118B",
"desc": "Maximum battery power in passive mode(-999999 to 999999) in watts",
"desc2": "Positive value=Charging, Negative value=Discharging",
"type": "I32",
"signed": true,
"passive": true,
"min": -999999,
"max": 999999,
"write": true
"read_type": "long"
},
{
"name": "desired_power_grid",
Expand Down
2 changes: 2 additions & 0 deletions sofar2mqtt-v2.py
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,8 @@ def read_and_publish(self):
value += self.data[register_name]
elif register['agg_function'] == 'subtract':
value -= self.data[register_name]
elif register['agg_function'] == 'avg':
value = int((value + self.data[register_name]) / 2)
if 'invert' in register:
if register['invert']:
if value > 0:
Expand Down

0 comments on commit 0ed0eee

Please sign in to comment.