Zephyr Project API 4.2.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
ocpp.h File Reference
#include <stdio.h>
#include <zephyr/kernel.h>
#include <zephyr/net/net_ip.h>

Go to the source code of this file.

Data Structures

union  ocpp_io_value
 OCPP user callback notification/request of input/output values union member should be accessed with enum value ocpp_notify_reason correspondingly. More...
 
struct  ocpp_cp_info
 Parameters for ocpp_init information about Charge Point (CP) all are string literal except num_of_con. More...
 
struct  ocpp_cs_info
 Parameters for ocpp_init information about central system (CS) More...
 

Macros

#define CISTR50   50
 Max length of string literals e.g idtag.
 

Typedefs

typedef void * ocpp_session_handle_t
 Parameters opaque session handle for ocpp_* API.
 
typedef int(* ocpp_user_notify_callback_t) (enum ocpp_notify_reason reason, union ocpp_io_value *io, void *user_data)
 Asynchronous event notification callback registered by the application.
 

Enumerations

enum  ocpp_auth_status {
  OCPP_AUTH_INVALID , OCPP_AUTH_ACCEPTED , OCPP_AUTH_BLOCKED , OCPP_AUTH_EXPIRED ,
  OCPP_AUTH_CONCURRENT_TX
}
 OCPP IdTag authorization status in result to ocpp request authorization. More...
 
enum  ocpp_notify_reason { OCPP_USR_GET_METER_VALUE , OCPP_USR_START_CHARGING , OCPP_USR_STOP_CHARGING , OCPP_USR_UNLOCK_CONNECTOR }
 
enum  ocpp_meter_measurand {
  OCPP_OMM_CURRENT_FROM_EV , OCPP_OMM_CURRENT_TO_EV , OCPP_OMM_CURRENT_MAX_OFFERED_TO_EV , OCPP_OMM_ACTIVE_ENERGY_FROM_EV ,
  OCPP_OMM_ACTIVE_ENERGY_TO_EV , OCPP_OMM_REACTIVE_ENERGY_FROM_EV , OCPP_OMM_REACTIVE_ENERGY_TO_EV , OCPP_OMM_ACTIVE_POWER_FROM_EV ,
  OCPP_OMM_ACTIVE_POWER_TO_EV , OCPP_OMM_REACTIVE_POWER_FROM_EV , OCPP_OMM_REACTIVE_POWER_TO_EV , OCPP_OMM_POWERLINE_FREQ ,
  OCPP_OMM_POWER_FACTOR , OCPP_OMM_POWER_MAX_OFFERED_TO_EV , OCPP_OMM_FAN_SPEED , OCPP_OMM_CHARGING_PERCENT ,
  OCPP_OMM_TEMPERATURE , OCPP_OMM_VOLTAGE_AC_RMS , OCPP_OMM_END
}
 OCPP meter readings to be filled on user callback request from library. More...
 

Functions

int ocpp_init (struct ocpp_cp_info *cpi, struct ocpp_cs_info *csi, ocpp_user_notify_callback_t cb, void *user_data)
 OCPP library init.
 
int ocpp_session_open (ocpp_session_handle_t *hndl)
 API to request a new Session.
 
void ocpp_session_close (ocpp_session_handle_t hndl)
 API to close a Session.
 
int ocpp_authorize (ocpp_session_handle_t hndl, char *idtag, enum ocpp_auth_status *status, uint32_t timeout_ms)
 Authorize request call to CS to get validity of idtag.
 
int ocpp_start_transaction (ocpp_session_handle_t hndl, int meter_val, uint8_t conn_id, uint32_t timeout_ms)
 Notify transaction start to CS.
 
int ocpp_stop_transaction (ocpp_session_handle_t hndl, int meter_val, uint32_t timeout_ms)
 Notify transaction stopped to CS.