Light Lightness Control models
The Light Lightness Control models implement common energy saving behavior for light fixtures by taking control of the Light Lightness Server. While Light Lightness Server instances can be operated directly by dimmers and light switches, these devices are not time-aware, and cannot provide any dynamic behavior without extensive application logic on top. By adding an inactivity timer and a regulator for the ambient light level, the Light Lightness Control models make light fixtures behave dynamically and conserve energy.
The dynamic behavior is implemented by the server, while the client allows the configuration of the server’s parameters.
The Light Lightness Control mesh models also feature their own common types, listed below. For types common to all models, see Bluetooth Mesh models.
Common types
This section lists the types common to the Light Lightness Control mesh models.
include/bluetooth/mesh/light_ctrl.h
- group bt_mesh_light_ctrl
Common types for the Light Lightness Control models.
Enums
-
enum bt_mesh_light_ctrl_prop
Light Lightness Control properties
Values:
-
enumerator BT_MESH_LIGHT_CTRL_PROP_ILLUMINANCE_ON
Target ambient illuminance in the On state.
- Unit: Lux - Encoding: 24 bit unsigned scalar (Resolution: 0.01 lx) - Range: 0 to 167772.13
-
enumerator BT_MESH_LIGHT_CTRL_PROP_ILLUMINANCE_PROLONG
Target ambient illuminance in the Prolong state.
- Unit: Lux - Encoding: 24 bit unsigned scalar (Resolution: 0.01 lx) - Range: 0 to 167772.13
-
enumerator BT_MESH_LIGHT_CTRL_PROP_ILLUMINANCE_STANDBY
Target ambient illuminance in the Standby state.
- Unit: Lux - Encoding: 24 bit unsigned scalar (Resolution: 0.01 lx) - Range: 0 to 167772.13
-
enumerator BT_MESH_LIGHT_CTRL_PROP_LIGHTNESS_ON
Lightness in the On state.
- Unit: Unitless - Encoding: 16 bit unsigned scalar (Resolution: 1) - Range: 0 to 65535
-
enumerator BT_MESH_LIGHT_CTRL_PROP_LIGHTNESS_PROLONG
Lightness in the Prolong state.
- Unit: Unitless - Encoding: 16 bit unsigned scalar (Resolution: 1) - Range: 0 to 65535
-
enumerator BT_MESH_LIGHT_CTRL_PROP_LIGHTNESS_STANDBY
Lightness in the Standby state.
- Unit: Unitless - Encoding: 16 bit unsigned scalar (Resolution: 1) - Range: 0 to 65535
-
enumerator BT_MESH_LIGHT_CTRL_PROP_REG_ACCURACY
Regulator Accuracy.
- Unit: Percent - Encoding: 8 bit unsigned scalar (Resolution: 0.5 %) - Range: 0 to 100.0
-
enumerator BT_MESH_LIGHT_CTRL_PROP_TIME_FADE_PROLONG
Fade time for fading to the Prolong state.
- Unit: Seconds - Encoding: 24 bit unsigned scalar (Resolution: 1 ms) - Range: 0 to 16777.214
-
enumerator BT_MESH_LIGHT_CTRL_PROP_TIME_FADE_ON
Fade time for fading to the On state.
- Unit: Seconds - Encoding: 24 bit unsigned scalar (Resolution: 1 ms) - Range: 0 to 16777.214
-
enumerator BT_MESH_LIGHT_CTRL_PROP_TIME_FADE_STANDBY_AUTO
Fade time for fading to the Standby state (auto mode).
- Unit: Seconds - Encoding: 24 bit unsigned scalar (Resolution: 1 ms) - Range: 0 to 16777.214
-
enumerator BT_MESH_LIGHT_CTRL_PROP_TIME_FADE_STANDBY_MANUAL
Fade time for fading to the Standby state (manual mode).
- Unit: Seconds - Encoding: 24 bit unsigned scalar (Resolution: 1 ms) - Range: 0 to 16777.214
-
enumerator BT_MESH_LIGHT_CTRL_PROP_TIME_OCCUPANCY_DELAY
Delay from Occupancy sensor reports until the light turns on.
- Unit: Seconds - Encoding: 24 bit unsigned scalar (Resolution: 1 ms) - Range: 0 to 16777.214
-
enumerator BT_MESH_LIGHT_CTRL_PROP_TIME_PROLONG
Time to stay in the Prolong state.
* - Unit: Seconds - Encoding: 24 bit unsigned scalar (Resolution: 1 ms) - Range: 0 to 16777.214
-
enumerator BT_MESH_LIGHT_CTRL_PROP_TIME_ON
Time to stay in the On state.
- Unit: Seconds - Encoding: 24 bit unsigned scalar (Resolution: 1 ms) - Range: 0 to 16777.214
-
enumerator BT_MESH_LIGHT_CTRL_PROP_ILLUMINANCE_ON
-
enum bt_mesh_light_ctrl_coeff
Light Control Regulator Coefficients
Values:
-
enumerator BT_MESH_LIGHT_CTRL_COEFF_KID
Regulator downwards integral coefficient (Kid).
- Unit: Unitless - Encoding: 32 bit floating point. - Range: 0 to 1000.0
-
enumerator BT_MESH_LIGHT_CTRL_COEFF_KIU
Regulator upwards integral coefficient (Kiu).
- Unit: Unitless - Encoding: 32 bit floating point. - Range: 0 to 1000.0
-
enumerator BT_MESH_LIGHT_CTRL_COEFF_KPD
Regulator downwards proportional coefficient (Kpd).
- Unit: Unitless - Encoding: 32 bit floating point. - Range: 0 to 1000.0
-
enumerator BT_MESH_LIGHT_CTRL_COEFF_KPU
Regulator upwards proportional coeffient (Kpu).
- Unit: Unitless - Encoding: 32 bit floating point. - Range: 0 to 1000.0
-
enumerator BT_MESH_LIGHT_CTRL_COEFF_KID
Functions
-
static inline const struct bt_mesh_sensor_format *bt_mesh_lc_prop_format_get(uint16_t id)
Get the sensor format for the given Light Lightness Control property ID.
- Parameters:
id – [in] Light Lightness Control property ID.
- Returns:
The associated sensor format, or NULL if the ID is unknown.
-
enum bt_mesh_light_ctrl_prop