diff --git a/bundles/org.openhab.binding.evcc/README.md b/bundles/org.openhab.binding.evcc/README.md index d4ee769da0c..3a625b6864b 100644 --- a/bundles/org.openhab.binding.evcc/README.md +++ b/bundles/org.openhab.binding.evcc/README.md @@ -1,7 +1,7 @@ # evcc Binding This binding integrates [evcc - electric vehicle charging control](https://evcc.io), a project that provides a control center for electric vehicle charging. -The binding requires evcc [version 0.117.0](https://github.com/evcc-io/evcc/releases/tag/0.117.0) or newer and is tested with this version. +The binding requires evcc [version 0.123.1](https://github.com/evcc-io/evcc/releases/tag/0.123.1) or newer and is tested with this version. You can easily install and upgrade evcc on openHABian using `sudo openhabian-config`. @@ -38,50 +38,66 @@ Default value for _refreshInterval_ is 60 seconds. Those channels exist only once. Please note that some of them are only available when evcc is properly configured. -| Channel | Type | Read/Write | Description | -|----------------------------|----------------------|------------|--------------------------------------------------------------------------------------------------------------| -| general#batteryCapacity | Number:Energy | R | Capacity of (home) battery. | -| general#batteryPower | Number:Power | R | Current power from battery. | -| general#batterySoC | Number:Dimensionless | R | Current State of Charge of battery. | -| general#batteryPrioritySoC | Number:Dimensionless | RW | State of State of Charge for which the battery has priority over charging the ev when charging mode is "pv". | -| general#gridPower | Number:Power | R | Current power from grid (negative means feed-in) | -| general#homePower | Number:Power | R | Current power taken by home. | -| general#pvPower | Number:Power | R | Current power from photovoltaik. | +| Channel | Type | Read/Write | Description | +|---------------------------------|----------------------|------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| general#batteryCapacity | Number:Energy | R | Capacity of (home) battery | +| general#batteryPower | Number:Power | R | Current power from battery | +| general#batterySoC | Number:Dimensionless | R | Current State of Charge of battery | +| general#batteryDischargeControl | Switch | RW | Enable or disable battery discharge control | +| general#batteryMode | String | R | Current battery mode | +| general#prioritySoC | Number:Dimensionless | RW | State of State of Charge for which the battery has priority over charging the ev when charging mode is "pv" | +| general#bufferSoC | Number:Dimensionless | RW | Until this State of Charge the discharging of a house battery is allowed in "pv" mode, when there is insufficient solar surplus (below the minimum charging power) | +| general#bufferStartSoC | Number:Dimensionless | RW | State of Charge for which a charging session in "pv" mode is started, even if there is insufficient solar surplus | +| general#residualPower | Number:Power | RW | Target operating point of the surplus regulation at the grid connection (grid meter) | +| general#gridPower | Number:Power | R | Current power from grid (negative means feed-in) | +| general#homePower | Number:Power | R | Current power taken by home | +| general#pvPower | Number:Power | R | Current power from photovoltaik | ### Loadpoint channels Those channels exist per configured loadpoint. Please note that you have to replace _N_ with your loadpoint number. -| Channel | Type | Read/Write | Description | -|-------------------------------------|------------------------|------------|-----------------------------------------------------------------------------------------------------| -| loadpointN#activePhases | Number | R | Current number of active phases while charging | -| loadpointN#chargeCurrent | Number:ElectricCurrent | R | Current amperage per connected phase while charging | -| loadpointN#chargeDuration | Number:Time | R | Charging duration | -| loadpointN#chargeRemainingDuration | Number:Time | R | Remaining duration until target SoC is reached | -| loadpointN#chargeRemainingEnergy | Number:Energy | R | Remaining energy until target SoC is reached | -| loadpointN#chargePower | Number:Power | R | Current power of charging | -| loadpointN#chargedEnergy | Number:Energy | R | Energy charged since plugged-in | -| loadpointN#charging | Switch | R | Loadpoint is currently charging | -| loadpointN#enabled | Switch | R | Charging enabled (mode is not "off") | -| loadpointN#maxCurrent | Number:ElectricCurrent | RW | Maximum amperage per connected phase with which the car should be charged | -| loadpointN#minCurrent | Number:ElectricCurrent | RW | Minimum amperage per connected phase with which the car should be charged | -| loadpointN#minSoC | Number:Dimensionless | RW | Charge immediately with maximum power up to the defined SoC, if the charge mode is not set to "off" | -| loadpointN#mode | String | RW | Charging mode: "off", "now", "minpv", "pv" | -| loadpointN#phases | Number | RW | The maximum number of phases which can be used | -| loadpointN#targetEnergy | Number:Energy | RW | Amount of energy to charge the vehicle with | -| loadpointN#targetSoC | Number:Dimensionless | RW | Until which state of charge (SoC) should the vehicle be charged | -| loadpointN#targetTime | DateTime | RW | When the target SoC should be reached | -| loadpointN#targetTimeEnabled | Switch | RW | Target time for charging enabled | -| loadpointN#title | String | R | Title of loadpoint | -| loadpointN#vehicleConnected | Switch | R | Whether vehicle is connected to loadpoint | -| loadpointN#vehicleConnectedDuration | Number:Time | R | Duration the vehicle is connected to loadpoint | -| loadpointN#vehicleCapacity | Number:Energy | R | Capacity of EV battery | -| loadpointN#vehicleOdometer | Number:Length | R | Total distance travelled by EV | -| loadpointN#vehiclePresent | Switch | R | Whether evcc is able to get data from vehicle | -| loadpointN#vehicleRange | Number:Length | R | Battery range for EV | -| loadpointN#vehicleSoC | Number:Dimensionless | R | Current State of Charge of EV | -| loadpointN#vehicleTitle | String | R | Name of EV | +| Channel | Type | Read/Write | Description | +|-------------------------------------|------------------------|------------|-------------------------------------------------------------------------------------------------------------------| +| loadpointN#activePhases | Number | R | Current number of active phases while charging | +| loadpointN#chargeCurrent | Number:ElectricCurrent | R | Current amperage per connected phase while charging | +| loadpointN#chargeDuration | Number:Time | R | Charging duration | +| loadpointN#chargeRemainingDuration | Number:Time | R | Remaining duration until limit SoC is reached | +| loadpointN#chargeRemainingEnergy | Number:Energy | R | Remaining energy until limit SoC is reached | +| loadpointN#chargePower | Number:Power | R | Current power of charging | +| loadpointN#chargedEnergy | Number:Energy | R | Energy charged since plugged-in | +| loadpointN#charging | Switch | R | Loadpoint is currently charging | +| loadpointN#enabled | Switch | R | Charging enabled (mode is not "off") | +| loadpointN#maxCurrent | Number:ElectricCurrent | RW | Maximum amperage per connected phase with which the car should be charged | +| loadpointN#minCurrent | Number:ElectricCurrent | RW | Minimum amperage per connected phase with which the car should be charged | +| loadpointN#mode | String | RW | Charging mode: "off", "now", "minpv", "pv" | +| loadpointN#phases | Number | RW | The maximum number of phases which can be used | +| loadpointN#limitEnergy | Number:Energy | RW | Amount of energy to charge the vehicle with | +| loadpointN#limitSoC | Number:Dimensionless | RW | Until which state of charge (SoC) should the vehicle be charged | +| loadpointN#title | String | R | Title of loadpoint | +| loadpointN#vehicleConnected | Switch | R | Whether vehicle is connected to loadpoint | +| loadpointN#vehicleConnectedDuration | Number:Time | R | Duration the vehicle is connected to loadpoint | +| loadpointN#vehicleCapacity | Number:Energy | R | Capacity of EV battery | +| loadpointN#vehicleOdometer | Number:Length | R | Total distance travelled by EV | +| loadpointN#vehiclePresent | Switch | R | Whether evcc is able to get data from vehicle | +| loadpointN#vehicleRange | Number:Length | R | Battery range for EV | +| loadpointN#vehicleSoC | Number:Dimensionless | R | Current State of Charge of EV | +| loadpointN#vehicleName | String | R | The unique identifier of the EV used in the evcc configuration (containing no whitespaces nor special characters) | + +### Vehicle channels + +Those channels exist per configured vehicle. +Please note that you have to replace _ID_ with your vehicle id/name. + +| Channel | Type | Read/Write | Description | +|------------------------------|----------------------|------------|--------------------------------------------------------------------------| +| vehicleID#vehicleTitle | String | R | Title of vehicle | +| vehicleID#vehicleMinSoC | Number:Dimensionless | RW | Minimum state of charge (SoC) a vehicle should have | +| vehicleID#vehicleLimitSoC | Number:Dimensionless | RW | Until which state of charge (SoC) should the specific vehicle be charged | +| vehicleID#vehiclePlanEnabled | Switch | RW | Plan for charging enabled | +| vehicleID#vehiclePlanSoC | Number:Dimensionless | RW | Until which state of charge (SoC) should vehicle be charged in plan | +| vehicleID#vehiclePlanTime | DateTime | RW | When the plan SoC should be reached | ## Full Example @@ -95,43 +111,53 @@ Thing evcc:device:demo "evcc Demo" [url="https://demo.evcc.io", refreshInterval= ```java // General -Number:General evcc_batteryCapacity "Battery Capacity [%.0f kWH]" {channel="evcc:device:demo:general#batteryCapacity"} -Number:Power evcc_batteryPower "Battery Power [%.1f kW]" {channel="evcc:device:demo:general#batteryPower"} -Number:Dimensionless evcc_batterySoC "Battery SoC [%d %%]" {channel="evcc:device:demo:general#batterySoC"} -Number:Dimensionless evcc_batteryPrioritySoC "Battery Priority SoC [%d %%]" {channel="evcc:device:demo:general#batteryPrioritySoC"} -Number:Power evcc_gridPower "Grid Power [%.1f kW]" {channel="evcc:device:demo:general#gridPower"} -Number:Power evcc_homePower "Home Power [%.1f kW]" {channel="evcc:device:demo:general#homePower"} -Number:Power evcc_pvPower "PV Power [%.1f kW]" {channel="evcc:device:demo:general#pvPower"} +Number:Energy evcc_batteryCapacity "Battery Capacity [%.0f kWh]" {channel="evcc:device:demo:general#batteryCapacity"} +Number:Power evcc_batteryPower "Battery Power [%.1f kW]" {channel="evcc:device:demo:general#batteryPower"} +Number:Dimensionless evcc_batterySoC "Battery SoC [%d %%]" {channel="evcc:device:demo:general#batterySoC"} +Switch evcc_batteryDischargeControl "Battery Discharge Control [%s]" {channel="evcc:device:demo:general#batteryDischargeControl"} +String evcc_batteryMode "Battery Mode [%s]" {channel="evcc:device:demo:general#batteryMode"} +Number:Dimensionless evcc_prioritySoC "Battery Priority SoC [%d %%]" {channel="evcc:device:demo:general#prioritySoC"} +Number:Dimensionless evcc_bufferSoC "Battery Buffer SoC [%d %%]" {channel="evcc:device:demo:general#bufferSoC"} +Number:Dimensionless evcc_bufferStartSoC "Battery Buffer Start SoC [%d %%]" {channel="evcc:device:demo:general#bufferStartSoC"} +Number:Power evcc_residualPower "Grid Residual Power [%.1f kW]" {channel="evcc:device:demo:general#residualPower"} +Number:Power evcc_gridPower "Grid Power [%.1f kW]" {channel="evcc:device:demo:general#gridPower"} +Number:Power evcc_homePower "Home Power [%.1f kW]" {channel="evcc:device:demo:general#homePower"} +Number:Power evcc_pvPower "PV Power [%.1f kW]" {channel="evcc:device:demo:general#pvPower"} // Loadpoint -Number evcc_loadpoint0_activePhases "Active Phases [%d]" {channel="evcc:device:demo:loadpoint0#activePhases"} -Number:ElectricCurrent evcc_loadpoint0_chargeCurrent "Charging current [%.0f A]" {channel="evcc:device:demo:loadpoint0#chargeCurrent"} -Number:Time evcc_loadpoint0_chargeDuration "Charging duration [%1$tH:%1$tM]"