text/microsoft-resx 2.0 System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 Add Add category Add energy type Add meter Close Color hex (optional, e.g. #ff9800) Delete '{0}' and its {1} membership(s)? Manual costs in this category are kept but unlinked. Delete category Edit {0} Meter: {0} {0} meter(s), {1} type(s) Type: {0} Members New category No members yet — add a meter or an energy type. Save the category first to add members. Saved. Add members below. Sort Sort order Cost Actions Amount Cancel Cost (range) Currency Date Delete Deleted. Enabled Energy type Events: Last seen Manual costs: Meter Meters Mode Name Name is required. No data in this range. Now Preview Range All time Last 12 months Last 24 months Last 5 years Readings: Save Saved. Scope Skipped rows: Status Target This year Type Unit Value Add connector Base URL (e.g. http://homeassistant.local:8123) Delete '{0}'? {0} source(s) use it and will stop ingesting until reassigned to another connector. Delete connector Edit {0} No connectors yet. Add an MQTT broker or a Home Assistant connection. Encrypted before it is stored; database dumps and JSON exports carry nothing usable. Enter credentials here Enter the token here Extra topics (comma-separated, optional) Host Last status New connector no Password env-var name (optional) Password (optional) Password (stored — type to replace) Port name of an environment variable Secrets are never stored here. Credentials/tokens are referenced by the (or Docker secret) resolved at runtime. Base URL differs from the saved one. Re-enter the token to test against a different host — a stored token is only sent to the host it was saved for. Base URL is required. Connected — Home Assistant API reachable and token accepted. Connected — {0} = {1}. Test connection Test entity id (optional, e.g. sensor.house_power) Environment variable '{0}' is not set on the server. Set it and restart the app, or switch on "Enter the token here" to store the token directly. Connection failed: {0} Home Assistant answered {0}. Connected, but "{0}" has no numeric state (unavailable, unknown or not a number). Enter a token first. Name the environment variable holding the token, or switch on "Enter the token here". No token available to test. TLS Long-lived access token Token env-var name (e.g. HA_TOKEN) name The variable's , not the token. Set it on the server and restart the app. Enter the token, or switch off "Enter the token here" and name an env var. Long-lived access token (stored — type to replace) Username env-var name (optional) Username (optional) On: subscribe to state changes and ingest in real time. Off: REST poll on each source's interval. Real-time WebSocket push yes as of {0} Burner runtime Consumption by month Deliveries ({0}) Effective rate {0}% of {1} {2} Forecast to empty No deliveries recorded. No consumable meters found. Add a meter with mode and a tank, or load the reference data from Consumables ({0} {1}/day) Tank level {0} used Used (range) Category Now Prev Latest month with data No cost data yet — import a sheet or add tariffs. This month What cost more / less (year vs last year) What costs most (this year) Add energy type Base unit Base unit (kWh, m3, L, h) Color hex (optional, e.g. #4caf50) Default mode Cannot delete '{0}': {1} meter(s) still use it. Delete '{0}'? This cannot be undone. Delete energy type Display name Edit {0} Icon (optional) Key Key '{0}' is already in use. Key (stable machine key, e.g. electricity) New energy type Key, display name and base unit are required. Consumption Upstream of Energy Flow Where the top-level flow goes. Arrow thickness ∝ amount; "Other" is the unmetered remainder. {0} flow No meter chain configured yet. In → edit a sub-meter and set its to show where the main meter's flow divides (e.g. main → car, pool, other). upstream meter(s) No meters for this energy type yet. Add meters in , or load the reference data from Top-level throughput Consumption Generation Home Assistant MQTT broker Delivery Ignore Manual cost Reading Tank level Correction Counter reset Delivery Meter swap Note Tank level Consumable balance Cumulative counter Direct delta Generation counter Instant rate Runtime counter Virtual Anomaly Counter reset Meter swap Estimated Imported Interpolated Manual Measured Home Assistant Import Manual MQTT Tasmota Virtual Delta Level Rate Register Runtime Empirical Fixed Base price Bonus Discount Feed-in Tax Unit price Energy type Global Meter Allowed not enabled (MeterVault__AllowInAppUpdate) not supported on this install For local debugging, enable the {0} environment by setting the {1} environment variable to {0} and restarting the app. Development Mode Swapping to {0} environment will display more detailed information about the error that occurred. The Development environment shouldn't be enabled for deployed applications. It can result in displaying sensitive information from exceptions to end users. Error. An error occurred while processing your request. Error Request ID: Other ({0}) Row {0}: register for meter {1} fell {2}→{3}; a swap event was created (please check). Row {0}: register for meter {1} fell {2}→{3}; consumption across the swap set to {4}. Row {0}: skipped ({1}). Row {0}: expected unit "{1}" but found "{2}". Row {0}: unparseable date, skipped. Back to Import Choose CSV Col {0} Col {0}: {1} Commit import Commit failed: {0} Imported batch #{0}: {1} rows staged. Consumption recomputed. Auto-detect Date column Day (31.12.2024) Date format Month name (Januar 2024) Detect swaps Dry-run preview {0} rows, {1} columns First data row Column Role Header row Sample Upload any CSV, map its columns to your meters and categories, preview what would be staged, then commit it as a revertible import. Values may use the German dialect (decimal comma, unit suffixes, or dates) — the same parser the reference sheets use. The mapping changed after the preview. Run the dry run again, then commit. meter {0} Nothing staged. Check the first-data-row, date column and column mappings above. Faded rows are before the first data row. The 📅 column supplies the date. Select category Select meter Skip zero rows 1. Parsing options 2. Column preview 3. Map columns 4. Preview & commit Import wizard e.g. kWh {0} all read into '{1}'. Each Reading column needs its own meter. Col {0} (ManualCost) needs a target category. Col {0} ({1}) needs a target meter. Map at least one column to a role other than Ignore. Import #{0} reverted. Imported Rows Source Dry-run a reference sheet Import failed: {0} Load reference data Mapping wizard No imports yet. Costs (Kosten) Electricity (Strom) Heating oil (Heizöl) Water (Wasser) Recent imports Reference data loaded. Reference dataset Load the bundled Energiebilanz sheets (electricity, water, heating oil, costs) as a starter dataset with meters, tariffs and categories. Loaded Reference profile Revert Delete all {0} rows from import #{1} ({2}) and recompute the affected meters? Revert import? Revert failed: {0} active reverted unnamed {0} warnings Your own CSV Map an arbitrary sheet's columns to your meters/categories, preview and commit it as a revertible import. Or dry-run against one of the built-in reference profiles below. Dark mode Language Light mode Reload Toggle navigation An unhandled error has occurred. about the same Add reading Add reading — {0} Add source Attribute (optional; blank = state) Back to meters Backdated before the latest reading — consumption from there on is recomputed. (baseline {0}) {0} {1} since last reading Component Connector '{0}' is disabled, so this source would never ingest. Enable it first. '{0}' is a {1} connector; a {2} source needs {3}. Cost this year (set it up once; every source then just picks it). create one Below the last reading ({0} {1}) on a register that only counts up, so it will be rejected. If the meter was swapped or reset, record that on the Events tab first. Delete this {0} source? Delete source Edit source Enter a value Entity id (e.g. sensor.house_power) Flags From That time is in the future. Kind {0} this month last month {0} {1} Last reading {0} {1} on {2}. Last value · {0} last year Lifetime total Local time in {0}. This meter no longer exists. New source no no basis yet no change since last reading No {0} connector yet — No normalized consumption yet. No events (swaps, deliveries, corrections). No raw readings. No readings yet — prefilled with this meter's baseline ({0} {1}). No ingest sources bound to this meter. Add one to pull from MQTT/Tasmota or Home Assistant. No applicable tariffs. Meter #{0} not found. Notes Offset Pick a {0} connector for this {1} source. Hourly is plenty for a meter — monthly totals and cost come out identical, with far less raw data. Poll interval (minutes) Prev→New Priority '{0}' is disabled no connector — never ingests '{0}' is {1}, needs {2} ≈ {0} {1} by month end ≈ {0} {1} full year Quality Reading ({0}) Rejected — below the previous reading on a register that only counts up. Record a counter reset or meter swap first. Replaced the reading at that time with {0} {1}. Reading saved: {0} {1}. Readings Most recent {0} normalized deltas. Most recent {0} (raw, immutable audit truth). Times in {1}. Meter register details Register span This meter already has a reading at that time — saving replaces its value. retired Save reading Saving… Scale That clock time never happened in {0} — the clocks moved forward. Pick another time. Source deleted. Source saved. Source type Consumption ({0}) Events ({0}) Readings ({0}) Sources ({0}) Tariffs ({0}) open Time Time Time path (optional, e.g. Time) To MQTT topic (e.g. tele/plug1/SENSOR) Value kind Value path (e.g. ENERGY.Total; blank = bare scalar) A virtual meter is an expression over other meters, so it stores no readings of its own — enter the reading on the meter the expression refers to. Virtual meter — its value is an expression over other meters, evaluated when read, so it has no stored series of its own. See Trends for its figures. vs last month {0} vs {1} last year — will be rejected yes Active Add meter Delete '{0}'? This cannot be undone. Delete '{0}'? This will also delete {1} reading(s) and {2} consumption row(s). This cannot be undone. Delete meter Edit {0} to load the reference data. No meters yet. Add one, or go to Initial register baseline rate in this meter's unit (e.g. kW for kWh, L/h for L): a source reporting W or L/min should carry a scale factor to convert it first. Power/flow sensor — readings are an instantaneous rate, integrated over time into consumption. Store the value as a per-hour Location (optional) Manufacturer (optional) Measurement mode Model (optional) New meter no PV role (optional) Mode/baseline changed — consumption will be recomputed on save. Name, energy type and unit are required. — none — Serial number (optional) Sources This meter measures a subsection of the selected meter(s)' flow. Sub-meter of (upstream meters) Virtual "sum" meter — it has no readings of its own. In the flow view it equals the sum of the upstream meters you select below (e.g. Sum Solar = Solar 1 + Solar 2). yes Admin Connectors Oil / consumables Cost categories Energy types Import Meters Overview Settings Solar / PV Tariffs Trends Sorry, the content you are looking for does not exist. Not Found The session has been paused by the server. Failed to rejoin. Rejoining the server... Resume Failed to resume the session. Retry Rejoin failed... trying again in seconds. Please retry or reload the page. Flow diagram No flow to show for this period. Access & ingestion closed (401) API docs at {0} key(s) configured Keys themselves are never shown here. Set API keys with open (anonymous) effective These are the settings the running instance is using. They are configured via environment variables or Docker/compose, not stored in the database — so config stays reproducible and secrets never land in the DB. Change them in your compose/env and restart. Env keys: Live ingestion workers Locale Locale & time off on Raw-reading retention {0} days Reverse-proxy trust Seed reference data on start Timezone Autarky Generation Generation & self-consumption Generation by meter Grid draw {0} kWh No generation meters found. Add a meter with mode or load the reference data from Savings (Ersparnis) Self-consumption {0}% of generation Tag a meter and one (in meter metadata) to unlock self-consumption, autarky and savings. Add tariff Component Delete this {0} tariff ({1} {2})? Delete tariff Edit tariff No tariffs yet. Add one, or load the reference data from New tariff Notes (optional) open Global Meter: {0} Select the energy type or meter this tariff applies to. Type: {0} Unit and valid-from are required. Unit (e.g. EUR/kWh, EUR/m3, EUR/month) Valid from Valid to Valid to (empty = open-ended) Monthly cost Apply Last 48 months Cost trend Total over range: {0} This pulls the latest source, rebuilds it, and restarts the service. It takes a few minutes, during which MeterVault is unavailable. Readings are not affected — ingestion resumes on restart. Update MeterVault pull the new image and recreate the container run: update MeterVault {0} is available — this instance runs {1}. Starting… Update now Could not start the update. Could not start the update: {0} Could not start systemd-run. Update cannot be started: {0}. Update started. The service restarts when the rebuild finishes — this usually takes a few minutes.