# [e-mobility charging stations simulator](https://github.com/sap/e-mobility-charging-stations-simulator)
+[![CI worklow](https://github.com/SAP/e-mobility-charging-stations-simulator/actions/workflows/ci.yml/badge.svg)](https://github.com/SAP/e-mobility-charging-stations-simulator/actions/workflows/ci.yml)
[![REUSE status](https://api.reuse.software/badge/github.com/SAP/e-mobility-charging-stations-simulator)](https://api.reuse.software/info/github.com/SAP/e-mobility-charging-stations-simulator)
## Summary
## Installation
-Enable corepack if not already done:
+Enable corepack if not already done and install latest pnpm version:
```shell
corepack enable
+corepack prepare pnpm@latest --activate
```
In the repository root, run the following command:
| firmwareUpgrade | | {<br />"versionUpgrade": {<br />"step": 1<br />},<br />"reset": true<br />} | {<br />versionUpgrade: {<br />patternGroup: number;<br />step: number;<br />};<br />reset: boolean;<br />failureStatus: 'DownloadFailed' \| 'InstallationFailed';<br />} | Configuration section for simulating firmware upgrade support. |
| commandsSupport | | {<br />"incomingCommands": {},<br />"outgoingCommands": {}<br />} | {<br /> incomingCommands: Record<IncomingRequestCommand, boolean>;<br />outgoingCommands?: Record<RequestCommand, boolean>;<br />} | Configuration section for OCPP commands support. Empty section or subsections means all implemented OCPP commands are supported |
| messageTriggerSupport | | {} | Record<MessageTrigger, boolean> | Configuration section for OCPP commands trigger support. Empty section means all implemented OCPP trigger commands are supported |
-| Configuration | | | ChargingStationConfiguration | charging stations OCPP parameters configuration section |
-| AutomaticTransactionGenerator | | | AutomaticTransactionGenerator | charging stations ATG configuration section |
-| Connectors | | | Connectors | charging stations connectors configuration section |
+| Configuration | | | ChargingStationOcppConfiguration | charging stations OCPP parameters configuration section |
+| AutomaticTransactionGenerator | | | AutomaticTransactionGeneratorConfiguration | charging stations ATG configuration section |
+| Connectors | | | Record<string, ConnectorStatus> | charging stations connectors configuration section |
+| Evses | | | Record<string, EvseTemplate> | charging stations EVSEs configuration section |
-#### Configuration section
+#### Configuration section syntax example
```json
"Configuration": {
}
```
-#### AutomaticTransactionGenerator section
+#### AutomaticTransactionGenerator section syntax example
-Section type definition:
+##### Type definition:
```ts
type AutomaticTransactionGeneratorConfiguration = {
};
```
-Section example:
+##### Example:
```json
"AutomaticTransactionGenerator": {
}
```
-#### Connectors section
+#### Connectors section syntax example
```json
"Connectors": {
...
{
"unit": "A",
- "measurand": "Current.Import"
+ "measurand": "Current.Import",
+ "minimum": "0.5"
},
...
{
},
```
+#### Evses section syntax example
+
+```json
+ "Evses": {
+ "0": {
+ "Connectors": {
+ "0": {}
+ }
+ },
+ "1": {
+ "Connectors": {
+ "1": {
+ "bootStatus": "Available",
+ "MeterValues": [
+ ...
+ {
+ "unit": "W",
+ "measurand": "Power.Active.Import",
+ "phase": "L1-N",
+ "value": "5000",
+ "fluctuationPercent": "10"
+ },
+ ...
+ {
+ "unit": "A",
+ "measurand": "Current.Import",
+ "minimum": "0.5"
+ },
+ ...
+ {
+ "unit": "Wh"
+ },
+ ...
+ ]
+ }
+ }
+ }
+ },
+```
+
### Charging station configuration
**dist/assets/configurations/\<hashId\>.json**: