nRF5 SDK for Mesh v4.1.0
Macros | Functions
Persistence module for the Light LC Setup Server model related states

This module provides APIs for handling persistence of the Light LC Setup Server model related states. More...

Macros

#define LIGHT_LC_MODE_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x01))
 
#define LIGHT_LC_OCC_MODE_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x02))
 
#define LIGHT_LC_LIGHT_ONOFF_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x03))
 
#define LIGHT_LC_PR_LUXLEVEL_ON_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x04))
 
#define LIGHT_LC_PR_LUXLEVEL_PROLONG_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x05))
 
#define LIGHT_LC_PR_LUXLEVEL_STANDBY_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x06))
 
#define LIGHT_LC_PR_LIGHTNESS_ON_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x07))
 
#define LIGHT_LC_PR_LIGHTNESS_PROLONG_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x08))
 
#define LIGHT_LC_PR_LIGHTNESS_STANDBY_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x09))
 
#define LIGHT_LC_PR_REGULATOR_ACCURACY_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x0A))
 
#define LIGHT_LC_PR_REGULATOR_KID_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x0B))
 
#define LIGHT_LC_PR_REGULATOR_KIU_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x0C))
 
#define LIGHT_LC_PR_REGULATOR_KPD_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x0D))
 
#define LIGHT_LC_PR_REGULATOR_KPU_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x0E))
 
#define LIGHT_LC_PR_TIME_FADE_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x0F))
 
#define LIGHT_LC_PR_TIME_FADE_ON_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x10))
 
#define LIGHT_LC_PR_TIME_FADE_STANDBY_AUTO_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x11))
 
#define LIGHT_LC_PR_TIME_FADE_STANDBY_MANUAL_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x12))
 
#define LIGHT_LC_PR_TIME_OCCUPANCY_DELAY_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x13))
 
#define LIGHT_LC_PR_TIME_PROLONG_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x14))
 
#define LIGHT_LC_PR_TIME_RUN_ON_EID_START   (MESH_APP_MODEL_LIGHT_LC_SERVER_ID_START + (LIGHT_LC_SETUP_SERVER_INSTANCES_MAX * 0x15))
 
#define LIGHT_LC_MODE_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_MODE_EID_START)
 Light LC Mode state entry ID.
 
#define LIGHT_LC_OCC_MODE_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_OCC_MODE_EID_START)
 Light LC Occupancy Mode state entry ID.
 
#define LIGHT_LC_LIGHT_ONOFF_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_LIGHT_ONOFF_EID_START)
 Light LC Light OnOff state entry ID.
 
#define LIGHT_LC_PR_LUXLEVEL_ON_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_LUXLEVEL_ON_EID_START)
 Light LC Property LuxLevel On state entry ID.
 
#define LIGHT_LC_PR_LUXLEVEL_PROLONG_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_LUXLEVEL_PROLONG_EID_START)
 Light LC Property LuxLevel Prolong state entry ID.
 
#define LIGHT_LC_PR_LUXLEVEL_STANDBY_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_LUXLEVEL_STANDBY_EID_START)
 Light LC Property LuxLevel Standby state entry ID.
 
#define LIGHT_LC_PR_LIGHTNESS_ON_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_LIGHTNESS_ON_EID_START)
 Light LC Property Lightness On state entry ID.
 
#define LIGHT_LC_PR_LIGHTNESS_PROLONG_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_LIGHTNESS_PROLONG_EID_START)
 Light LC Property Lightness Prolong state entry ID.
 
#define LIGHT_LC_PR_LIGHTNESS_STANDBY_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_LIGHTNESS_STANDBY_EID_START)
 Light LC Property Lightness Standby state entry ID.
 
#define LIGHT_LC_PR_REGULATOR_ACCURACY_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_REGULATOR_ACCURACY_EID_START)
 Light LC Property Regulator Accuracy state entry ID.
 
#define LIGHT_LC_PR_REGULATOR_KID_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_REGULATOR_KID_EID_START)
 Light LC Property Regulator Kid state entry ID.
 
#define LIGHT_LC_PR_REGULATOR_KIU_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_REGULATOR_KIU_EID_START)
 Light LC Property Regulator Kiu state entry ID.
 
#define LIGHT_LC_PR_REGULATOR_KPD_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_REGULATOR_KPD_EID_START)
 Light LC Property Regulator Kpd state entry ID.
 
#define LIGHT_LC_PR_REGULATOR_KPU_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_REGULATOR_KPU_EID_START)
 Light LC Property Regulator Kpu state entry ID.
 
#define LIGHT_LC_PR_TIME_FADE_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_TIME_FADE_EID_START)
 Light LC Property Time Fade state entry ID.
 
#define LIGHT_LC_PR_TIME_FADE_ON_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_TIME_FADE_ON_EID_START)
 Light LC Property Time Fade On state entry ID.
 
#define LIGHT_LC_PR_TIME_FADE_STANDBY_AUTO_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_TIME_FADE_STANDBY_AUTO_EID_START)
 Light LC Property Time Fade Standby Auto state entry ID.
 
#define LIGHT_LC_PR_TIME_FADE_STANDBY_MANUAL_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_TIME_FADE_STANDBY_MANUAL_EID_START)
 Light LC Property Time Fade Standby Manual state entry ID.
 
#define LIGHT_LC_PR_TIME_OCCUPANCY_DELAY_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_TIME_OCCUPANCY_DELAY_EID_START)
 Light LC Property Time Occupancy Delay state entry ID.
 
#define LIGHT_LC_PR_TIME_PROLONG_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_TIME_PROLONG_EID_START)
 Light LC Property Time Prolong state entry ID.
 
#define LIGHT_LC_PR_TIME_RUN_ON_EID   MESH_CONFIG_ENTRY_ID(MESH_OPT_MODEL_FILE_ID, LIGHT_LC_PR_TIME_RUN_ON_EID_START)
 Light LC Property Time Run On state entry ID.
 

Functions

uint32_t light_lc_mc_state_set (uint8_t index, light_lc_state_t lc_state, const void *p_value)
 Set internal LC state variables. More...
 
uint32_t light_lc_mc_state_get (uint8_t index, light_lc_state_t lc_state, void *p_value)
 Get internal LC state variables. More...
 
uint32_t light_lc_mc_open (uint8_t *p_handle)
 Create an instance of the Light LC Setup Server model states and return the corresponding handle. More...
 
void light_lc_mc_clear (void)
 Clear all stored data and reset state contexts to default values.
 
void light_lc_mc_init (void)
 Initialize the Light LC Setup Server persistent memory.
 

Detailed Description

This module provides APIs for handling persistence of the Light LC Setup Server model related states.

Function Documentation

◆ light_lc_mc_state_set()

uint32_t light_lc_mc_state_set ( uint8_t  index,
light_lc_state_t  lc_state,
const void *  p_value 
)

Set internal LC state variables.

Parameters
[in]indexAn index to identify an instance of a state variable.
[in]lc_stateIdentifies the internal Light LC state to set.
[in]p_valuePointer to a buffer of the value to be set.
Return values
NRF_SUCCESSif the set succeeded.
NRF_ERROR_NOT_FOUNDThe given lc state or index is invalid.
NRF_ERROR_INVALID_DATAThe value is invalid.

◆ light_lc_mc_state_get()

uint32_t light_lc_mc_state_get ( uint8_t  index,
light_lc_state_t  lc_state,
void *  p_value 
)

Get internal LC state variables.

Parameters
[in]indexAn index to identify an instance of a state variable.
[in]lc_stateIdentifies the internal Light LC state to set.
[out]p_valuePointer to a buffer to copy the value into. Cannot be NULL.
Return values
NRF_SUCCESSThe entry value was successfully copied into p_value.
NRF_ERROR_NULLA parameter is NULL.
NRF_ERROR_NOT_FOUNDThe given lc state or index is unknown.
NRF_ERROR_INVALID_STATEThe given index is known, but has no data associated with it.

◆ light_lc_mc_open()

uint32_t light_lc_mc_open ( uint8_t *  p_handle)

Create an instance of the Light LC Setup Server model states and return the corresponding handle.

Parameters
[out]p_handlePointer to a buffer to copy the handle into to access internal state instance.
Return values
NRF_SUCCESSThe new instance is successfully created.
NRF_ERROR_NULLA parameter is NULL.
NRF_ERROR_RESOURCESNo more instances can be created. In that case, increase value of LIGHT_LC_SETUP_SERVER_INSTANCES_MAX.

Documentation feedback | Developer Zone | Subscribe | Updated