Skip to content

Commit 5340f74

Browse files
kellerzacursoragent
andcommitted
1.2.0
Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent 6c1e60d commit 5340f74

5 files changed

Lines changed: 42 additions & 19 deletions

File tree

‎hass-addon-sunsynk-edge/CHANGELOG.md‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22

33
<https://github.com/kellerza/sunsynk/commits/>
44

5-
## Unreleased
5+
## Release 1.2.0
6+
7+
All items below are changes since add-on **1.1.1** (stable release on GitHub `main`).
68

79
- tmodbus 0.6.0 - improved re-synchronization logic for RTU-streams that got out of sync.
810
- Prefix **`PORT`** with **`pymodbus-`** to use the pymodbus Modbus backend (e.g.
@@ -22,7 +24,7 @@
2224

2325
## Release 1.1.1
2426

25-
All items below are changes since add-on **1.1.0** (stable release on GitHub `main`).
27+
All items below are changes since add-on **1.1.0**.
2628

2729
- Removed leftover `DRIVER` option from the add-on schema.
2830

‎hass-addon-sunsynk-multi/CHANGELOG.md‎

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,35 @@
22

33
<https://github.com/kellerza/sunsynk/commits/>
44

5+
## Release 1.2.0
6+
7+
All items below are changes since add-on **1.1.1** (stable release on GitHub `main`).
8+
9+
- tmodbus 0.6.0 - improved re-synchronization logic for RTU-streams that got out of sync.
10+
- Prefix **`PORT`** with **`pymodbus-`** to use the pymodbus Modbus backend (e.g.
11+
`pymodbus-tcp://host:502`, `pymodbus-/dev/ttyUSB0`). Default is tmodbus.
12+
**`pymodbus-serial-udp://`** enables RTU-over-UDP (not supported on tmodbus).
13+
- Solarman **`PORT`** scheme is **`solarman-tcp://host:8899`** (legacy `solarman://` and dongle
14+
- `tcp://` remap at startup).
15+
- **`READ_ATTEMPTS`** (default **3**, max **5**) – tries per FC03 read and FC16 write. Worst-case
16+
wait per group is **`TIMEOUT × READ_ATTEMPTS`**.
17+
- **`TIMEOUT`** is now **3** seconds per connect and each register **attempt**. On timeout,
18+
**serial** links disconnect so the next attempt reconnects with an empty buffer; TCP and Solarman
19+
do not. Other I/O errors still flush.
20+
- Add a 50ms `connect_delay` for serial
21+
- Remove Gen L1/L2/L3 current sensors & check for duplicates. #676
22+
- Sensor **aliases** are registered as copies whose primary ``name`` is the alias (HA entity name
23+
follows the id you put in ``SENSORS``).
24+
525
## Release 1.1.1
626

27+
All items below are changes since add-on **1.1.0**.
28+
729
- Removed leftover `DRIVER` option from the add-on schema.
830

931
## Release 1.1.0
1032

11-
All items below are changes since add-on **1.0.0** (stable release on GitHub `main`).
33+
All items below are changes since add-on **1.0.0**.
1234

1335
- **Breaking:** three-phase **Parallel Mode** select options are **Client** (was Master) and
1436
**Server** (was Slave). The inverter LCD may still say Master/Slave. Update automations that match
@@ -42,7 +64,7 @@ All items below are changes since add-on **1.0.0** (stable release on GitHub `ma
4264

4365
## Release 1.0.0
4466

45-
All items below are changes since add-on **0.10.1** (stable release on GitHub `main`).
67+
All items below are changes since add-on **0.10.1**.
4668

4769
### Major changes
4870

‎pyproject.toml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ requires = [ "uv-build>=0.11,<0.12" ]
44

55
[project]
66
name = "sunsynk"
7-
version = "1.1.1"
7+
version = "1.2.0"
88
description = "Library to interface Deye/Sunsynk Hybrid Inverters"
99
readme = "README.md"
1010
keywords = [

‎uv.lock‎

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎www/docs/reference/multi-options.md‎

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -103,16 +103,16 @@ Sensor ids, groups, and custom sensors are listed under [definitions](./definiti
103103

104104
### Port
105105

106-
| Scheme | When | Extra |
107-
| ---------------------------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
108-
| `tcp://host:502` | Modbus TCP gateway or [mbusd](../guide/mbusd) | tmodbus (default) |
109-
| `serial-tcp://host:port` | Gateway that does **not** convert Modbus TCP to RTU | Sends RTU frames over TCP |
110-
| `udp://host:port` | Modbus UDP | tmodbus |
111-
| <i-mdi-dev-to class="vp-edge-option-icon" /> `pymodbus-tcp://…` | Same as `tcp://` | pymodbus backend; prefix any Modbus scheme (see below) |
112-
| <i-mdi-dev-to class="vp-edge-option-icon" /> `pymodbus-serial-udp://…` | RTU-over-UDP | pymodbus only |
113-
| `solarman-tcp://host:8899` | Solarman / Wi-Fi dongle | Set `DONGLE_SERIAL_NUMBER`. Prefer a fixed IP |
114-
| `/dev/ttyUSB0` | Direct USB RS485 | tmodbus. If it fails, try [mbusd](../guide/mbusd) ([issue 131](https://github.com/kellerza/sunsynk/issues/131)) |
115-
| `""` | First inverter only | Uses `DEBUG_DEVICE` from the bottom of the config |
106+
| Scheme | When | Extra |
107+
| -------------------------- | --------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
108+
| `tcp://host:502` | Modbus TCP gateway or [mbusd](../guide/mbusd) | tmodbus (default) |
109+
| `serial-tcp://host:port` | Gateway that does **not** convert Modbus TCP to RTU | Sends RTU frames over TCP |
110+
| `udp://host:port` | Modbus UDP | tmodbus |
111+
| `pymodbus-tcp://…` | Same as `tcp://` | pymodbus backend; prefix any Modbus scheme (see below) |
112+
| `pymodbus-serial-udp://…` | RTU-over-UDP | pymodbus only |
113+
| `solarman-tcp://host:8899` | Solarman / Wi-Fi dongle | Set `DONGLE_SERIAL_NUMBER`. Prefer a fixed IP |
114+
| `/dev/ttyUSB0` | Direct USB RS485 | tmodbus. If it fails, try [mbusd](../guide/mbusd) ([issue 131](https://github.com/kellerza/sunsynk/issues/131)) |
115+
| `""` | First inverter only | Uses `DEBUG_DEVICE` from the bottom of the config |
116116

117117
Prefix **`pymodbus-`** before any Modbus `PORT` to use the pymodbus backend instead of tmodbus (e.g.
118118
`pymodbus-tcp://host:502`, `pymodbus-/dev/ttyUSB0`). Shared-bus keys include the prefix, so `tcp://`
@@ -164,9 +164,8 @@ Global. Change these when a gateway or RS485 link is unreliable.
164164
disables the gap. Increase on flaky RS485 / USB-FTDI links. Not used for `solarman-tcp://`.
165165
Raising `TIMEOUT` does not add this pause.
166166

167-
- <i-mdi-dev-to class="vp-edge-option-icon" /> `READ_ATTEMPTS` – Tries per holding-register read
168-
(FC03) and write (FC16). Default **3**, max **5**. Worst-case wait per group is
169-
`TIMEOUT × READ_ATTEMPTS`.
167+
- `READ_ATTEMPTS` – Tries per holding-register read (FC03) and write (FC16). Default **3**, max
168+
**5**. Worst-case wait per group is `TIMEOUT × READ_ATTEMPTS`.
170169

171170
- `TIMEOUT` – Seconds for connect and each register read/write attempt (default **3**, max **15**).
172171
Each group is tried `READ_ATTEMPTS` times. Increase on slow links. If timeouts persist, lower

0 commit comments

Comments
 (0)