|
|
@@ -1,6 +1,6 @@
|
|
|
|
|
|
/*
|
|
|
- * Copyright (C) 2007-2011 Siemens AG
|
|
|
+ * Copyright (C) 2007-2010 Siemens AG
|
|
|
*
|
|
|
* This program is free software: you can redistribute it and/or modify
|
|
|
* it under the terms of the GNU Lesser General Public License as published
|
|
|
@@ -19,7 +19,7 @@
|
|
|
/*******************************************************************
|
|
|
*
|
|
|
* @author Sebastian.Kaebisch.EXT@siemens.com
|
|
|
- * @version 0.3.2
|
|
|
+ * @version 0.3
|
|
|
* @contact Joerg.Heuer@siemens.com
|
|
|
*
|
|
|
********************************************************************/
|
|
|
@@ -40,201 +40,195 @@ extern "C" {
|
|
|
|
|
|
enum faultCodeType
|
|
|
{
|
|
|
- ParsingError_faultCodeType,
|
|
|
- V2GProtocolVersionNotSupported_faultCodeType,
|
|
|
- UnknownError_faultCodeType
|
|
|
+ ParsingError,
|
|
|
+ V2GProtocolVersionNotSupported,
|
|
|
+ UnknownError
|
|
|
|
|
|
};
|
|
|
|
|
|
enum eventEntryType
|
|
|
{
|
|
|
- InitiateSessionSetup_eventEntryType,
|
|
|
- InitiateServiceDiscovery_eventEntryType,
|
|
|
- InitiatePowerDiscovery_eventEntryType,
|
|
|
- InitiateLineLock_eventEntryType,
|
|
|
- InitiatePowerDelivery_eventEntryType,
|
|
|
- InitiateInitiateMeteringStatus_eventEntryType
|
|
|
+ InitiateSessionSetup,
|
|
|
+ InitiateServiceDiscovery,
|
|
|
+ InitiatePowerDiscovery,
|
|
|
+ InitiateLineLock,
|
|
|
+ InitiatePowerDelivery,
|
|
|
+ InitiateInitiateMeteringStatus
|
|
|
|
|
|
};
|
|
|
|
|
|
enum responseCode_SessionSetupType
|
|
|
{
|
|
|
- OK_SessionSetup_responseCode_SessionSetupType,
|
|
|
- OK_NewSessionEstablished_responseCode_SessionSetupType,
|
|
|
- OK_OldSessionJoined_responseCode_SessionSetupType,
|
|
|
- FAILED_UnknownSession_responseCode_SessionSetupType,
|
|
|
- FAILED_SessionEstablishmentError_responseCode_SessionSetupType,
|
|
|
- FAILED_UnknownError_InSessionSetup_responseCode_SessionSetupType
|
|
|
+ OK_SessionSetup,
|
|
|
+ OK_NewSessionEstablished,
|
|
|
+ OK_OldSessionJoined,
|
|
|
+ FAILED_UnknownSession,
|
|
|
+ FAILED_SessionEstablishmentError,
|
|
|
+ FAILED_UnknownError_InSessionSetup
|
|
|
|
|
|
};
|
|
|
|
|
|
enum serviceTypeType
|
|
|
{
|
|
|
- PEV_Recharge_serviceTypeType,
|
|
|
- Remote_Customer_Support_serviceTypeType,
|
|
|
- Internet_serviceTypeType,
|
|
|
- Other_serviceTypeType
|
|
|
+ PEV_Recharge,
|
|
|
+ Remote_Customer_Support,
|
|
|
+ Internet,
|
|
|
+ Other
|
|
|
|
|
|
};
|
|
|
|
|
|
enum responseCode_ServiceDiscoveryType
|
|
|
{
|
|
|
- OK_ServiceDiscovery_responseCode_ServiceDiscoveryType,
|
|
|
- FAILED_NoServicesOfThisType_responseCode_ServiceDiscoveryType,
|
|
|
- FAILED_NoServicesInThisScope_responseCode_ServiceDiscoveryType,
|
|
|
- FAILED_NoServicesOfThisTypeScope_responseCode_ServiceDiscoveryType,
|
|
|
- FAILED_NoServicesFound_responseCode_ServiceDiscoveryType,
|
|
|
- FAILED_UnknownError_InServiceDiscovery_responseCode_ServiceDiscoveryType
|
|
|
+ OK_ServiceDiscovery,
|
|
|
+ FAILED_NoServicesOfThisType,
|
|
|
+ FAILED_NoServicesInThisScope,
|
|
|
+ FAILED_NoServicesOfThisTypeScope,
|
|
|
+ FAILED_NoServicesFound,
|
|
|
+ FAILED_UnknownError_InServiceDiscovery
|
|
|
|
|
|
};
|
|
|
|
|
|
enum responseCode_ServicePaymentSelectionType
|
|
|
{
|
|
|
- OK_ServicePaymentSelection_responseCode_ServicePaymentSelectionType,
|
|
|
- FAILED_ServiceSelectionInvalid_responseCode_ServicePaymentSelectionType,
|
|
|
- FAILED_PaymentSelectionInvalid_responseCode_ServicePaymentSelectionType,
|
|
|
- FAILED_UnknownError_InServicePaymentSelection_responseCode_ServicePaymentSelectionType
|
|
|
+ OK_ServicePaymentSelection,
|
|
|
+ FAILED_ServiceSelectionInvalid,
|
|
|
+ FAILED_PaymentSelectionInvalid,
|
|
|
+ FAILED_UnknownError_InServicePaymentSelection
|
|
|
|
|
|
};
|
|
|
|
|
|
enum responseCode_PaymentDetailsType
|
|
|
{
|
|
|
- OK_PaymentDetails_responseCode_PaymentDetailsType,
|
|
|
- FAILED_PaymentDetailsInvalid_responseCode_PaymentDetailsType,
|
|
|
- FAILED_UnknownError_responseCode_PaymentDetailsType
|
|
|
+ OK_PaymentDetails,
|
|
|
+ FAILED_PaymentDetailsInvalid,
|
|
|
+ FAILED_UnknownError
|
|
|
|
|
|
};
|
|
|
|
|
|
-enum chargingModeType
|
|
|
+enum unitMultiplierType
|
|
|
{
|
|
|
- AC_charging_chargingModeType,
|
|
|
- DC_charging_chargingModeType
|
|
|
+ d,
|
|
|
+ c,
|
|
|
+ m,
|
|
|
+ micro,
|
|
|
+ n,
|
|
|
+ p,
|
|
|
+ k,
|
|
|
+ M,
|
|
|
+ G,
|
|
|
+ T,
|
|
|
+ none
|
|
|
|
|
|
};
|
|
|
|
|
|
enum unitSymbolType
|
|
|
{
|
|
|
- A_unitSymbolType,
|
|
|
- deg_unitSymbolType,
|
|
|
- F_unitSymbolType,
|
|
|
- h_unitSymbolType,
|
|
|
- min_unitSymbolType,
|
|
|
- s_unitSymbolType,
|
|
|
- s_1_unitSymbolType,
|
|
|
- V_unitSymbolType,
|
|
|
- V_VAr_unitSymbolType,
|
|
|
- VA_unitSymbolType,
|
|
|
- VAh_unitSymbolType,
|
|
|
- VAr_unitSymbolType,
|
|
|
- VArh_unitSymbolType,
|
|
|
- W_unitSymbolType,
|
|
|
- W_Hz_unitSymbolType,
|
|
|
- W_s_unitSymbolType,
|
|
|
- Wh_unitSymbolType,
|
|
|
- Ah_unitSymbolType,
|
|
|
- J_unitSymbolType
|
|
|
+ A,
|
|
|
+ deg,
|
|
|
+ F,
|
|
|
+ g,
|
|
|
+ h,
|
|
|
+ J,
|
|
|
+ J_s,
|
|
|
+ kg_J,
|
|
|
+ min,
|
|
|
+ N,
|
|
|
+ ohm,
|
|
|
+ s,
|
|
|
+ S,
|
|
|
+ s_1,
|
|
|
+ V,
|
|
|
+ V_VAr,
|
|
|
+ VA,
|
|
|
+ VAh,
|
|
|
+ VAr,
|
|
|
+ VArh,
|
|
|
+ W,
|
|
|
+ W_Hz,
|
|
|
+ W_s,
|
|
|
+ Wh,
|
|
|
+ Ah
|
|
|
+
|
|
|
};
|
|
|
|
|
|
-enum responseCode_ChargeParameterDiscoveryType
|
|
|
+enum responseCode_PowerDiscoveryType
|
|
|
{
|
|
|
- OK_responseCode_ChargeParameterDiscoveryType,
|
|
|
- FAILED_BatteryNotCompatible_responseCode_ChargeParameterDiscoveryType,
|
|
|
- FAILED_UnknownError_responseCode_ChargeParameterDiscoveryType
|
|
|
+ OK_PowerDiscovery,
|
|
|
+ FAILED_UnknownError_InPowerDiscovery
|
|
|
|
|
|
};
|
|
|
|
|
|
enum tariffIDType
|
|
|
{
|
|
|
- Standard_charge_tariffIDType,
|
|
|
- Fast_charge_tariffIDType,
|
|
|
- Green_charge_tariffIDType,
|
|
|
- Grid_friendly_charge_tariffIDType,
|
|
|
- Freely_parameterisable_charge_tariffIDType,
|
|
|
- Charge_under_reserve_tariffIDType
|
|
|
+ Standard_charge,
|
|
|
+ Fast_charge,
|
|
|
+ Green_charge,
|
|
|
+ Grid_friendly_charge,
|
|
|
+ Freely_parameterisable_charge,
|
|
|
+ Charge_under_reserve
|
|
|
|
|
|
};
|
|
|
|
|
|
enum responseCode_LineLockType
|
|
|
{
|
|
|
- OK_LineLock_responseCode_LineLockType,
|
|
|
- FAILED_LineLockNotApplied_responseCode_LineLockType,
|
|
|
- FAILED_UnknownError_InLineLock_responseCode_LineLockType
|
|
|
+ OK_LineLock,
|
|
|
+ FAILED_LineLockNotApplied,
|
|
|
+ FAILED_UnknownError_InLineLock
|
|
|
|
|
|
};
|
|
|
|
|
|
enum responseCode_PowerDeliveryType
|
|
|
{
|
|
|
- OK_PowerDelivery_responseCode_PowerDeliveryType,
|
|
|
- FAILED_PowerDeliveryNotApplied_responseCode_PowerDeliveryType,
|
|
|
- FAILED_TariffSelectionInvalid_responseCode_PowerDeliveryType,
|
|
|
- FAILED_ChargingProfileInvalid_responseCode_PowerDeliveryType,
|
|
|
- FAILED_UnknownError_InPowerDelivery_responseCode_PowerDeliveryType
|
|
|
+ OK_PowerDelivery,
|
|
|
+ FAILED_PowerDeliveryNotApplied,
|
|
|
+ FAILED_TariffSelectionInvalid,
|
|
|
+ FAILED_ChargingProfileInvalid,
|
|
|
+ FAILED_UnknownError_InPowerDelivery
|
|
|
|
|
|
};
|
|
|
|
|
|
enum responseCode_MeteringStatusType
|
|
|
{
|
|
|
- OK_MeteringStatus_responseCode_MeteringStatusType,
|
|
|
- FAILED_UnknownError_InMeteringStatus_responseCode_MeteringStatusType
|
|
|
+ OK_MeteringStatus,
|
|
|
+ FAILED_UnknownError_InMeteringStatus
|
|
|
|
|
|
};
|
|
|
|
|
|
enum responseCode_MeteringReceiptType
|
|
|
{
|
|
|
- OK_MeteringReceipt_responseCode_MeteringReceiptType,
|
|
|
- FAILED_UnknownError_MeteringReceipt_responseCode_MeteringReceiptType
|
|
|
+ OK_MeteringReceipt,
|
|
|
+ FAILED_UnknownError_MeteringReceipt
|
|
|
|
|
|
};
|
|
|
|
|
|
-enum responseCode_CableCheckType
|
|
|
-{
|
|
|
- OK_responseCode_CableCheckType,
|
|
|
- FAILED_UnknownError_responseCode_CableCheckType
|
|
|
|
|
|
-};
|
|
|
-
|
|
|
-enum responseCode_PreChargeType
|
|
|
-{
|
|
|
- OK_responseCode_PreChargeType,
|
|
|
- FAILED_UnknownError_responseCode_PreChargeType
|
|
|
|
|
|
-};
|
|
|
|
|
|
-enum responseCode_CurrentDemandType
|
|
|
+struct arraylen_SessionInformationType_SessionID
|
|
|
{
|
|
|
- OK_responseCode_CurrentDemandType,
|
|
|
- FAILED_UnknownError_responseCode_CurrentDemandType
|
|
|
-
|
|
|
-};
|
|
|
+ size_t data;
|
|
|
|
|
|
-enum responseCode_WeldingDetectionType
|
|
|
-{
|
|
|
- OK_responseCode_WeldingDetectionType,
|
|
|
- FAILED_UnknownError_responseCode_WeldingDetectionType
|
|
|
|
|
|
-};
|
|
|
+};
|
|
|
|
|
|
-enum responseCode_TerminateChargingType
|
|
|
+struct SessionInformationType_SessionID
|
|
|
{
|
|
|
- OK_responseCode_TerminateChargingType,
|
|
|
- FAILED_UnknownError_responseCode_TerminateChargingType
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-
|
|
|
+ uint8_t data[8];
|
|
|
+ struct arraylen_SessionInformationType_SessionID arraylen;
|
|
|
|
|
|
+};
|
|
|
|
|
|
-struct arraylen_sessionIDType
|
|
|
+struct arraylen_SessionInformationType_ServiceSessionID
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct sessionIDType
|
|
|
+struct SessionInformationType_ServiceSessionID
|
|
|
{
|
|
|
uint8_t data[8];
|
|
|
- struct arraylen_sessionIDType arraylen;
|
|
|
+ struct arraylen_SessionInformationType_ServiceSessionID arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
@@ -246,25 +240,25 @@ struct selection_SessionInformationType
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_protocolVersionType
|
|
|
+struct arraylen_SessionInformationType_ProtocolVersion
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct protocolVersionType
|
|
|
+struct SessionInformationType_ProtocolVersion
|
|
|
{
|
|
|
- uint32_t data[5];
|
|
|
- struct arraylen_protocolVersionType arraylen;
|
|
|
+ uint32_t data[256];
|
|
|
+ struct arraylen_SessionInformationType_ProtocolVersion arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
struct SessionInformationType
|
|
|
{
|
|
|
- struct sessionIDType SessionID;
|
|
|
- struct sessionIDType ServiceSessionID;
|
|
|
- struct protocolVersionType ProtocolVersion;
|
|
|
+ struct SessionInformationType_SessionID SessionID;
|
|
|
+ struct SessionInformationType_ServiceSessionID ServiceSessionID;
|
|
|
+ struct SessionInformationType_ProtocolVersion ProtocolVersion;
|
|
|
struct selection_SessionInformationType isused;
|
|
|
|
|
|
};
|
|
|
@@ -278,17 +272,17 @@ struct selection_NotificationType
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_service_string
|
|
|
+struct arraylen_NotificationType_FaultMsg
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct service_string
|
|
|
+struct NotificationType_FaultMsg
|
|
|
{
|
|
|
uint32_t data[256];
|
|
|
- struct arraylen_service_string arraylen;
|
|
|
+ struct arraylen_NotificationType_FaultMsg arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
@@ -302,7 +296,7 @@ struct EventListType
|
|
|
struct NotificationType
|
|
|
{
|
|
|
enum faultCodeType FaultCode;
|
|
|
- struct service_string FaultMsg;
|
|
|
+ struct NotificationType_FaultMsg FaultMsg;
|
|
|
struct EventListType EventList;
|
|
|
struct selection_NotificationType isused;
|
|
|
|
|
|
@@ -323,17 +317,17 @@ struct HeaderType
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_pevIDType
|
|
|
+struct arraylen_SessionSetupReqType_PEVID
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct pevIDType
|
|
|
+struct SessionSetupReqType_PEVID
|
|
|
{
|
|
|
uint32_t data[32];
|
|
|
- struct arraylen_pevIDType arraylen;
|
|
|
+ struct arraylen_SessionSetupReqType_PEVID arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
@@ -348,14 +342,13 @@ struct PEVStatusType
|
|
|
{
|
|
|
int ConnectorLocked;
|
|
|
int ChargerStandby;
|
|
|
- int ReadyToCharge;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
struct SessionSetupReqType
|
|
|
{
|
|
|
- struct pevIDType PEVID;
|
|
|
+ struct SessionSetupReqType_PEVID PEVID;
|
|
|
struct PEVStatusType PEVStatus;
|
|
|
struct selection_SessionSetupReqType isused;
|
|
|
|
|
|
@@ -371,8 +364,8 @@ struct selection_BodyType
|
|
|
unsigned int ServicePaymentSelectionRes:1;
|
|
|
unsigned int PaymentDetailsReq:1;
|
|
|
unsigned int PaymentDetailsRes:1;
|
|
|
- unsigned int ChargeParameterDiscoveryReq:1;
|
|
|
- unsigned int ChargeParameterDiscoveryRes:1;
|
|
|
+ unsigned int PowerDiscoveryReq:1;
|
|
|
+ unsigned int PowerDiscoveryRes:1;
|
|
|
unsigned int LineLockReq:1;
|
|
|
unsigned int LineLockRes:1;
|
|
|
unsigned int PowerDeliveryReq:1;
|
|
|
@@ -381,31 +374,21 @@ struct selection_BodyType
|
|
|
unsigned int MeteringStatusRes:1;
|
|
|
unsigned int MeteringReceiptReq:1;
|
|
|
unsigned int MeteringReceiptRes:1;
|
|
|
- unsigned int CableCheckReq:1;
|
|
|
- unsigned int CableCheckRes:1;
|
|
|
- unsigned int PreChargeReq:1;
|
|
|
- unsigned int PreChargeRes:1;
|
|
|
- unsigned int CurrentDemandReq:1;
|
|
|
- unsigned int CurrentDemandRes:1;
|
|
|
- unsigned int WeldingDetectionReq:1;
|
|
|
- unsigned int WeldingDetectionRes:1;
|
|
|
- unsigned int TerminateChargingReq:1;
|
|
|
- unsigned int TerminateChargingRes:1;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_evseIDType
|
|
|
+struct arraylen_SessionSetupResType_EVSEID
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct evseIDType
|
|
|
+struct SessionSetupResType_EVSEID
|
|
|
{
|
|
|
uint8_t data[32];
|
|
|
- struct arraylen_evseIDType arraylen;
|
|
|
+ struct arraylen_SessionSetupResType_EVSEID arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
@@ -417,9 +400,6 @@ struct EVSEStatusType
|
|
|
int PowerSwitchClosed;
|
|
|
int RCD;
|
|
|
int32_t ShutDownTime;
|
|
|
- int ChargerStandby;
|
|
|
- int EVSEMalfunction;
|
|
|
- int StopCharging;
|
|
|
|
|
|
|
|
|
};
|
|
|
@@ -427,7 +407,7 @@ struct EVSEStatusType
|
|
|
struct SessionSetupResType
|
|
|
{
|
|
|
enum responseCode_SessionSetupType ResponseCode;
|
|
|
- struct evseIDType EVSEID;
|
|
|
+ struct SessionSetupResType_EVSEID EVSEID;
|
|
|
struct EVSEStatusType EVSEStatus;
|
|
|
int32_t TCurrent;
|
|
|
|
|
|
@@ -442,53 +422,53 @@ struct selection_ServiceDiscoveryReqType
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_serviceScopeType
|
|
|
+struct arraylen_ServiceDiscoveryReqType_ServiceScope
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct serviceScopeType
|
|
|
+struct ServiceDiscoveryReqType_ServiceScope
|
|
|
{
|
|
|
- uint32_t data[20];
|
|
|
- struct arraylen_serviceScopeType arraylen;
|
|
|
+ uint32_t data[255];
|
|
|
+ struct arraylen_ServiceDiscoveryReqType_ServiceScope arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
struct ServiceDiscoveryReqType
|
|
|
{
|
|
|
enum serviceTypeType ServiceType;
|
|
|
- struct serviceScopeType ServiceScope;
|
|
|
+ struct ServiceDiscoveryReqType_ServiceScope ServiceScope;
|
|
|
struct selection_ServiceDiscoveryReqType isused;
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_serviceIDType
|
|
|
+struct arraylen_ServiceDescriptionType_ServiceID
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct serviceIDType
|
|
|
+struct ServiceDescriptionType_ServiceID
|
|
|
{
|
|
|
uint8_t data[8];
|
|
|
- struct arraylen_serviceIDType arraylen;
|
|
|
+ struct arraylen_ServiceDescriptionType_ServiceID arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_serviceNameType
|
|
|
+struct arraylen_ServiceDescriptionType_ServiceName
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct serviceNameType
|
|
|
+struct ServiceDescriptionType_ServiceName
|
|
|
{
|
|
|
- uint32_t data[20];
|
|
|
- struct arraylen_serviceNameType arraylen;
|
|
|
+ uint32_t data[64];
|
|
|
+ struct arraylen_ServiceDescriptionType_ServiceName arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
@@ -501,12 +481,26 @@ struct selection_ServiceDescriptionType
|
|
|
|
|
|
};
|
|
|
|
|
|
+struct arraylen_ServiceDescriptionType_ServiceScope
|
|
|
+{
|
|
|
+ size_t data;
|
|
|
+
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+struct ServiceDescriptionType_ServiceScope
|
|
|
+{
|
|
|
+ uint32_t data[255];
|
|
|
+ struct arraylen_ServiceDescriptionType_ServiceScope arraylen;
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
struct ServiceDescriptionType
|
|
|
{
|
|
|
- struct serviceIDType ServiceID;
|
|
|
- struct serviceNameType ServiceName;
|
|
|
+ struct ServiceDescriptionType_ServiceID ServiceID;
|
|
|
+ struct ServiceDescriptionType_ServiceName ServiceName;
|
|
|
enum serviceTypeType ServiceType;
|
|
|
- struct serviceScopeType ServiceScope;
|
|
|
+ struct ServiceDescriptionType_ServiceScope ServiceScope;
|
|
|
struct selection_ServiceDescriptionType isused;
|
|
|
|
|
|
};
|
|
|
@@ -540,9 +534,45 @@ struct ServiceDiscoveryResType
|
|
|
|
|
|
};
|
|
|
|
|
|
+struct arraylen_ServicePaymentSelectionReqType_PEVPubKey
|
|
|
+{
|
|
|
+ size_t data;
|
|
|
+
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+struct ServicePaymentSelectionReqType_PEVPubKey
|
|
|
+{
|
|
|
+ uint8_t data[64];
|
|
|
+ struct arraylen_ServicePaymentSelectionReqType_PEVPubKey arraylen;
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
struct ServicePaymentSelectionReqType
|
|
|
{
|
|
|
struct ServiceListType ServiceList;
|
|
|
+ struct ServicePaymentSelectionReqType_PEVPubKey PEVPubKey;
|
|
|
+
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+struct arraylen_ServicePaymentSelectionResType_MeteringAuthPubKey
|
|
|
+{
|
|
|
+ size_t data;
|
|
|
+
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+struct ServicePaymentSelectionResType_MeteringAuthPubKey
|
|
|
+{
|
|
|
+ uint8_t data[64];
|
|
|
+ struct arraylen_ServicePaymentSelectionResType_MeteringAuthPubKey arraylen;
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+struct selection_ServicePaymentSelectionResType
|
|
|
+{
|
|
|
+ unsigned int MeteringAuthPubKey:1;
|
|
|
|
|
|
|
|
|
};
|
|
|
@@ -550,27 +580,28 @@ struct ServicePaymentSelectionReqType
|
|
|
struct ServicePaymentSelectionResType
|
|
|
{
|
|
|
enum responseCode_ServicePaymentSelectionType ResponseCode;
|
|
|
-
|
|
|
+ struct ServicePaymentSelectionResType_MeteringAuthPubKey MeteringAuthPubKey;
|
|
|
+ struct selection_ServicePaymentSelectionResType isused;
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_contractIDType
|
|
|
+struct arraylen_PaymentDetailsReqType_ContractID
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct contractIDType
|
|
|
+struct PaymentDetailsReqType_ContractID
|
|
|
{
|
|
|
uint32_t data[128];
|
|
|
- struct arraylen_contractIDType arraylen;
|
|
|
+ struct arraylen_PaymentDetailsReqType_ContractID arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
struct PaymentDetailsReqType
|
|
|
{
|
|
|
- struct contractIDType ContractID;
|
|
|
+ struct PaymentDetailsReqType_ContractID ContractID;
|
|
|
|
|
|
|
|
|
};
|
|
|
@@ -578,51 +609,47 @@ struct PaymentDetailsReqType
|
|
|
struct PaymentDetailsResType
|
|
|
{
|
|
|
enum responseCode_PaymentDetailsType ResponseCode;
|
|
|
- int32_t TCurrent;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
struct FloatingValueType
|
|
|
{
|
|
|
- int16_t Multiplier;
|
|
|
+ enum unitMultiplierType Multiplier;
|
|
|
enum unitSymbolType Unit;
|
|
|
int32_t Value;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct ChargeParameterDiscoveryReqType
|
|
|
+struct PowerDiscoveryReqType
|
|
|
{
|
|
|
struct PEVStatusType PEVStatus;
|
|
|
- enum chargingModeType ChargingMode;
|
|
|
int32_t EoC;
|
|
|
struct FloatingValueType EAmount;
|
|
|
struct FloatingValueType PEVMaxPower;
|
|
|
int16_t PEVMaxPhases;
|
|
|
struct FloatingValueType PEVMaxVoltage;
|
|
|
struct FloatingValueType PEVMinVoltage;
|
|
|
- struct FloatingValueType PEVMaxCurrent;
|
|
|
- struct FloatingValueType PEVMinCurrent;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_energyProviderType
|
|
|
+struct arraylen_PowerDiscoveryResType_EnergyProvider
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct energyProviderType
|
|
|
+struct PowerDiscoveryResType_EnergyProvider
|
|
|
{
|
|
|
- uint32_t data[20];
|
|
|
- struct arraylen_energyProviderType arraylen;
|
|
|
+ uint32_t data[256];
|
|
|
+ struct arraylen_PowerDiscoveryResType_EnergyProvider arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct selection_ChargeParameterDiscoveryResType
|
|
|
+struct selection_PowerDiscoveryResType
|
|
|
{
|
|
|
unsigned int EnergyProvider:1;
|
|
|
unsigned int TariffTable:1;
|
|
|
@@ -630,31 +657,31 @@ struct selection_ChargeParameterDiscoveryResType
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_currencyType
|
|
|
+struct arraylen_TariffTableType_Currency
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct currencyType
|
|
|
+struct TariffTableType_Currency
|
|
|
{
|
|
|
uint32_t data[3];
|
|
|
- struct arraylen_currencyType arraylen;
|
|
|
+ struct arraylen_TariffTableType_Currency arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_tariffDescriptionType
|
|
|
+struct arraylen_TariffDescrType_TariffDescription
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct tariffDescriptionType
|
|
|
+struct TariffDescrType_TariffDescription
|
|
|
{
|
|
|
uint32_t data[32];
|
|
|
- struct arraylen_tariffDescriptionType arraylen;
|
|
|
+ struct arraylen_TariffDescrType_TariffDescription arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
@@ -698,7 +725,7 @@ struct TariffEntriesType
|
|
|
struct TariffDescrType
|
|
|
{
|
|
|
enum tariffIDType TariffID;
|
|
|
- struct tariffDescriptionType TariffDescription;
|
|
|
+ struct TariffDescrType_TariffDescription TariffDescription;
|
|
|
struct TariffEntriesType TariffEntries;
|
|
|
struct selection_TariffDescrType isused;
|
|
|
|
|
|
@@ -713,24 +740,22 @@ struct arraylen_TariffTableType
|
|
|
|
|
|
struct TariffTableType
|
|
|
{
|
|
|
- struct currencyType Currency;
|
|
|
+ struct TariffTableType_Currency Currency;
|
|
|
struct TariffDescrType Tariff[6];
|
|
|
struct arraylen_TariffTableType arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct ChargeParameterDiscoveryResType
|
|
|
+struct PowerDiscoveryResType
|
|
|
{
|
|
|
- enum responseCode_ChargeParameterDiscoveryType ResponseCode;
|
|
|
+ enum responseCode_PowerDiscoveryType ResponseCode;
|
|
|
struct EVSEStatusType EVSEStatus;
|
|
|
- struct FloatingValueType EVSEMaxVoltage;
|
|
|
- struct FloatingValueType EVSEMinVoltage;
|
|
|
- struct FloatingValueType EVSEMaxCurrent;
|
|
|
- struct FloatingValueType EVSEMinCurrent;
|
|
|
+ struct FloatingValueType EVSEVoltage;
|
|
|
+ struct FloatingValueType EVSEIMax;
|
|
|
int16_t EVSEMaxPhases;
|
|
|
- struct energyProviderType EnergyProvider;
|
|
|
+ struct PowerDiscoveryResType_EnergyProvider EnergyProvider;
|
|
|
struct TariffTableType TariffTable;
|
|
|
- struct selection_ChargeParameterDiscoveryResType isused;
|
|
|
+ struct selection_PowerDiscoveryResType isused;
|
|
|
|
|
|
};
|
|
|
|
|
|
@@ -753,6 +778,15 @@ struct LineLockResType
|
|
|
struct selection_PowerDeliveryReqType
|
|
|
{
|
|
|
unsigned int Tariff:1;
|
|
|
+ unsigned int ChargingProfile:1;
|
|
|
+
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+struct ChargingProfileType
|
|
|
+{
|
|
|
+ int32_t ChargingProfileEntryStart;
|
|
|
+ struct FloatingValueType ChargingProfileEntryMaxPower;
|
|
|
|
|
|
|
|
|
};
|
|
|
@@ -762,6 +796,7 @@ struct PowerDeliveryReqType
|
|
|
struct PEVStatusType PEVStatus;
|
|
|
int ReqSwitchStatus;
|
|
|
enum tariffIDType Tariff;
|
|
|
+ struct ChargingProfileType ChargingProfile;
|
|
|
struct selection_PowerDeliveryReqType isused;
|
|
|
|
|
|
};
|
|
|
@@ -769,7 +804,6 @@ struct PowerDeliveryReqType
|
|
|
struct PowerDeliveryResType
|
|
|
{
|
|
|
enum responseCode_PowerDeliveryType ResponseCode;
|
|
|
- struct EVSEStatusType EVSEStatus;
|
|
|
|
|
|
|
|
|
};
|
|
|
@@ -782,6 +816,20 @@ struct MeteringStatusReqType
|
|
|
|
|
|
};
|
|
|
|
|
|
+struct arraylen_MeteringStatusResType_EVSEID
|
|
|
+{
|
|
|
+ size_t data;
|
|
|
+
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+struct MeteringStatusResType_EVSEID
|
|
|
+{
|
|
|
+ uint8_t data[32];
|
|
|
+ struct arraylen_MeteringStatusResType_EVSEID arraylen;
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
struct selection_MeteringStatusResType
|
|
|
{
|
|
|
unsigned int PCurrent:1;
|
|
|
@@ -790,17 +838,17 @@ struct selection_MeteringStatusResType
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct arraylen_meterIDType
|
|
|
+struct arraylen_MeterInfoType_MeterID
|
|
|
{
|
|
|
size_t data;
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
-struct meterIDType
|
|
|
+struct MeterInfoType_MeterID
|
|
|
{
|
|
|
uint32_t data[32];
|
|
|
- struct arraylen_meterIDType arraylen;
|
|
|
+ struct arraylen_MeterInfoType_MeterID arraylen;
|
|
|
|
|
|
};
|
|
|
|
|
|
@@ -816,7 +864,7 @@ struct selection_MeterInfoType
|
|
|
|
|
|
struct MeterInfoType
|
|
|
{
|
|
|
- struct meterIDType MeterID;
|
|
|
+ struct MeterInfoType_MeterID MeterID;
|
|
|
struct FloatingValueType MeterReading;
|
|
|
int16_t MeterStatus;
|
|
|
int32_t TMeter;
|
|
|
@@ -827,7 +875,7 @@ struct MeterInfoType
|
|
|
struct MeteringStatusResType
|
|
|
{
|
|
|
enum responseCode_MeteringStatusType ResponseCode;
|
|
|
- struct evseIDType EVSEID;
|
|
|
+ struct MeteringStatusResType_EVSEID EVSEID;
|
|
|
struct EVSEStatusType EVSEStatus;
|
|
|
int32_t TCurrent;
|
|
|
struct FloatingValueType EVSEMaxPower;
|
|
|
@@ -837,6 +885,20 @@ struct MeteringStatusResType
|
|
|
|
|
|
};
|
|
|
|
|
|
+struct arraylen_MeteringReceiptReqType_PEVID
|
|
|
+{
|
|
|
+ size_t data;
|
|
|
+
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+struct MeteringReceiptReqType_PEVID
|
|
|
+{
|
|
|
+ uint32_t data[32];
|
|
|
+ struct arraylen_MeteringReceiptReqType_PEVID arraylen;
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
struct selection_MeteringReceiptReqType
|
|
|
{
|
|
|
unsigned int PEVID:1;
|
|
|
@@ -847,7 +909,7 @@ struct selection_MeteringReceiptReqType
|
|
|
|
|
|
struct MeteringReceiptReqType
|
|
|
{
|
|
|
- struct pevIDType PEVID;
|
|
|
+ struct MeteringReceiptReqType_PEVID PEVID;
|
|
|
struct PEVStatusType PEVStatus;
|
|
|
int32_t TCurrent;
|
|
|
enum tariffIDType Tariff;
|
|
|
@@ -861,143 +923,44 @@ struct MeteringReceiptResType
|
|
|
enum responseCode_MeteringReceiptType ResponseCode;
|
|
|
|
|
|
|
|
|
-};
|
|
|
-
|
|
|
-struct CableCheckReqType
|
|
|
-{
|
|
|
- struct PEVStatusType PEVStatus;
|
|
|
-
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-struct CableCheckResType
|
|
|
-{
|
|
|
- enum responseCode_CableCheckType ResponseCode;
|
|
|
- struct EVSEStatusType EVSEStatus;
|
|
|
-
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-struct PreChargeReqType
|
|
|
-{
|
|
|
- struct PEVStatusType PEVStatus;
|
|
|
- struct FloatingValueType PEVTargetVoltage;
|
|
|
- struct FloatingValueType PEVDemandCurrent;
|
|
|
- struct FloatingValueType VoltageDifferential;
|
|
|
-
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-struct PreChargeResType
|
|
|
-{
|
|
|
- enum responseCode_PreChargeType ResponseCode;
|
|
|
- struct EVSEStatusType EVSEStatus;
|
|
|
- struct FloatingValueType EVSEPresentVoltage;
|
|
|
-
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-struct CurrentDemandReqType
|
|
|
-{
|
|
|
- struct PEVStatusType PEVStatus;
|
|
|
- struct FloatingValueType PEVTargetVoltage;
|
|
|
- struct FloatingValueType PEVDemandCurrent;
|
|
|
- struct FloatingValueType CurrentDifferential;
|
|
|
- struct FloatingValueType VoltageDifferential;
|
|
|
-
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-struct CurrentDemandResType
|
|
|
-{
|
|
|
- enum responseCode_CurrentDemandType ResponseCode;
|
|
|
- struct EVSEStatusType EVSEStatus;
|
|
|
- struct FloatingValueType EVSEPresentVoltage;
|
|
|
- struct FloatingValueType EVSEPresentCurrent;
|
|
|
-
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-struct WeldingDetectionReqType
|
|
|
-{
|
|
|
- struct PEVStatusType PEVStatus;
|
|
|
-
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-struct WeldingDetectionResType
|
|
|
-{
|
|
|
- enum responseCode_WeldingDetectionType ResponseCode;
|
|
|
- struct EVSEStatusType EVSEStatus;
|
|
|
- struct FloatingValueType EVSEPresentVoltage;
|
|
|
-
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-struct TerminateChargingReqType
|
|
|
-{
|
|
|
- struct PEVStatusType PEVStatus;
|
|
|
-
|
|
|
-
|
|
|
-};
|
|
|
-
|
|
|
-struct TerminateChargingResType
|
|
|
-{
|
|
|
- enum responseCode_TerminateChargingType ResponseCode;
|
|
|
- struct EVSEStatusType EVSEStatus;
|
|
|
- struct FloatingValueType EVSEPresentVoltage;
|
|
|
-
|
|
|
-
|
|
|
};
|
|
|
|
|
|
struct BodyType
|
|
|
{
|
|
|
- struct SessionSetupReqType* SessionSetupReq;
|
|
|
- struct SessionSetupResType* SessionSetupRes;
|
|
|
- struct ServiceDiscoveryReqType* ServiceDiscoveryReq;
|
|
|
- struct ServiceDiscoveryResType* ServiceDiscoveryRes;
|
|
|
- struct ServicePaymentSelectionReqType* ServicePaymentSelectionReq;
|
|
|
- struct ServicePaymentSelectionResType* ServicePaymentSelectionRes;
|
|
|
- struct PaymentDetailsReqType* PaymentDetailsReq;
|
|
|
- struct PaymentDetailsResType* PaymentDetailsRes;
|
|
|
- struct ChargeParameterDiscoveryReqType* ChargeParameterDiscoveryReq;
|
|
|
- struct ChargeParameterDiscoveryResType* ChargeParameterDiscoveryRes;
|
|
|
- struct LineLockReqType* LineLockReq;
|
|
|
- struct LineLockResType* LineLockRes;
|
|
|
- struct PowerDeliveryReqType* PowerDeliveryReq;
|
|
|
- struct PowerDeliveryResType* PowerDeliveryRes;
|
|
|
- struct MeteringStatusReqType* MeteringStatusReq;
|
|
|
- struct MeteringStatusResType* MeteringStatusRes;
|
|
|
- struct MeteringReceiptReqType* MeteringReceiptReq;
|
|
|
- struct MeteringReceiptResType* MeteringReceiptRes;
|
|
|
- struct CableCheckReqType* CableCheckReq;
|
|
|
- struct CableCheckResType* CableCheckRes;
|
|
|
- struct PreChargeReqType* PreChargeReq;
|
|
|
- struct PreChargeResType* PreChargeRes;
|
|
|
- struct CurrentDemandReqType* CurrentDemandReq;
|
|
|
- struct CurrentDemandResType* CurrentDemandRes;
|
|
|
- struct WeldingDetectionReqType* WeldingDetectionReq;
|
|
|
- struct WeldingDetectionResType* WeldingDetectionRes;
|
|
|
- struct TerminateChargingReqType* TerminateChargingReq;
|
|
|
- struct TerminateChargingResType* TerminateChargingRes;
|
|
|
+ struct SessionSetupReqType SessionSetupReq;
|
|
|
+ struct SessionSetupResType SessionSetupRes;
|
|
|
+ struct ServiceDiscoveryReqType ServiceDiscoveryReq;
|
|
|
+ struct ServiceDiscoveryResType ServiceDiscoveryRes;
|
|
|
+ struct ServicePaymentSelectionReqType ServicePaymentSelectionReq;
|
|
|
+ struct ServicePaymentSelectionResType ServicePaymentSelectionRes;
|
|
|
+ struct PaymentDetailsReqType PaymentDetailsReq;
|
|
|
+ struct PaymentDetailsResType PaymentDetailsRes;
|
|
|
+ struct PowerDiscoveryReqType PowerDiscoveryReq;
|
|
|
+ struct PowerDiscoveryResType PowerDiscoveryRes;
|
|
|
+ struct LineLockReqType LineLockReq;
|
|
|
+ struct LineLockResType LineLockRes;
|
|
|
+ struct PowerDeliveryReqType PowerDeliveryReq;
|
|
|
+ struct PowerDeliveryResType PowerDeliveryRes;
|
|
|
+ struct MeteringStatusReqType MeteringStatusReq;
|
|
|
+ struct MeteringStatusResType MeteringStatusRes;
|
|
|
+ struct MeteringReceiptReqType MeteringReceiptReq;
|
|
|
+ struct MeteringReceiptResType MeteringReceiptRes;
|
|
|
struct selection_BodyType isused;
|
|
|
|
|
|
};
|
|
|
|
|
|
struct AnonType_V2G_Message
|
|
|
{
|
|
|
- struct HeaderType* Header;
|
|
|
+ struct HeaderType Header;
|
|
|
struct BodyType Body;
|
|
|
|
|
|
|
|
|
};
|
|
|
-
|
|
|
-struct EXIDocumentType
|
|
|
-{
|
|
|
- struct AnonType_V2G_Message V2G_Message;
|
|
|
+
|
|
|
+/* init method of the V2G message */
|
|
|
+void init_AnonType_V2G_Message(struct AnonType_V2G_Message* v2gMsg);
|
|
|
|
|
|
|
|
|
-};
|
|
|
|
|
|
#endif
|
|
|
|