invert logic cutoff register
This commit is contained in:
@@ -25,8 +25,8 @@ Indexy: podle `(site_id, status, created_at)` a částečný index pro `pending`
|
||||
1. Po `mismatch` se odešle **Discord** alert (`notify_modbus_mismatch`), pokud je nastaven `DISCORD_WEBHOOK_URL`.
|
||||
2. **Retry** zápisu max. **3×** (počítáno přes `attempt_count` po zápisech).
|
||||
3. **Reg 178** (grid peak shaving switch): journal ukládá **celé 16bit** `value_to_write` (32 nebo 48). Při ověření se za **shodu** považuje shoda **bitů 4–5** maskou **`0x0030`** s očekáváním; `value_verified` = přečtená surová hodnota. Při nesouladu masky se **jednou** znovu přečte reg. 178 (druhé FC3) kvůli glitchům na RS485 — pokud druhé čtení maskou sedí, stav je **`verified`**.
|
||||
4. **Reg 179** (control board special 1, BA81 GEN cut-off): exporter zapisuje masked RMW (zachová ostatní bity).
|
||||
Při ověření se za shodu považuje jen maska **bits 0–1** (`0x0003`) vůči očekávání (2 = cutoff ON, 3 = cutoff OFF).
|
||||
4. **Reg 179** (control board special 1, BA81 GEN cut-off): exporter zapisuje hodnotu 2/3 (clean write).
|
||||
Při ověření se za shodu považuje jen maska **bits 0–1** (`0x0003`) vůči očekávání (**3 = cutoff ON**, **2 = cutoff OFF**).
|
||||
4. **TOU výkon W (154–159):** firmware často vrátí **max. výkon z reg. 108/109 × 51.2 V** místo přesně zapsaného W; verify to akceptuje jako **shodu** (skutečný výkon je stejně omezen proudy 108/109).
|
||||
5. **Pojistka 62–64**: pokud by se řádek registru **62, 63 nebo 64** omylem dostal do striktní větve po jednom registru, verify to zachytí a zpracuje **jako toleranční celek 62–64** (stejně jako primární clock větev) — bez přepnutí do SELF_SUSTAIN jen kvůli tomu.
|
||||
6. Po třech neúspěšných cyklech ověření:
|
||||
|
||||
Reference in New Issue
Block a user