• rsp2k released this 2026-05-11 19:40:34 +00:00 | 55 commits to main since this release

    First PyPI release of the v1 wire path: https://pypi.org/project/omni-pca/2026.5.11/

    What's new vs 2026.5.10

    • omni_pca.v1 subpackageOmniConnectionV1, OmniClientV1, OmniClientV1Adapter — for panels that listen on UDP only and speak the legacy OmniLink (not OmniLink2) wire dialect. Verified end-to-end against firmware 2.12.
    • HA integration auto-routes to the v1 adapter when Transport=UDP is selected at config-flow time; v2/TCP path is unchanged.
    • Streaming UploadNames discovery (bare opcode + lock-step Acknowledge until EOD/NAK).
    • Long-form RequestUnitStatus for unit indices > 255 (sprinklers, named flags, expansion-enclosure outputs). See zone & unit numbering for why.
    • Chunked status polls — firmware 2.12 NAKs at ~63 records per request, so we batch in groups of 40.
    • OmniConnection.close() now sends ClientSessionTerminated so the panel frees the session slot immediately on disconnect.

    Install

    ```bash
    pip install omni-pca==2026.5.11

    or

    uv add omni-pca==2026.5.11
    ```

    Verified against

    Firmware 2.12 Omni Pro II at 192.168.1.9: discovery (16 zones, 44 units, 16 buttons, 8 codes, 2 thermostats, 8 messages) + status polling + execute_command round-trip all working under HA, side-by-side with the existing TCP mock-panel path in the dev stack.

    Downloads