The app will be able to send charge and discharge commands directly to your FoxESS inverter, based on its forecast. You can switch back to Monitoring only at any time — that stops all control instantly and releases the inverter back to its own normal behavior.
Live Control Scope
A finer-grained gate underneath the main Live control switch above — lets one action type run live at a time instead of trusting everything at once. Still shown in the plan either way; this only decides what actually gets sent to the inverter.
Deliberate selling (ForceDischarge) and Backup are unaffected by this — only ForceCharge (TOU peak pre-charging) is held back while this is Off.
48-hour Forecast
Total cost — active plan
—
Total cost — compare plan
—
Running Total — active plan
—
Running Total — compare plan
—
Solar production
—
To load & battery: —
To grid: ——
—
Self-consumption
Load consumption
—
From solar & battery: —
From grid: ——
—
Self-sufficiency
48-hour Plan
Solar (kWh/hr)Load (kWh/hr)Battery SoC (%)PeakOff-peak
Scheduled Actions
Live Control Log
What's actually been decided and sent to the inverter — not the plan, the real actions taken.
Data sources
Inverter Connection
FoxESS Cloud
Only change this if you're routing through your own CORS proxy in front of FoxESS Cloud.
Sent as X-Proxy-Secret on both FoxESS and Solcast calls if this and the matching base URL below are set — one worker, one secret, both APIs.
Inverter Schedule Inspector
Read-only — shows exactly what's actually configured on the inverter right now, straight from FoxESS, not from this app's own memory of what it last sent.
Test Live Control
A small, deliberate, real command — separate from the automatic system, so the write path can be watched and confirmed once before trusting it to run unattended.
Test curtailment (negative feed-in protection) — export limit is confirmed rejected (FoxESS error 42015) under a regular homeowner-tier API key; it looks to be an installer-only setting. Enter a key generated from an installer login below to test whether that has the right permission — leave blank to keep using the main key above (will just repeat the same rejection).
Send a real test command?
This will push a genuine ForceCharge command to your inverter for the rest of this hour — 500W, targeting just 2 percentage points above the battery's current SoC, so it should complete almost immediately and cost next to nothing either way. Check the FoxESS app afterwards to confirm it actually happened. Use "Release now" any time to stop it instantly, same as the main kill switch.
Forecast Sources
BOM's own open-data feed has had outages during platform upgrades — if a BOM request fails, this automatically falls back to the blended model for that run.
Only change this if routing through your own proxy (same one you may already use for FoxESS).
Live Pricing Connection
Polls a live-priced retailer's real price feed and logs actual cost against your real usage from today onward. Past days can't be backfilled. Amber Electric is the only provider actually wired up right now — the Provider field exists so a different live-pricing retailer can be added later without restructuring anything else that reads from this connection.
Site & System
System losses (soiling, wiring, inverter) — typical 0.78–0.85
Battery Cycle Budget
Paces deliberate battery selling against your warranty's cycle allowance, not just price. FoxESS's CQ6 warranty (and most LFP home batteries) guarantees capacity retention until EITHER a cycle count OR a number of years passes, whichever comes first — so cycles you're not on track to use before the years run out cost nothing extra to spend now.
Leave any of these blank and deliberate selling falls back to its previous rule (sell any confirmed surplus at any positive rate) — this only takes over once all four are filled in.
Usage history & accuracy
Usage History
For prediction
One API call per calendar month, not per day — practical for backfilling since install. Prices Flat Rate segments only; Time of Use/VPP/live pricing still need the hourly pull above.
Prediction Accuracy
Forecast vs. what actually happened
Every time the plan regenerates — automatically, on any field edit, or on the 5-minute live refresh — the day-ahead prediction for each date is saved. Once you log that day's actual usage/solar above, it shows up here compared to what was predicted — a running test of how well the weather source, solar source and usage model are tracking your real system.
Correct Usage from Retailer CSV
FoxESS's CT clamps read badly at low currents — this scales your logged usage to match what your retailer actually billed, so cost and payback figures stay accurate. The monthly TOU-vs-Flat breakdown below is a secondary, informational side effect of reading the file.
Corrects the real import/export totals used for cost calculation, scaling each day's existing FoxESS hourly shape to match your retailer's billed figures. Total household usage (used for the load prediction) is left alone — a retailer CSV only sees what crossed the meter, not what solar/battery covered directly, so it can't correctly represent total consumption for a solar home.
Providers
Provider Comparison
Your real usage, priced under each saved provider
Monthly Plan Comparison
Your real usage, broken down by calendar month — since solar output swings with the seasons, the plan that wins overall isn't always the one that wins every month.
Payback Ledger
Tracks what you've actually been billed under, plan by plan, against what the same real usage would have cost with no solar/battery at all — that gap is real savings, banked permanently once a segment's dates are set. Separate from Provider Comparison above, which stays a hypothetical what-if view.
Payback Summary
Plan History
One segment per real plan you were actually billed under. When you switch, set this segment's end date and add a new one starting the next day — that locks in what it actually cost/saved for good.
Live-connected to FoxESS for real telemetry and history — solar/load predictions use your actual logged data once enough is available, falling back to a weather/shape-based estimate otherwise. In Monitoring only, the scheduler is read-only: it plans charge/discharge timing but never sends anything. In Live control, it can send real setpoints to the H3, checked and corrected every 5 minutes against the battery's actual live SoC.