Sen descrición

Bob Ehlers c2b50c557b fix: surface a clear warning when a device has no energy-flow rule configured (#26) hai 1 mes
.github 83eb5cae19 docs: add a Support & Scope section and link it from both issue templates hai 1 mes
brand 80b6e395eb fix: HACS compliance, missing API methods, translation keys, device identifiers hai 4 meses
custom_components dde9b05b95 fix: surface a clear warning when a device has no energy-flow rule configured (#26) hai 1 mes
tests dde9b05b95 fix: surface a clear warning when a device has no energy-flow rule configured (#26) hai 1 mes
.gitignore 80b6e395eb fix: HACS compliance, missing API methods, translation keys, device identifiers hai 4 meses
CHANGELOG.md dde9b05b95 fix: surface a clear warning when a device has no energy-flow rule configured (#26) hai 1 mes
CONTROL_FEATURES.md b1547a7157 docs: update all documentation for v2.4.0 hai 4 meses
DEVELOPER.md d35d2b1de2 Initial commit: Solar of Things Home Assistant Integration v2.0.0 hai 8 meses
EXAMPLES.md d35d2b1de2 Initial commit: Solar of Things Home Assistant Integration v2.0.0 hai 8 meses
INSTALLATION.md b1547a7157 docs: update all documentation for v2.4.0 hai 4 meses
LICENSE d35d2b1de2 Initial commit: Solar of Things Home Assistant Integration v2.0.0 hai 8 meses
QUICKSTART.md 771ebe238b docs: stop implying Station/Device ID must be exactly 18 digits hai 1 mes
README.md 83eb5cae19 docs: add a Support & Scope section and link it from both issue templates hai 1 mes
RELEASE_NOTES_v2.1.1.md 0d61ed2f0b v2.1.1: bump version, update changelog, add release notes hai 7 meses
SECURITY.md 591e176cb5 Create SECURITY.md for security policy hai 4 meses
create_github_repo.sh 7f4bf7529a chore: add one-shot GitHub repo creation + release push script hai 7 meses
hacs.json 80b6e395eb fix: HACS compliance, missing API methods, translation keys, device identifiers hai 4 meses
setup_github.sh d6826df217 v2.1.0: auto-discover devices by station hai 7 meses

README.md

☀️ Solar of Things — Home Assistant Integration

Latest Release HACS Custom Home Assistant MIT License

Monitor and control your Siseli solar inverter directly from Home Assistant.
Real-time power data · Battery management · Grid control · Energy Dashboard ready

[!IMPORTANT] Support scope. This integration was built and is maintained for the author's own hardware (a Sumry 3600 inverter). It's shared publicly so others with compatible or similar Siseli-connected devices can use and adapt it — not as a commitment to support every inverter model or WiFi dongle variant sold under the Siseli platform. See Support & Scope below before opening an issue.


Table of Contents


Overview

The Solar of Things integration connects Home Assistant to the Siseli solar portal and provides:

  • Auto-discovery of every inverter under your station — enter your Station ID once and Home Assistant finds all devices automatically.
  • 10+ real-time sensors updated every 5 minutes.
  • 4 monthly summary sensors for energy totals and solar coverage.
  • 8 control entities (sliders, dropdowns, switches) to manage battery limits, operating modes, and grid settings from HA.
  • Full Home Assistant Energy Dashboard compatibility.
  • Multi-station support — add the integration once per station.

Developed by Conexo Casa — building accessible technology for people with neurocognitive impairments and the elderly.


Support & Scope

This integration exists because the author owns a Sumry 3600 inverter and wanted it in Home Assistant. It's published here in case it's useful to anyone else on the Siseli platform — not as a product with a support contract behind it.

In practice, that means:

  • Bug fixes are best-effort, made when the author has time, and prioritized toward the hardware they actually own and can test against.
  • Reports about other inverter models, WiFi dongle variants, or firmware families are genuinely welcome — several real fixes in this project's history came directly from a detailed report (exact field names, a raw API capture, confirmed against real hardware). But a report alone doesn't guarantee a fix, especially for hardware the author has no way to verify against.
  • There's no SLA, no roadmap commitment, and no guarantee any specific device will ever be supported.

You're encouraged to fork this repository. The code is MIT-licensed specifically so you can adapt it to your own inverter, dongle, or firmware without waiting on anyone. If you build a fix for your hardware, a pull request back is very welcome — see Contributing — but forking and maintaining your own copy is a completely legitimate way to use this project, not a fallback.


Features

Category What you get
🔍 Auto-discovery Enter Station ID → HA fetches all device IDs automatically
📊 Real-time monitoring 10 per-device sensors, updated every 5 min
📅 Monthly statistics 4 station-level energy summary sensors
🎛️ System control 8 control entities (battery limits, modes, grid switches)
⚡ Energy Dashboard All power and energy sensors are dashboard-ready
🏠 Multi-station Unlimited stations via multiple config entries
🔒 Secure auth User ID + Password with automatic token refresh
🌏 Timezone-aware Configurable IOT-Time-Zone header per integration
🔄 Auto-retry HA coordinator pattern with automatic retry on failure

Sensors

Real-time Device Sensors

Updated every 5 minutes · One set per discovered device

Entity Unit Device Class Description
{device} PV Input Power W power Solar panel DC input power
{device} AC Output Power W power AC power delivered to loads
{device} Battery Charging Current A current Current flowing into battery
{device} Battery Discharge Current A current Current flowing out of battery
{device} Battery Voltage V voltage Battery bank terminal voltage
{device} Battery Power W power Net battery power (discharge − charge × voltage)
{device} Battery State of Charge % battery Battery charge level
{device} Grid Feed-in Power W power Power exported to the utility grid
{device} Grid Import Power W power Power imported from the utility grid
{device} Load Power W power Total household / load consumption

Monthly Station Sensors

Updated every 30 minutes · Requires Station ID

Entity Unit Device Class Description
Station {id} Monthly PV Generated kWh energy Total solar generation this month
Station {id} Monthly Grid Import kWh energy Total grid import this month
Station {id} Monthly Total Consumption kWh energy Total household consumption this month
Station {id} Monthly Solar Coverage % — Percentage of consumption met by solar

Control Entities

Controls require your device firmware/account to support the settings API. If unresponsive, see Troubleshooting.

Number Entities (Sliders)

Entity Range Step Unit Description
{device} Battery Charge Limit 0 – 100 1 % Maximum SOC target for charging
{device} Battery Discharge Limit 0 – 100 1 % Minimum SOC before stopping discharge
{device} Grid Charge Limit 0 – 5000 100 W Max grid power used for battery charging

Select Entities (Dropdowns)

Entity Options Description
{device} Output Source Priority Utility First (USO) · Solar First (SUB) · Solar+Battery First (SBU) System power source priority
{device} Charger Source Priority Solar + Utility (CSO) · Solar First (SNU) · Solar Only (OSO) Battery charging source priority

Switch Entities

Entity Description
{device} Grid Charging (AC Input Range) Allow/deny battery charging from the grid (Appliance vs UPS mode)
{device} Grid Feed-In Allow/deny exporting excess power to the grid
{device} Backup Mode (SBU Priority) Reserve battery capacity for power outages (SBU vs SUB priority)

Requirements

Requirement Details
Home Assistant 2023.6 or newer
Siseli account Active account at solar.siseli.com
Station ID Numeric stationId from the Siseli portal (usually 18 digits)
Network HA must reach https://solar.siseli.com

Installation

HACS (Recommended)

  1. Open HACS in the HA sidebar → Integrations.
  2. Click ⋮ (top-right) → Custom repositories.
  3. Enter:

    https://github.com/Conexo-Casa/solar-of-things-ha
    

    Category: Integration → Add.

  4. Search Solar of Things → Download.

  5. Restart Home Assistant.

Manual

  1. Download the latest release ZIP from the Releases page.
  2. Extract and copy the solar_of_things folder to:

    /config/custom_components/solar_of_things/
    
  3. Restart Home Assistant.


Configuration

Step 1 — Find Your Credentials

  1. Open https://solar.siseli.com and log in.
  2. Note your User ID (login account name) and password.
  3. Press F12 → Network tab → refresh the page.
  4. Click any request to solar.siseli.com and find stationId in the Payload tab.
Value Where to find it
User ID Your account login name on solar.siseli.com
Password Your account password
Station ID stationId field in any API request payload

Step 2 — Add the Integration

  1. Settings → Devices & Services → + Add Integration.
  2. Search Solar of Things.
  3. Choose User ID + Password (recommended) and fill in:

| Field | Required | Description | |---|---|---| | User ID | ✅ | Your Siseli account login name | | Password | ✅ | Your Siseli account password | | Station ID | ✅ | Numeric stationId (usually 18 digits) — not your inverter or WiFi-dongle serial number | | Device ID | Optional | Leave blank to auto-discover all devices | | Time zone | Optional | Default: Asia/Manila |

  1. Click Submit. The integration logs in, discovers devices, and creates all entities.

IOT Token mode is also available for advanced users who prefer not to store credentials. Tokens expire and require re-entry when they do.

Step 3 — Verify

Go to Settings → Devices & Services → Solar of Things and confirm your devices appear with sensors, controls, and monthly sensors populated.

Entities show Unknown for the first 5 minutes while the first coordinator poll runs.


Energy Dashboard

Go to Settings → Dashboards → Energy and configure:

Dashboard slot Entity
Solar production sensor.{device}_pv_input_power
Grid consumption sensor.{device}_grid_import_power
Return to grid sensor.{device}_grid_feed_in_power
Battery charge sensor.{device}_battery_charging_current
Battery discharge sensor.{device}_battery_discharge_current
Monthly solar (production) sensor.station_{id}_monthly_pv_generated
Monthly grid import sensor.station_{id}_monthly_grid_import

Automation Examples

Low battery alert

automation:
  - alias: "Solar — Low Battery Alert"
    trigger:
      - platform: numeric_state
        entity_id: sensor.1_inverter_battery_state_of_charge
        below: 20
    action:
      - service: notify.mobile_app
        data:
          title: "⚠️ Solar Battery Low"
          message: >
            Battery is at
            {{ states('sensor.1_inverter_battery_state_of_charge') }}%.

Enable grid charging at night

automation:
  - alias: "Solar — Enable Grid Charging at Night"
    trigger:
      - platform: time
        at: "22:00:00"
    action:
      - service: switch.turn_on
        target:
          entity_id: switch.1_inverter_grid_charging_ac_input_range

Switch to backup mode before a storm

automation:
  - alias: "Solar — Backup Mode Before Storm"
    trigger:
      - platform: state
        entity_id: weather.home
        to: "rainy"
    condition:
      - condition: numeric_state
        entity_id: sensor.1_inverter_battery_state_of_charge
        below: 80
    action:
      - service: switch.turn_on
        target:
          entity_id: switch.1_inverter_backup_mode_sbu_priority
      - service: number.set_value
        target:
          entity_id: number.1_inverter_battery_charge_limit
        data:
          value: 95

Dashboard Cards

Quick status overview

type: entities
title: ☀️ Solar System
entities:
  - entity: sensor.1_inverter_pv_input_power
    name: Solar Generation
  - entity: sensor.1_inverter_battery_state_of_charge
    name: Battery Level
  - entity: sensor.1_inverter_load_power
    name: Home Load
  - entity: sensor.1_inverter_grid_import_power
    name: Grid Import
  - entity: sensor.1_inverter_grid_feed_in_power
    name: Grid Feed-In

Control panel

type: entities
title: 🎛️ Solar Controls
entities:
  - entity: select.1_inverter_output_source_priority
    name: Output Mode
  - entity: select.1_inverter_charger_source_priority
    name: Charger Priority
  - entity: number.1_inverter_battery_charge_limit
  - entity: number.1_inverter_battery_discharge_limit
  - entity: number.1_inverter_grid_charge_limit
  - type: divider
  - entity: switch.1_inverter_grid_charging_ac_input_range
  - entity: switch.1_inverter_grid_feed_in
  - entity: switch.1_inverter_backup_mode_sbu_priority

Troubleshooting

Symptom Cause Fix
"Cannot Connect" on setup Wrong credentials or network Check User ID / password and HA network access to solar.siseli.com
No devices discovered Wrong Station ID Re-read stationId from the portal Network tab. A serial number printed on the inverter or WiFi dongle is not the Station ID
Entities show "Unavailable" Token expired or portal unreachable HA will prompt re-auth automatically; check logs
Sensors always "Unknown" API returns null for that field Normal for sensors not supported by your inverter model
Controls do nothing Settings endpoint varies by firmware Check HA logs for HTTP status codes
Integration not in search Files in wrong location Verify /config/custom_components/solar_of_things/ exists

Enable debug logging

logger:
  default: info
  logs:
    custom_components.solar_of_things: debug

Restart HA, reproduce the issue, then check Settings → System → Logs.


Contributing

Adding support for hardware the maintainer doesn't own is exactly what forking and contributing is for — see Support & Scope. The fixes most likely to get merged are the ones that came with a real capture against real hardware, not a guess.

  1. Fork the repo and create a feature branch.
  2. Make changes and ensure Python syntax is valid:

    python3 -m py_compile custom_components/solar_of_things/*.py
    
  3. Open a Pull Request with a clear description.

Bug reports and feature requests: GitHub Issues


Changelog

See CHANGELOG.md for full history.

Version Highlights
v2.4.0 HACS structure, brand icon, missing API methods fixed, translation keys, device registry fix
v2.3.3 Correct settings API endpoints from live portal
v2.3.0 User ID auth, working IOT-Open signing
v2.2.0 Auto token refresh, HA re-auth flow
v2.0.0 Control entities (battery, modes, grid)
v1.0.0 Initial release — monitoring sensors

License

MIT — see LICENSE for details.


Built by Conexo Casa — accessible technology for everyone
Report a Bug · Request a Feature · HA Community Forum