I do not yet have an EV but I’ve already installed a V2C Trydan Wallbox. OH has no plug-in for this device but it can be managed using the HTTP binding. Here is the thing definition (OH 5.1.4):
version: 1
things:
http:url:f429b6ecbd:
label: Trydan
config:
baseURL: http://192.168.129.181
refresh: 30
timeout: 3000
delay: 0
bufferSize: 2048
authMode: BASIC
stateMethod: GET
commandMethod: GET
contentType: application/json
ignoreSSLErrors: false
channels:
last-failure:
type: request-date-time
label: Last Failure
last-success:
type: request-date-time
label: Last Success
id:
type: string
label: ID
description: ""
config:
stateTransformation:
- JSONPATH:$.ID
stateExtension: /RealTimeData
mode: READONLY
firmware:
type: string
label: Firmware Version
config:
stateTransformation:
- JSONPATH:$.FirmwareVersion
stateExtension: /RealTimeData
mode: READONLY
paused:
type: string
label: Paused
config:
stateTransformation:
- JSONPATH:$.Paused
stateExtension: /RealTimeData
mode: READWRITE
mode:
type: string
label: Dynamic Power Mode
config:
stateTransformation:
- JSONPATH:$.DynamicPowerMode
stateExtension: /RealTimeData
mode: READWRITE
voltage_installation:
type: number
label: Installation Voltage
config:
stateTransformation:
- JSONPATH:$.VoltageInstallation
stateExtension: /RealTimeData
mode: READWRITE
charge_state:
type: string
label: Charge Point state
config:
stateTransformation:
- JSONPATH:$.ChargeState
stateExtension: /RealTimeData
mode: READONLY
charge_power:
type: number
label: Current charging power
config:
stateTransformation:
- JSONPATH:$.ChargePower
stateExtension: /RealTimeData
mode: READONLY
house_power:
type: number
label: House power consumption
config:
stateTransformation:
- JSONPATH:$.HousePower
stateExtension: /RealTimeData
mode: READONLY
fv_power:
type: number
label: Photovoltaic power generation
config:
stateTransformation:
- JSONPATH:$.FVPower
stateExtension: /RealTimeData
mode: READONLY
min_intensity:
type: number
label: Minimum limit
config:
stateTransformation:
- JSONPATH:$.MinIntensity
stateExtension: /RealTimeData
commandExtension: /write/MinIntensity=%2$s
mode: READWRITE
max_intensity:
type: number
label: Maximum limit
config:
stateTransformation:
- JSONPATH:$.MaxIntensity
stateExtension: /RealTimeData
commandExtension: /write/MaxIntensity=%2$s
mode: READWRITE
More channels can be defined as per this document.
Note: dimensions must be defined in items, not in channels
I have a small solar plant (1.35KW) and I intend to use non-used production (“lost” to the grid) to charge EVs. My electricity meter counts in 15 minute intervals, so my idea is to have the following charging plan (and others).
Depending on solar production, charge the EV during a certain time, probably 5 minutes, and then pause the charging until I’m break even (the surplus used during charging is compensated by injecting electricity in the grid in a 15 min interval).
I will publish this charging plan in the coming days.