EG4 Web Monitor
joyfulhouse/eg4_web_monitor · vv3.5.0
Local (RS485 Modbus) + Cloud hybrid integration for EG4 and Luxpower inverters, GridBOSS, FlexBOSS, 18kPV, 12kPV, XP, LXP-LB, and batteries
In Apple Home through HomeKit Bridge
What HomeKit Bridge makes of each kind of entity this integration creates, read from its source code. A device only gets the ones that apply to it.
| Entity | Shows up as | Note |
|---|---|---|
switch | Switch or outlet | |
binary_sensor | Sensor (motion, contact, leak, smoke…) | |
sensor | Sensor (temperature, humidity, air quality…) | |
button | Button (as a switch) | |
select | Mode picker (as switches) |
What people report
Supports EG4 inverters via cloud, local Modbus or hybrid modes. Newer datalogger firmware may disable local Modbus TCP.
- Works2
- Partly works1
- Not working1
- Requested1
| Device | In Home Assistant | In Apple Home | What they said | Source |
|---|---|---|---|---|
| EG4 FlexBOSS21 | Works Local | Quick Charge local paired-frame start validated liveSaved copySummary Requires pylxpweb>=0.9.38b3 (joyfulhouse/pylxpweb#229, paired-frame local start, live-validated on FlexBOSS21 2026-07-12). - LOCAL/HYBRID start now honors the duration: the Quick Charge switch's start goes through pylxpweb's paired reg 233+234 contiguous frame, so a locally-started charge runs for the requested minutes (previously firmware-default length; a lone idle reg-234 write is firmware-rejected, #251). - Duration number: idle-set stores the per-serial start preference (previously raised ServiceValidationError); active-set still writes reg 234 live to extend/reduce the running … Excerpt saved from GitHub on 2026-10-23. | PR #366 · 2026-07 | |
| EG4 GridBOSS | Works | Smart port mode handling improvedSaved copyFixes #641. Repeated cached GridBOSS portal responses could count as independent confirmations of a port mode. When local data later superseded a cloud record, a link-down transition could also let that old cloud record authorize registry cleanup and remove an aggregate entity still in use. This change separates read identity from registry authority: - Compare whole `MidboxData` records on cloud reads, so identical cached responses count once while distinct records with agreeing statuses can confirm a mode. - Use accepted refresh times for complete local reads. Missing local port statuses … Excerpt saved from GitHub on 2026-10-23. | PR #642 · 2026-10 | |
| EG4 off-grid inverters | Partly works | Unverified register writes routed cloud-only; reg 161 write mapping unresolvedSaved copyA THIRD shipped write path on an unresolved mapping, H110 bit 14 (Off Grid Mode) Round-7 tribunal (claude_code) found this; verified independently against the tree at `9f6d6e2`. This issue currently enumerates two paths standing on unpinned mappings (H179 b11 and the "identical mechanism on register 161"). There is a third, and it is on the same register whose bit assignment was wrong for years in #476. The entity is created with no family gate: [code] The `offgrid = is_offgrid_family(device_data)` check at :287 governs the *working-mode* switches that follow, it does not gate this append. … Excerpt saved from GitHub on 2026-10-23. | Issue #558 · 2026-08 | |
| EG4 12000XP with WiFi dongle | Not working Local | Dongle resets local Modbus connection; newer firmware likely disables the TCP serverSaved copyIntegration Version v3.4.0-beta.5 ### Home Assistant Version 2026.6.2 ### Connection Mode Local (WiFi Dongle) ### Device Model(s) 12000XP ### Describe the Bug unable to connect ### Steps to Reproduce 1. got to eg4 monitor 2. click on add device 3. local wifi discovery 4. add dongle and inverter serial # ### Home Assistant Logs ```shell This error originated from a custom integration. Logger: custom_components.eg4_web_monitor._config_flow Source: custom_components/eg4_web_monitor/_config_flow/init.py:566 Integration: EG4 Web Monitor (documentation, issues) First occurred: 10:12:49 AM (1 … Excerpt saved from GitHub on 2026-10-23. | Issue #250 · 2026-06 | |
| EG4 FlexBOSS21 over USB RS485 | Requested Local | User cannot get Modbus working via USB-RS485 adapterSaved copyI've wired my rs485 to usb adapter which is plugged into a windows 11 computer. I have A, B, and Gnd wired up. Here's the topography: FlexBoss21 Meter port (A+/B-/GND) │ ▼ USB-to-RS485 adapter (Prolific PL2303GC, "ATEN Serial Bridge", VID:PID 067b:23a3) 120Ω termination enabled on the adapter's TX pair │ USB ▼ Windows PC ("garagesolar", physically near the inverter) - Adapter enumerates as COM3 - Shared over the network via usbipd-win (VID:PID 067b:23a3, busid 1-4) │ USB/IP over LAN (TCP 3240) ▼ Stargate (Ubuntu host running KVM/libvirt, separate physical machine) - Linux usbip client … Excerpt saved from GitHub on 2026-10-23. | Discussion #589 · 2026-08 |
Gathered from GitHub issues, pull requests, discussions and docs, and from r/homeassistant. These are individual reports, so check the linked thread and the date before you buy.
How it connects
Local polling
Talks to the device on your network, asking it for updates every so often.
Details
| Installs (analytics) | 278 (0.04%) |
|---|---|
| GitHub stars | 85 |
| Latest version | v3.5.0 (2026-10-22) |
| Set up in the UI | Yes |
| Maintainers | @btli |
| License | MIT |
In ReReHome
Whatever HomeKit Bridge shares reaches Apple Home as normal HomeKit accessories behind your Home Assistant bridge, so ReReHome shows and controls them like any other.
Bridges get their own settings page listing the accessories behind them.
Sources
- Documentation: https://github.com/joyfulhouse/eg4_web_monitor
- Source code: https://github.com/joyfulhouse/eg4_web_monitor
- Issues: https://github.com/joyfulhouse/eg4_web_monitor/issues
- HACS: https://hacs.xyz