-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Enabled OCPP 2.0.1 with AC ISO 15118-2, PnC and MaEVe
1. Two new MaEVe patches. One for enabling local MO root cert, the other for ignoring OCSP error. 2. Replaced the old MO leaf (CC) as the eMAID check digit wasn't correct 3. Added modified config yaml with CertificateInstallation disabled 4. Corresponding chages in the demo script to enable the above. Signed-off-by: Md Sahabul Hossain <[email protected]>
- Loading branch information
Showing
5 changed files
with
202 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,137 @@ | ||
active_modules: | ||
iso15118_charger: | ||
module: EvseV2G | ||
config_module: | ||
device: auto | ||
tls_security: allow | ||
verify_contract_cert_chain: false | ||
connections: | ||
security: | ||
- module_id: evse_security | ||
implementation_id: main | ||
iso15118_car: | ||
module: PyEvJosev | ||
config_module: | ||
device: auto | ||
supported_ISO15118_2: true | ||
tls_active: true | ||
is_cert_install_needed: false | ||
evse_manager_1: | ||
module: EvseManager | ||
config_module: | ||
connector_id: 1 | ||
three_phases: true | ||
has_ventilation: true | ||
country_code: DE | ||
evse_id: "DE*PNX*00001" | ||
session_logging: true | ||
session_logging_xml: false | ||
session_logging_path: /tmp/everest-logs | ||
ac_hlc_enabled: true | ||
ac_hlc_use_5percent: false | ||
ac_enforce_hlc: false | ||
connections: | ||
bsp: | ||
- module_id: yeti_driver_1 | ||
implementation_id: board_support | ||
powermeter_grid_side: | ||
- module_id: yeti_driver_1 | ||
implementation_id: powermeter | ||
slac: | ||
- module_id: slac | ||
implementation_id: evse | ||
hlc: | ||
- module_id: iso15118_charger | ||
implementation_id: charger | ||
yeti_driver_1: | ||
module: JsYetiSimulator | ||
config_module: | ||
connector_id: 1 | ||
slac: | ||
module: JsSlacSimulator | ||
car_simulator_1: | ||
module: JsCarSimulator | ||
config_module: | ||
connector_id: 1 | ||
auto_enable: true | ||
auto_exec: false | ||
auto_exec_commands: sleep 1;iec_wait_pwr_ready;sleep 1;draw_power_regulated 16,3;sleep 30;unplug | ||
connections: | ||
simulation_control: | ||
- module_id: yeti_driver_1 | ||
implementation_id: yeti_simulation_control | ||
ev: | ||
- module_id: iso15118_car | ||
implementation_id: ev | ||
slac: | ||
- module_id: slac | ||
implementation_id: ev | ||
ocpp: | ||
module: OCPP201 | ||
connections: | ||
evse_manager: | ||
- module_id: evse_manager_1 | ||
implementation_id: evse | ||
auth: | ||
- module_id: auth | ||
implementation_id: main | ||
system: | ||
- module_id: system | ||
implementation_id: main | ||
security: | ||
- module_id: evse_security | ||
implementation_id: main | ||
evse_security: | ||
module: EvseSecurity | ||
config_module: | ||
private_key_password: "123456" | ||
token_provider_1: | ||
module: DummyTokenProviderManual | ||
auth: | ||
module: Auth | ||
config_module: | ||
connection_timeout: 120 | ||
selection_algorithm: PlugEvents | ||
connections: | ||
token_provider: | ||
- module_id: token_provider_1 | ||
implementation_id: main | ||
- module_id: ocpp | ||
implementation_id: auth_provider | ||
- module_id: evse_manager_1 | ||
implementation_id: token_provider | ||
token_validator: | ||
- module_id: ocpp | ||
implementation_id: auth_validator | ||
evse_manager: | ||
- module_id: evse_manager_1 | ||
implementation_id: evse | ||
energy_manager: | ||
module: EnergyManager | ||
connections: | ||
energy_trunk: | ||
- module_id: grid_connection_point | ||
implementation_id: energy_grid | ||
grid_connection_point: | ||
module: EnergyNode | ||
config_module: | ||
fuse_limit_A: 40.0 | ||
phase_count: 3 | ||
connections: | ||
price_information: [] | ||
energy_consumer: | ||
- module_id: evse_manager_1 | ||
implementation_id: energy_grid | ||
powermeter: | ||
- module_id: yeti_driver_1 | ||
implementation_id: powermeter | ||
api: | ||
module: API | ||
connections: | ||
evse_manager: | ||
- module_id: evse_manager_1 | ||
implementation_id: evse | ||
system: | ||
module: System | ||
|
||
x-module-layout: {} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
diff --git a/manager/handlers/ocpp201/authorize.go b/manager/handlers/ocpp201/authorize.go | ||
index 5df2305..0db9f79 100644 | ||
--- a/manager/handlers/ocpp201/authorize.go | ||
+++ b/manager/handlers/ocpp201/authorize.go | ||
@@ -49,7 +49,12 @@ func (a AuthorizeHandler) HandleCall(ctx context.Context, chargeStationId string | ||
if req.Certificate != nil { | ||
_, err = a.CertificateValidationService.ValidatePEMCertificateChain(ctx, []byte(*req.Certificate), req.IdToken.IdToken) | ||
status, certificateStatus = handleCertificateValidationError(err) | ||
- if err != nil { | ||
+ if err.Error() == "failed to perform ocsp check after 1 attempts" { | ||
+ var tempStatus = types.AuthorizeCertificateStatusEnumTypeAccepted | ||
+ certificateStatus = &tempStatus | ||
+ status = types.AuthorizationStatusEnumTypeAccepted | ||
+ span.SetAttributes(attribute.String("authorize.cert_warn", "No OCSP, but ignoring for testing purpose.")) | ||
+ } else if err != nil { | ||
span.SetAttributes(attribute.String("authorize.cert_error", err.Error())) | ||
} | ||
} | ||
@@ -57,7 +62,12 @@ func (a AuthorizeHandler) HandleCall(ctx context.Context, chargeStationId string | ||
if req.Iso15118CertificateHashData != nil { | ||
_, err := a.CertificateValidationService.ValidateHashedCertificateChain(ctx, *req.Iso15118CertificateHashData) | ||
status, certificateStatus = handleCertificateValidationError(err) | ||
- if err != nil { | ||
+ if err.Error() == "failed to perform ocsp check after 1 attempts" { | ||
+ var tempStatus = types.AuthorizeCertificateStatusEnumTypeAccepted | ||
+ certificateStatus = &tempStatus | ||
+ status = types.AuthorizationStatusEnumTypeAccepted | ||
+ span.SetAttributes(attribute.String("authorize.cert_warn", "No OCSP, but ignoring for testing purpose.")) | ||
+ } else if err != nil { | ||
span.SetAttributes(attribute.String("authorize.cert_error", err.Error())) | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
diff --git a/config/manager/config.toml b/config/manager/config.toml | ||
index 3fa49ec..668eda9 100644 | ||
--- a/config/manager/config.toml | ||
+++ b/config/manager/config.toml | ||
@@ -19,12 +19,8 @@ firestore.project_id = "*detect-project-id*" | ||
type = "ocsp" | ||
|
||
[contract_cert_validator.ocsp.root_certs] | ||
-type = "opcp" | ||
-opcp.url = "https://open.plugncharge-test.hubject.com" | ||
-opcp.ttl = "24h" | ||
-opcp.auth.type = "hubject_test_token" | ||
-opcp.auth.hubject_test_token.url = "https://hubject.stoplight.io/api/v1/projects/cHJqOjk0NTg5/nodes/6bb8b3bc79c2e-authorization-token" | ||
-opcp.auth.hubject_test_token.ttl = "6h" | ||
+type = "file" | ||
+file.files = ["/certificates/root-MO-cert.pem"] | ||
|
||
[contract_cert_provider] | ||
type = "opcp" |
Binary file not shown.