Charging Intelligence
Commercial charging networks in the real-world constantly have to react and adapt to problems in the field. These may be caused by faulty communications links, unexpected driver behavior, hardware faults and firmware bugs.
Based on our experience running and managing real world commercial networks, we have built session improvement intelligence to improve the quality of charging services delivered by your network.
eDRV's network manages and monitors chargestations and driver session in near real time and intelligently takes action when needed.
Setting Session Targets
If a session is started using the /sessions
API with a specified target, eDRV's charging intelligence will ensure that the session will be automatically stopped on reaching the target limits.
The available target types are:
Energy
(kWh): E.g A session is started via a POST /sessions API call with anE kWh
limit.
eDRV attempts to stop a session whensession.metrics.energyConsumed >= E*1000
(No default session energy target)Time
(Minutes): E.g A session is started via a POST /sessions API call with aT minutes
limit.
eDRV attempts to stop a session whensession.metrics.energyPeriod >= T*60
.
(Default session time target is 12 hours)Money
(Amount): E.g A session is started via a POST /sessions API call with a$M
limit.
eDRV attempts to stop a session whensession.cost.amount >= M
(No default session money target)
Session Target Detection and Accuracy
Please note that the chargestation sends energy reports every 30sec-1min to eDRV and it may take another 30seconds for the chargestation to respond to a session stop command from eDRV.
Because of this delay, consider adding some padding to the values when setting targets for a session. Most of the real-world charging sessions last for hours at a time in which case adding a couple of minutes (time) or 0.5 kWh (energy) padding to your targets may be advisable.
When testing with session targets with very short sessions (e.g. 2 minutes) please look out for unexpected behavior.
Session Start Failure
There are many reasons why a chargestation unexpectedly does not start the flow of energy. These reasons range from driver failing to plug in his EV to poor data connectivity at the chargestation.
Zombie 🧟 Session.
If a session fails to start within 5 minutes, eDRV will attempt to stop the charging attempt and clean up the state of the (data) on the session as a protective measure.
Session Stop Failure
Similar to the case above, sometimes a chargestation may miss a stop session message completely giving the impression that a driver is still charging when they may have driven off hours ago. This may lead to unexpected charges for the driver if this is not acted upon by the network as soon as possible.
Eternal ♾️ Sessions
If a transaction fails to stop within 6 hours, eDRV will attempt to stop the charging attempt and clean up the state of the (data) on the transaction as a protective measure.
EV Full Charge Detection
eDRV detects when the EV is no longer taking energy from the chargestation. This is an indication of the fact that the battery is full.
EV Full Webhook
EV full charge detection triggers a webhook to your application server. Traditional use cases here for alerting the driver and requesting them to move the EV. For further details on webhooks see: Webhooks
Energy and Idle Period Measurement
The EV may suspend and re-start energy consumption multiple times from from the chargestation. For e.g. when an EV is plugged in and idling.
eDRV metrics keeps a track of Energy and Idle period within a session so you don't have to. See session.metrics
in Sessions
If you are using an hourly rate, eDRV uses Energy vs. Idle time monitoring to calculate accurate costs for you. See session.cost
in Sessions
Cost Estimation
eDRV calculates the running cost of a session based on the Rate so you don't have to.
For e.g. if you have a Complex Rate* with
Time Of Day Rates
(e.g $0.25/kWh from 6Am-6Pm, $0.45/kWh from 6:01Pm:5:59Am) andOverstay Rate
(e.g. $5/hour after charging completion)
eDRV's charging intelligence takes a whole host of network inputs such as (charging vs. idle time) to update cost for a session in real time so you don't have to. See session.cost
in Sessions
(*) Complex rates are coming soon
Updated 7 months ago