{ "groups": { "meter": {"name": "Meter", "description": "Where the grid reading comes from."}, "inverters": {"name": "Inverters and batteries", "description": "The inverters the add-on controls, and your solar."}, "tariff": {"name": "Tariff and prices", "description": "What you pay and are paid per kWh."}, "safety": {"name": "Safety limits", "description": "The peak limit, starting and stopping, and the safety stops."}, "maintenance": {"name": "Maintenance", "description": "The monthly battery cycle and the log."}, "tuning": {"name": "Control tuning", "description": "For support only, because these were measured on real hardware."} }, "parts": { "meter.timing": {"name": "Timing"}, "inverters.solar": {"name": "Solar"}, "inverters.modes": {"name": "Battery modes"}, "tariff.selling": {"name": "Charging and selling on price"}, "tariff.feed": {"name": "Price feed details"}, "safety.peak": {"name": "Peak limit"}, "safety.start": {"name": "Starting and stopping"}, "safety.stops": {"name": "Safety stops", "description": "Measured on real hardware, so leave them unchanged."}, "maintenance.support": {"name": "Support"} }, "fields": { "solar": {"name": "Solar inverters", "description": "Each solar inverter's power sensor, which the add-on records but does not use for control."}, "contract": {"name": "Your contract", "description": "How your supplier prices each kWh you take from the grid."}, "region": {"name": "Region", "description": "Fills in grid costs, levies and VAT for the year shown, but not yet for Wallonia or Brussels, so check your bill."}, "fallback": {"name": "Price when the feed is down", "description": "Used when the price source does not answer."}, "fixed_price": {"name": "Price per kWh, all in", "description": "Energy, supplier costs, grid costs, levies and VAT together."}, "day_price": {"name": "Day price, weekdays 07:00 to 22:00", "description": "All in, as on your bill."}, "night_price": {"name": "Night and weekend price", "description": "All in, as on your bill."}, "periods": {"name": "Time windows and prices", "description": "One price per kWh for each time window, all in, as on your bill."} }, "choices": { "contract": {"none": "No prices", "fixed": "Fixed price", "daynight": "Day and night", "dynamic": "Dynamic, hourly", "custom": "Other time windows"}, "fallback": {"none": "None", "fixed": "One price", "daynight": "Day and night", "custom": "Other time windows"}, "region": {"flanders": "Flanders, Fluvius Antwerpen", "own": "I enter my own figure"}, "meter_source": {"off": "One grid power entity", "ha_dsmr": "Import and export entities", "mqtt_p1": "Meter over MQTT", "ha_signed": "One net power entity", "homewizard_local": "HomeWizard meter on the network"}, "meter_phases": {"1": "1 phase", "3": "3 phases"}, "shadow_mode": {"auto": "Automatic", "on": "Always on", "off": "Off"}, "price_provider": {"generic_dayahead": "Day-ahead market price", "custom_formula": "Your own price formula", "manual_csv": "A price file"}, "log_level": {"trace": "Everything, for support", "debug": "Detailed, to find a problem", "info": "Normal", "warning": "Warnings and errors", "error": "Errors only"}, "period_days": {"mon-sun": "Every day", "mon-fri": "Monday to Friday", "sat,sun": "Saturday and Sunday", "mon": "Monday", "tue": "Tuesday", "wed": "Wednesday", "thu": "Thursday", "fri": "Friday", "sat": "Saturday", "sun": "Sunday"} }, "applies": { "restart": {"name": "Applies after a restart"}, "now": {"name": "Applies right away"} }, "home": { "app": {"name": "Battery add-on"}, "tabs": {"home": "Home", "batteries": "Batteries", "settings": "Settings", "setup": "Setup", "label": "Screens"}, "now": {"name": "Now", "description": "Updated every 3 seconds.", "solar": "Solar", "house": "House", "grid": "Grid", "batteries": "Batteries"}, "plan": { "name": "Today's plan", "description": "Point at a bar or a block for details, or tap it on a phone.", "cheap": "Low price", "dear": "High price", "estimate": "Estimate", "grid": "Charges from the grid", "give": "Gives power", "cycle": "Monthly battery cycle", "peak": "Peak limit", "house": "Follows the house", "now": "now", "time_to": "to", "per_kwh": "per kWh", "cheap_tip": "low for today", "dear_tip": "high for today", "estimate_tip": "estimate from yesterday", "none_tip": "No price known", "no_prices": {"description": "No prices for today, so the chart shows only the plan."}, "list": "The plan in words", "average_tip": "hour average" }, "peak": {"name": "Peak limit", "this_month": "This month's peak", "limit": "Limit", "none": "None recorded yet", "unreadable": "Cannot be read now"}, "attention": {"name": "Needs attention", "nothing": "Nothing to look at", "to_look": "to look at", "details": "Details", "alarm": "Alarm", "warning": "Warning", "info": "Info"}, "control": {"name": "Control", "stop": "Stop control", "start": "Start control", "maint_start": "Start a battery cycle now", "maint_abort": "Stop the battery cycle", "docs": "Add-on documentation", "more": "More actions"}, "details": {"name": "Details for installers", "rows": "Status rows", "checks": "Checks", "event": "Last event"}, "dialog": { "cancel": "Cancel", "stop": {"name": "Stop control?", "description": "Every inverter is set to 0 W until you start control again.", "yes": "Stop control"}, "start": {"name": "Start control?", "description": "The add-on controls the batteries again and clears any safety stop.", "yes": "Start control"}, "maint_start": {"name": "Start a battery cycle?", "description": "The battery empties, refills and holds full, which takes a few hours.", "yes": "Start the cycle"}, "maint_abort": {"name": "Stop the battery cycle?", "description": "Every inverter is set to 0 W for a moment, then control carries on.", "yes": "Stop the cycle"} }, "toast": {"started": "Control started.", "stopped": "Control stopped.", "done": "Done.", "failed": "That did not work. Try again."}, "offline": {"name": "Cannot reach the add-on", "description": "The page tries again every 3 seconds."}, "setup_only": {"name": "Setup: nothing is controlled yet", "description": "Nothing is sent to any inverter until setup is saved and the add-on restarts.", "control": "Control starts after setup.", "open": "Open Setup"}, "batteries": {"name": "Batteries", "description": "To choose a mode for each battery, turn on battery modes in the settings.", "level": "Level", "now": "Now", "stored": "Stored", "mode": "Mode", "settings": "Change inverter settings", "on": "On", "off": "Off", "choice": { "solar_first": {"name": "Solar first", "description": "Charges from solar before the other batteries and covers the house."}, "leftover_solar": {"name": "Leftover solar", "description": "Charges from solar the other batteries cannot take, and covers the house."}, "off": {"name": "Off", "description": "Rests, and helps only when the peak limit needs it."} }, "later": "Cheap hours only, coming later", "today": "Today", "why": "Why", "sell": {"name": "Sell in expensive hours", "description": "Selling comes in a later update."}, "modes_off": {"name": "Battery modes are off"}, "how": {"name": "How the modes work", "description": "Which battery gets solar first, and when each gives power.", "solar_first": {"description": "Solar first gets spare solar before the other batteries, and covers the house at any hour."}, "leftover_solar": {"description": "Leftover solar gets the solar the Solar first batteries cannot take, and also covers the house."}, "off": {"description": "Off rests the battery and starts no monthly cycle, but the peak limit may still use it."}, "rules": {"description": "The peak limit and the safety stops always come first, and charging from the grid and selling come later."}}, "toast": {"on": "{name} is on.", "off": "{name} is off.", "mode": "{name}: {mode}."}}, "settings": {"name": "Settings", "description": "The settings are grouped by task below.", "open": "Open the settings page"} }, "choices_later": { "region": {"wallonia": "Wallonia, no preset yet", "brussels": "Brussels, no preset yet"} }, "choice_help": { "meter_source": { "off": {"description": "A Home Assistant entity that reads grid power in W, positive when you take from the grid."}, "ha_dsmr": {"description": "Two Home Assistant entities from the DSMR integration, one for import and one for export."}, "mqtt_p1": {"description": "The meter's readings arrive over MQTT on a topic you name."}, "ha_signed": {"description": "One Home Assistant entity that reads net grid power, positive for import."}, "homewizard_local": {"description": "The add-on reads a HomeWizard meter on your network, and can spot a stuck meter."} } }, "settings": { "name": "Settings", "description": "Every setting, grouped by task.", "view": {"name": "Settings view", "simple": "Simple", "installer": "Installer"}, "simple": {"description": "The choices a home owner makes.", "note": {"month_peak": {"description": "This month's peak so far: {kw}."}, "shadow": {"description": "Use Always on while you test a new installation."}}, "batteries": {"name": "Batteries"}, "more": {"description": "Looking for the meter, inverters or prices?"}, "installer": "Open the installer view"}, "classic": "Classic settings", "search": {"name": "Find a setting", "description": "Find a setting, for example peak or meter."}, "no_match": {"description": "No setting matches your search."}, "loading": "Loading the settings", "load_failed": {"name": "Cannot read the settings", "description": "The add-on could not read its stored settings, so use Classic settings or the Configuration tab."}, "footer": {"description": "Every change is checked by the add-on's own start checks before it is saved."}, "to_fix": "to fix", "to_check": "to check", "changed": "changed", "on": "On", "off": "Off", "not_set": "Not set", "locked": "Locked", "change": "Change", "support": {"description": "These were measured on real hardware, so change them only when support asks."}, "picker": { "choose": "Choose an entity", "search": {"description": "Search by name or entity id."}, "all": "Show every entity", "use": "Use this entity id", "clear": "Clear", "missing": "Not in Home Assistant", "none": {"description": "Nothing matches, so check the entity in Developer Tools."} }, "add_inverter": "Add an inverter", "inverter": "Inverter", "remove": "Remove", "add_row": "Add a row", "add_solar": "Add a solar inverter", "periods": {"window": "Window", "from": "From", "to": "To", "days": "Days", "price": "Price", "add": "Add a time window"}, "reversed": "Reads negative", "phase": "Phase", "raw_roster": {"description": "This inverter list can only be changed in the Configuration tab."}, "region_year": "{year} figures", "hour": "{hour}:00 UTC", "preset": {"description": "Filled in by the region above, so choose your own figure to change it."}, "cycle": {"name": "Run a cycle by hand", "description": "The same actions as on Home, each asking first."}, "savebar": {"label": "Unsaved changes", "one": "change not saved", "many": "changes not saved", "discard": "Discard", "save": "Save", "saving": "Saving"}, "saved": {"name": "Saved, not running yet", "description": "The add-on runs the settings it started with until you restart it."}, "differs": {"name": "Stored settings are not running", "description": "Some stored settings differ from what runs now, so restart the add-on to apply them."}, "stale": {"name": "Changed somewhere else", "description": "These settings changed elsewhere while you edited, so save again to keep yours or discard to load theirs."}, "other": "Other messages", "restart": "Restart now", "dialog": {"name": "Restart the add-on?", "description": "Every inverter is set to 0 W while the add-on restarts, and then the new settings apply.", "yes": "Restart now"}, "toast": { "saved": "Saved. Restart to apply.", "discarded": "Changes discarded.", "failed": "That did not work. Try again.", "blocked": {"description": "Fix the settings marked in red, then save again."}, "restarting": {"description": "Restart requested, so this page stops answering for a moment."} }, "tier": {"bad": "Must fix", "warn": "Check this", "info": "Note", "ok": "Passed"}, "derive": { "raw_roster": {"description": "This inverter list can only be changed in the Configuration tab."}, "no_inverter": {"description": "Add at least one inverter."}, "flat_named": {"description": "Add a second inverter before naming this one."}, "no_source": {"description": "Choose where the dynamic prices come from."}, "custom_profile": {"description": "Other time windows can only be changed in the Configuration tab."}, "no_price": {"description": "Enter a price per kWh."}, "no_periods": {"description": "Add at least one time window."}, "period_time": {"description": "Window {row}: write each time as hours and minutes, like 07:00 or 24:00."}, "period_zero": {"description": "Window {row} starts and ends at the same time, so change one of them."}, "period_price": {"description": "Window {row}: enter a price per kWh."}, "period_price_range": {"description": "Window {row}: enter the price in euro per kWh, like 0.34."}, "period_overlap": {"description": "Windows {a} and {b} both cover {day} {from} to {to}, so change one of them."}, "period_gap": {"description": "No window covers {day} {from} to {to}, so add one or widen one."}, "unknown": {"description": "The page cannot store this choice, so reload the page."} }, "setup": { "name": "Setup", "description": "For installers: six steps to a working site, and each can be changed later under Settings.", "done_before": {"description": "This site is set up already, so a change here replaces its stored settings."}, "step": "Step {n} of {total}", "back": "Back", "next": "Next", "skip": "Next, or skip", "finish": "Save and restart", "not_now": "Not now", "steps": { "1": {"name": "Your meter", "description": "The add-on steers the grid reading to zero, so it needs your meter first."}, "2": {"name": "Inverters and batteries", "description": "One card for each inverter with a battery, with its entities in Home Assistant."}, "3": {"name": "Solar", "description": "Optional, so skip this step if the add-on should not record solar production."}, "4": {"name": "Prices", "description": "What you pay per kWh, so the batteries can charge when power is cheap."}, "5": {"name": "Peak limit", "description": "The grid stays under this limit, averaged over each 15-minute period."}, "6": {"name": "Check and start", "description": "The add-on checks everything with its own start checks, then restarts."} }, "modes_later": {"description": "Choosing a mode for each battery comes in a later update."}, "kettle": { "name": "Check the direction", "description": "Read the meter, switch on a kettle, then read the meter again.", "read": "Read the meter", "again": "Read again", "skip": "Skip this test", "before": {"description": "The meter reads {w} now, so switch on a kettle and press Read again."}, "unread": {"description": "The meter cannot be read now, so check the entity and try again."}, "none": {"description": "The reading moved only {d}, so switch the kettle on and read again."}, "ok": {"description": "Good, the reading went up by {d} when the kettle came on."}, "flip": {"description": "The reading went down by {d}, so the add-on flips its sign for you."}, "wrong_signed": {"description": "The reading went down by {d}, so choose “One grid power entity” above, which can flip it."}, "wrong_dsmr": {"description": "The reading went down by {d}, so check that import and export are not swapped."}, "self": {"description": "The add-on reads this meter itself, so Home shows its direction after the restart."}, "skipped": {"description": "The meter direction is not tested, so check it on Home after the restart."}, "skipped_wrong": {"description": "The kettle test saw the meter reading go down, so check its direction in step 1 before you start control."}, "skipped_down": {"description": "The reading went down when the kettle came on, so check the meter's direction before you start control."}, "tested": {"description": "The meter direction was tested with a kettle."}, "needed": {"description": "Do the kettle test first, or skip it."} }, "check": { "name": "What the add-on checked", "running": {"description": "Checking with the add-on's own start checks."}, "pass": {"description": "The add-on's start checks pass."}, "failed": {"description": "The check did not run, so try again."}, "again": "Check again", "blocked": {"description": "Fix the items marked in red, then check again."} }, "dialog": {"name": "Save and restart?", "description": "Every inverter is set to 0 W while the add-on restarts, and shadow mode keeps them at 0 W after that.", "yes": "Save and restart"}, "dialog_live": {"name": "Save and restart?", "description": "Every inverter is set to 0 W while the add-on restarts, and then the new settings apply.", "yes": "Save and restart"}, "dialog_setup": {"name": "Save and restart?", "description": "The add-on restarts with these settings, and shadow mode keeps every inverter at 0 W.", "yes": "Save and restart"}, "dialog_setup_live": {"name": "Save and restart?", "description": "The add-on restarts with these settings, and then they apply.", "yes": "Save and restart"}, "done": {"name": "Setup is done", "description": "The add-on restarts in shadow mode now, so open Home in a minute to see what it would do."}, "done_live": {"name": "Setup is done", "description": "The add-on restarts now, so open Home in a minute to start control."}, "restart_failed": {"name": "Saved, not running yet", "description": "The restart did not go through, so press Restart now to apply the settings."}, "home": "Open Home" } }, "home_words": { "mode_house": "Follows the house", "modes": {"solar_first": "Solar first", "leftover_solar": "Leftover solar", "off": "Off"}, "attn_shadow": "Shadow mode is on", "attn_shadow_body": "The add-on decides everything, but every inverter stays at 0 W.", "zero_held": "Held at 0 W", "zero_going": "Going to 0 W", "verdict": { "held": "Held at 0 W", "stopped": "Stopped", "cycle": "Monthly cycle today", "trade": "Trading on price", "house": "Follows the house" }, "pill": { "running": "Running", "shadow": "Shadow mode", "stopped": "Stopped", "alarm": "Needs you now", "warning": "Running, with a warning" }, "banner_sub": { "running": "The batteries follow the plan below.", "shadow": "The plans below say what the add-on would do.", "stopped": "Start control below when you are ready.", "alarm": "See Needs attention below for what to do.", "warning": "See Needs attention below." }, "tile": { "not_set_up": "Not set up", "no_reading": "No reading", "producing": "Producing", "not_producing": "Not producing", "needs_solar": "Needs a solar reading", "not_adding_up": "Readings do not add up", "using": "Using", "taking": "Taking from the grid", "feeding": "Feeding in", "balanced": "Balanced", "giving": "Giving power", "charging": "Charging", "resting": "Resting" }, "now": { "no_reading": "No reading from this battery.", "would_rest": "{zero}. Would rest now.", "would_give": "{zero}. Would give {kw} now.", "would_charge": "{zero}. Would charge {kw} now.", "held": "{zero} until the alarm clears.", "stopped": "{zero} while control is stopped.", "cycle_drain": "Monthly cycle: emptying.", "cycle_charge": "Monthly cycle: refilling.", "cycle_hold": "Monthly cycle: holding full.", "cycle": "Monthly cycle under way.", "giving": "Giving {kw} now.", "charging": "Charging {kw} now.", "resting": "Resting now.", "off_resting": "Off. Resting now.", "off_peak": "Off, but gives {kw} for the peak limit.", "off_going": "Off. Still at {kw}, going to 0 W." }, "why": { "no_reading": "No reading, so the add-on cannot tell.", "held": "An alarm stopped control. See Needs attention.", "stopped": "Control is stopped.", "shadow": "Shadow mode: the add-on only shows what it would do.", "cycle": "The monthly cycle keeps its level reading right.", "cycle_mode": "The monthly cycle comes first. Its mode resumes after.", "off": "You switched it off.", "off_peak": "The peak limit comes before Off. It rests again after.", "refuses_give": "The battery refuses to give power. The add-on tries again every 15 minutes.", "refuses_charge": "The battery refuses to charge. The add-on tries again every 15 minutes.", "peak": "The peak limit needs power from the batteries.", "modes_off": "Battery modes are off, so it follows the house.", "solar_first": "Solar first: it gets spare solar before the others.", "leftover": "It gets the solar that Solar first batteries cannot take.", "leftover_alone": "No Solar first battery is on, so it gets solar first.", "covers_house": "It gives power to cover the house.", "other_refuses": "{name} refuses to give power, so this battery takes over." }, "today": { "not_planned": "Not planned yet.", "off": "Off, so no monthly cycle today.", "house": "Follows the house.", "house_would": "Would follow the house.", "stopped": "Nothing planned while control is stopped.", "held": "Nothing planned until the alarm clears." }, "head": { "held": "Every inverter is at 0 W until the alarm clears.", "held_going": "Every inverter goes to 0 W until the alarm clears.", "stopped": "Control is stopped, so nothing is planned.", "cycle": "A battery runs its monthly cycle today.", "trade": "Charges in the cheapest hour, gives power in the dearest.", "house": "Charges from spare solar and covers the house.", "shadow": "Shadow mode: this is what the add-on would do.", "cycle_would": "A battery would run its monthly cycle today.", "trade_would": "Would charge when cheapest and give power when dearest.", "house_would": "Would charge from spare solar and cover the house." }, "run": { "grid_what": "Charges up to {kwh} from the grid.", "grid_what_would": "Would charge up to {kwh} from the grid.", "grid_why": "Lowest published price, {eur} per kWh.", "grid_amount": "Costs up to {eur}.", "give_what": "Gives up to {kwh}, to the house first.", "give_what_would": "Would give up to {kwh}, to the house first.", "give_why": "Highest published price, {eur} per kWh.", "give_amount": "Worth up to {eur} at that price.", "cycle_start": "Starts the monthly battery cycle.", "cycle_start_would": "Would start the monthly battery cycle.", "cycle_now": "Runs the monthly battery cycle now.", "cycle_now_would": "Would run the monthly battery cycle now.", "cycle_why": "Empties, refills and holds full, so the level reads right.", "cycle_why_would": "Would empty, refill and hold full, so the level reads right.", "cycle_amount_unknown": "How long depends on the battery.", "cycle_amount": "Takes about {hours} hours.", "peak_what": "Gives power to stay under {kw}.", "peak_what_would": "Would give power to stay under {kw}.", "peak_why": "The peak limit comes before everything else.", "house_what": "Follows the house.", "house_what_would": "Would follow the house.", "house_why": "Charges from spare solar, gives power when the house needs it.", "house_why_would": "Would charge from spare solar, give power when the house needs it.", "house_amount": "Amounts depend on the sun and the house." }, "no_trade": { "not_covered": "No trading on price: nothing measures the 15-minute peak.", "no_prices": "No trading on price yet: no prices have arrived.", "peak": "No trading on price now: the peak limit comes first.", "not_firm": "No trading on price yet: the prices are not published.", "not_worth": "No trading on price today. The price gap is too small.", "no_level": "No trading on price now: a battery level is unknown." }, "tomorrow_trade": { "grid": "Tomorrow: charges at {at}, {eur} per kWh.", "grid_would": "Tomorrow: would charge at {at}, {eur} per kWh.", "give": "Tomorrow: gives power at {at}, {eur} per kWh.", "give_would": "Tomorrow: would give power at {at}, {eur} per kWh." }, "cycle_waits": "{name} waits its turn for the monthly cycle.", "step_in": "The batteries step in above {kw}.", "step_in_would": "The batteries would step in above {kw}.", "period": "This 15-minute period is heading for {kw}.", "prices": { "now": "Price now {eur} per kWh, all in.", "today": "Today: lowest {lo} at {lo_at}, highest {hi} at {hi_at}.", "none": "No prices for today." }, "tomorrow": { "known": "Tomorrow's prices are in.", "unknown": "Tomorrow's prices usually arrive after 13:00." }, "region": { "preset": "Levies and VAT: {region}, {year} figures.", "own": "Levies and VAT: your own figure." }, "peak_not_covered": "No peak limit: this meter does not measure 15-minute periods.", "control": { "shadow": "Shadow mode: every inverter stays at 0 W.", "running": "Control is running.", "stopped": "Control is stopped. Every inverter is at 0 W." }, "attn": { "controller": "Control is not running", "meter": "Meter reading", "meter_frozen": "Meter reading may be stuck", "freeze_check": "Stuck meter check", "month_peak": "This month's peak", "peak_guard": "Peak limit", "peak_forecast": "Peak limit forecast", "sensor": "Battery readings", "control": "Inverter control", "power_too_high": "Power request too high", "not_keeping_up": "Battery is not keeping up", "write": "Power request not accepted", "direction": "Power went the wrong way", "site_direction": "Power went the wrong way", "circulating": "Inverters working against each other", "delivery": "An inverter is not delivering", "estop": "Emergency stop", "pv": "Solar reading", "none": "Inverter connection" }, "months": ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"] } }