Coulomb Counter#
API and Callbacks for the Coulomb Counter Component.
Approximates energy consumption by keeping time spent in different device states. This is used for testing.
Modules#
API#
Return the current core mode.
Return the current state of all additive modes.
Return the cumulative energy usage metric since last value reset.
Reset the energy usage metric.
Enumerations#
Macros#
API Documentation#
emberAfPluginCommandCoulombCounterGetCurrentCoreMode#
uint16_t emberAfPluginCommandCoulombCounterGetCurrentCoreMode (void )
Return the current core mode.
N/A |
Returns the current core mode of the system. The core mode is the basis for energy consumption measurements. Each core mode is mutually exclusive.
Returns
the current core mode.
86
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
emberAfPluginCommandCoulombCounterGetAdditiveModesBitfield#
uint16_t emberAfPluginCommandCoulombCounterGetAdditiveModesBitfield (void )
Return the current state of all additive modes.
N/A |
Returns the current state of all additive modes. All bits raised in the bitfield indicate that the state is current 'On'.
Returns
the current additive modes bitfield.
95
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
emberAfPluginCommandCoulombCounterGetEnergyUsage#
uint32_t emberAfPluginCommandCoulombCounterGetEnergyUsage (void )
Return the cumulative energy usage metric since last value reset.
N/A |
Returns the cumulative energy usage metric since last value reset. This value is in the same unit as all other provided values and is persisted until explicitly reset.
Returns
the currently recorded energy usage.
104
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
emberAfPluginCommandCoulombCounterResetEnergyUsage#
void emberAfPluginCommandCoulombCounterResetEnergyUsage (void )
Reset the energy usage metric.
N/A |
Resets the energy usage metric. This calls clears both the volatile and non volatile values.
110
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
Enumeration Documentation#
EmberAfPluginCoulombCounterCoreMode#
EmberAfPluginCoulombCounterCoreMode
Enumerator | |
---|---|
EMBER_AF_PLUGIN_COULOMB_COUNTER_RADIO_MODE_RX_SHIFT | |
EMBER_AF_PLUGIN_COULOMB_COUNTER_RADIO_MODE_TX_SHIFT | |
EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_SLEEP_SHIFT | |
EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_IDLE_SHIFT | |
EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_AWAKE_SHIFT | |
EMBER_AF_PLUGIN_COULOMB_COUNTER_EEPROM_STATE_SHIFT | |
EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_MAX |
37
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
Macro Definition Documentation#
COULOMB_COUNTER_MAX_NB_USER_DEFINED_ADDITIVE_STATES#
#define COULOMB_COUNTER_MAX_NB_USER_DEFINED_ADDITIVE_STATESValue:
(16U)
36
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
EMBER_AF_PLUGIN_COULOMB_COUNTER_RADIO_MODE_RX#
#define EMBER_AF_PLUGIN_COULOMB_COUNTER_RADIO_MODE_RXValue:
(1U << EMBER_AF_PLUGIN_COULOMB_COUNTER_RADIO_MODE_RX_SHIFT)
Radio in Idle state Radio in Receive state
51
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
EMBER_AF_PLUGIN_COULOMB_COUNTER_RADIO_MODE_TX#
#define EMBER_AF_PLUGIN_COULOMB_COUNTER_RADIO_MODE_TXValue:
(1U << EMBER_AF_PLUGIN_COULOMB_COUNTER_RADIO_MODE_TX_SHIFT)
Radio in Transmit state
53
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_SLEEP#
#define EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_SLEEPValue:
(1U << EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_SLEEP_SHIFT)
55
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_IDLE#
#define EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_IDLEValue:
(1U << EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_IDLE_SHIFT)
57
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_AWAKE#
#define EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_AWAKEValue:
(1U << EMBER_AF_PLUGIN_COULOMB_COUNTER_CORE_MODE_AWAKE_SHIFT)
59
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
EMBER_AF_PLUGIN_COULOMB_COUNTER_RADIO_EVENT_MASK#
#define EMBER_AF_PLUGIN_COULOMB_COUNTER_RADIO_EVENT_MASKValue:
(0x03U)
A mask representing all Radio state options <bit1:bit0>
62
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
EMBER_AF_PLUGIN_COULOMB_COUNTER_EM_MODE_MASK#
#define EMBER_AF_PLUGIN_COULOMB_COUNTER_EM_MODE_MASKValue:
(0x1CU)
A mask representing all EM mode options <bit4:bit2>
65
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
EMBER_AF_PLUGIN_COULOMB_COUNTER_EEPROM_MODE_MASK#
#define EMBER_AF_PLUGIN_COULOMB_COUNTER_EEPROM_MODE_MASKValue:
(0x1E0U)
A mask representing all EEPROM mode options <bit8:bit5>
68
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
EMBER_AF_PLUGIN_COULOMB_COUNTER_MASK#
#define EMBER_AF_PLUGIN_COULOMB_COUNTER_MASKValue:
(0xFFFFU)
70
of file app/framework/plugin/coulomb-counter/coulomb-counter.h
EMBER_AF_PLUGIN_COULOMB_COUNTER_USER_DEF_STATES#
#define EMBER_AF_PLUGIN_COULOMB_COUNTER_USER_DEF_STATESValue:
71
of file app/framework/plugin/coulomb-counter/coulomb-counter.h