10#ifndef TR_POWER_CONFIGURATION_SERVER_H
11#define TR_POWER_CONFIGURATION_SERVER_H
14#include "zb_zcl_power_config.h"
26#if defined(TR_POWER_CONFIGURATION_SERVER_PLUGIN_PRINT_ENABLE) && \
27 (TR_POWER_CONFIGURATION_SERVER_PLUGIN_PRINT_ENABLE == 1)
28#define tr_power_configuration_server_printf(...) tr_zcl_printf(__VA_ARGS__)
29#define tr_power_configuration_server_println(...) tr_zcl_println(__VA_ARGS__)
31#define tr_power_configuration_server_printf(...)
32#define tr_power_configuration_server_println(...)
51 zb_uint8_t *new_value,
58 zb_uint32_t batt_alarm_state);
65 zb_uint8_t alarm_code);
80 zb_uint16_t voltage_100mv);
87 zb_uint8_t frequency_hz);
96 zb_uint8_t voltage_100mv);
105 zb_uint8_t percentage_remaining);
111 zb_bool_t mains_power_lost);
113#ifdef TR_POWER_CONFIGURATION_SERVER_BATTERY_LATCHING
void tr_power_configuration_server_unlatch_battery(zb_uint8_t endpoint, tr_power_configuration_server_battery_source_t battery_source)
API to unlatch a low battery condition.
zb_zcl_status_t tr_power_configuration_server_set_mains_voltage(zb_uint8_t endpoint, zb_uint16_t voltage_100mv)
API for setting the mains voltage.
zb_zcl_status_t tr_power_configuration_server_set_battery_percentage_remaining(zb_uint8_t endpoint, tr_power_configuration_server_battery_source_t battery_source, zb_uint8_t percentage_remaining)
API for setting the battery percentage remaining.
void tr_power_configuration_server_set_clear_mains_power_lost(zb_uint8_t endpoint, zb_bool_t mains_power_lost)
API to indicate that mains power has been lost.
zb_zcl_status_t tr_power_configuration_server_set_mains_frequency(zb_uint8_t endpoint, zb_uint8_t frequency_hz)
API for setting the mains frequency.
zb_zcl_status_t tr_power_configuration_server_set_battery_voltage(zb_uint8_t endpoint, tr_power_configuration_server_battery_source_t battery_source, zb_uint8_t voltage_100mv)
API for setting the battery voltage.
void tr_power_configuration_server_battery_alarm_state_changed_cb(zb_uint8_t endpoint, zb_uint32_t batt_alarm_state)
Callback fires when the power configuration server battery alarm state attribute is changes.
zb_bool_t tr_power_configuration_server_pre_alarm_send_cb(zb_uint8_t endpoint, zb_uint8_t alarm_code)
Callback fires when the power configuration server is about to send an alarm.
void tr_power_configuration_server_init_cb(void)
Callback fires when power configuration server cluster is initialized.
void tr_power_configuration_server_write_attr_cb(zb_uint8_t endpoint, zb_uint16_t attr_id, zb_uint8_t *new_value, zb_uint16_t manuf_code)
Callback fires when a power configuration server attribute is about to be written.
Trident application framework include.
zb_uint8_t endpoint
Definition tr_nvram_attr.h:23
zb_uint16_t manuf_code
Definition tr_nvram_attr.h:27
zb_uint16_t attr_id
Definition tr_nvram_attr.h:25
void tr_power_configuration_server_init(void)
tr_power_configuration_server_battery_source_t
Definition tr_power_configuration_server.h:17
@ TR_POWER_CONFIGURATION_BATTERY_SOURCE_1
Definition tr_power_configuration_server.h:18
@ TR_POWER_CONFIGURATION_BATTERY_SOURCE_2
Definition tr_power_configuration_server.h:19
@ TR_POWER_CONFIGURATION_BATTERY_SOURCE_3
Definition tr_power_configuration_server.h:20