diff --git a/assets/js/components/Battery/BatteryConfigCard.vue b/assets/js/components/Battery/BatteryConfigCard.vue
index fa106b361..1b5e15d75 100644
--- a/assets/js/components/Battery/BatteryConfigCard.vue
+++ b/assets/js/components/Battery/BatteryConfigCard.vue
@@ -86,6 +86,19 @@
{{ $t("battery.config.discharge") }}
+
+
+
+
@@ -112,7 +125,9 @@ export default defineComponent({
prioritySoc: { type: Number, default: 0 },
bufferStartSoc: { type: Number, default: 0 },
batteryDischargeControl: Boolean,
+ batteryGridDischarge: Boolean,
battery: { type: Object as PropType },
+ experimental: Boolean,
},
data() {
return {
@@ -244,6 +259,15 @@ export default defineComponent({
console.error(err);
}
},
+ async changeGridDischarge(e: Event) {
+ const target = e.target as HTMLInputElement;
+ try {
+ await api.post(`batterygriddischarge/${target.checked}`);
+ } catch (err) {
+ target.checked = this.batteryGridDischarge; // revert to stay in sync with state
+ console.error(err);
+ }
+ },
getBufferStartName(value: number) {
const key = value === 0 ? "never" : value === 100 ? "full" : "above";
return this.$t(`battery.config.bufferStart.${key}`, { soc: this.fmtSoc(value) });
diff --git a/assets/js/components/Battery/BatteryExperimental.vue b/assets/js/components/Battery/BatteryExperimental.vue
index 672a5b5cc..187defdd5 100644
--- a/assets/js/components/Battery/BatteryExperimental.vue
+++ b/assets/js/components/Battery/BatteryExperimental.vue
@@ -20,7 +20,9 @@
:priority-soc="state.prioritySoc"
:buffer-start-soc="state.bufferStartSoc"
:battery-discharge-control="state.batteryDischargeControl"
+ :battery-grid-discharge="state.batteryGridDischarge"
:battery="state.battery"
+ :experimental="state.experimental"
/>
-
- {{ $t("config.battery.description") }}
-
-
-
-
-
-
diff --git a/assets/js/components/Config/GeneralConfig.vue b/assets/js/components/Config/GeneralConfig.vue
index c6e7076a3..8f6b98782 100644
--- a/assets/js/components/Config/GeneralConfig.vue
+++ b/assets/js/components/Config/GeneralConfig.vue
@@ -29,14 +29,6 @@
@edit="openModal('experimental')"
/>
-
-
b.controllable);
- },
- batteryGridDischarge() {
- return store.state?.batteryGridDischarge === true;
- },
networkStatus() {
return `${store.state?.network?.port ?? ""}`;
},
diff --git a/assets/js/views/Config.vue b/assets/js/views/Config.vue
index 8fd3efb35..cdbadbe52 100644
--- a/assets/js/views/Config.vue
+++ b/assets/js/views/Config.vue
@@ -481,7 +481,6 @@
-
@@ -560,7 +559,6 @@ import TariffCard from "../components/Config/TariffCard.vue";
import TariffModal from "../components/Config/TariffModal.vue";
import TelemetryModal from "../components/Config/TelemetryModal.vue";
import ExperimentalModal from "../components/Config/ExperimentalModal.vue";
-import BatteryModal from "../components/Config/BatteryModal.vue";
import TitleModal from "../components/Config/TitleModal.vue";
import Header from "../components/Top/Header.vue";
import VehicleIcon from "../components/VehicleIcon";
@@ -650,7 +648,6 @@ export default defineComponent({
TariffModal,
TelemetryModal,
ExperimentalModal,
- BatteryModal,
TitleModal,
TopHeader: Header,
VehicleIcon,
@@ -925,9 +922,6 @@ export default defineComponent({
experimental() {
return store.state?.experimental;
},
- batteryGridDischarge() {
- return store.state?.batteryGridDischarge === true;
- },
eebus() {
return store.state?.eebus;
},
diff --git a/i18n/en.json b/i18n/en.json
index 1bb4da9bb..9946e903f 100644
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -42,6 +42,7 @@
},
"bufferTitle": "Battery as charging buffer",
"discharge": "Prevent home battery discharge in fast mode and during planned charging.",
+ "gridDischarge": "Allow home battery to discharge to the grid.",
"priority": "Home battery has priority while it is below {soc}. Then the charging points receive the surplus.",
"priorityNone": "Solar surplus goes straight to the charging points. Set a value above {soc} to prioritize the home battery.",
"priorityTitle": "Where does the surplus go first?"
@@ -119,8 +120,6 @@
"titleEdit": "Edit Self-Regulating Consumer"
},
"battery": {
- "description": "Experimental battery controls. These features are still being tested and may change or be removed in future versions.",
- "gridDischarge": "Allow battery to discharge to the grid",
"title": "Battery",
"titleAdd": "Add Battery",
"titleEdit": "Edit Battery"