38#include <sfTk/sfToolkit.h>
41#include <sfTk/sfTkII2C.h>
833 bool begin(sfTkIBus *theBus =
nullptr);
867 bool reset(
bool waitForCompletion =
true);
1022 bool setGPOConfig(
bool controlByHost =
true,
bool pwmOutput =
false,
bool strongDrive =
true,
bool activeHigh =
false);
1117 bool _writeWithRetry(uint8_t regAddress, uint8_t data);
1118 bool _writeWithRetry(uint8_t regAddress, uint16_t data);
1119 bool _readWithRetry(uint8_t regAddress, uint8_t &data);
1120 bool _readWithRetry(uint8_t regAddress, uint16_t &data);
Definition: sfDevCY8CMBR3.h:824
sfe_cy8cmbr3_sensor_id_t getDebugSensorId(void)
Get the current debug sensor Id.
Definition: sfDevCY8CMBR3.cpp:448
bool setAutoThresholdEnable(bool enable=true)
Enable or disable the auto-threshold feature.
Definition: sfDevCY8CMBR3.cpp:572
bool setHysteresisOverride(bool override=false)
Set the hysteresis override. This allows manual control of the hysteresis value.
Definition: sfDevCY8CMBR3.cpp:673
bool _readI2CAddress(uint8_t &i2cAddress)
Read the I2C address of the sensor.
Definition: sfDevCY8CMBR3.cpp:119
bool setGPOToggleEnable(bool enable=false, sfe_cy8cmbr3_gpo_t gpo=GPO_0)
Enable or disable GPO toggle.
Definition: sfDevCY8CMBR3.cpp:955
bool setHysteresis(uint8_t hysteresis=0)
Set the hysteresis value.
Definition: sfDevCY8CMBR3.cpp:693
bool setRefreshInterval(sfe_cy8cmbr3_refresh_interval_t interval=REFRESH_INTERVAL_100MS)
Set the refresh interval for the sensor.
Definition: sfDevCY8CMBR3.cpp:886
bool ledOn(bool ledOn=true, sfe_cy8cmbr3_gpo_t gpo=GPO_0)
Turn on or off the LED.
Definition: sfDevCY8CMBR3.cpp:1145
sfe_cy8cmbr3_reg_gpo_cfg_t getGPOConfig(void)
Get the GPO configuration.
Definition: sfDevCY8CMBR3.cpp:942
uint8_t getNoiseThreshold(void)
Get the noise threshold value.
Definition: sfDevCY8CMBR3.cpp:875
bool setSensitivity(sfe_cy8cmbr3_sensitivity_t sensitivity=CS_SENSITIVITY_500_COUNTS_PER_PF, sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Set sensitivity for the specified sensor Id.
Definition: sfDevCY8CMBR3.cpp:464
bool _setI2CAddress(uint8_t i2cAddress)
Set the I2C address of the sensor.
Definition: sfDevCY8CMBR3.cpp:83
bool setSystemDiagnosticsEnable(bool enable=true)
Enable or disable system diagnostics.
Definition: sfDevCY8CMBR3.cpp:619
uint8_t getBaseThreshold(sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Get the base threshold for the specified sensor Id.
Definition: sfDevCY8CMBR3.cpp:656
bool defaultMoistureSensorInit(void)
Initialize the moisture sensor with default settings.
Definition: sfDevCY8CMBR3.cpp:328
bool setBaseThreshold(uint8_t threshold=128, sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Set the base threshold for the specified sensor Id.
Definition: sfDevCY8CMBR3.cpp:639
uint16_t readRawCount(sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Reads the raw count value from the sensor.
Definition: sfDevCY8CMBR3.cpp:1124
bool saveDefaultConfig(void)
Load the default configuration and save it to non-volatile memory.
Definition: sfDevCY8CMBR3.cpp:1346
uint8_t getGPOData(void)
Get the current GPO data.
Definition: sfDevCY8CMBR3.cpp:994
bool readWithSyncCounter(uint8_t reg, uint8_t &data, uint8_t retries=10)
Reads target register while waiting for the sync counter on either end of the target register to be e...
Definition: sfDevCY8CMBR3.cpp:227
bool setProxEnable(bool enable=false, sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Enable or disable proximity sensing for the specified sensor Id.
Definition: sfDevCY8CMBR3.cpp:543
bool isCtrlCommandComplete(void)
Checks if the last sent control command is complete.
Definition: sfDevCY8CMBR3.cpp:135
bool setGPOConfig(bool controlByHost=true, bool pwmOutput=false, bool strongDrive=true, bool activeHigh=false)
Set the GPO configuration.
Definition: sfDevCY8CMBR3.cpp:922
sfe_cy8cmbr3_sensitivity_t getSensitivity(sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Get sensitivity for the specified sensor Id.
Definition: sfDevCY8CMBR3.cpp:509
bool setNegativeNoiseThresholdOverride(bool override=false)
Set the negative noise threshold override. This allows manual control of the negative noise threshold...
Definition: sfDevCY8CMBR3.cpp:781
uint16_t readDebugDifferenceCount(sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Reads the difference count value from the sensor.
Definition: sfDevCY8CMBR3.cpp:1082
uint8_t getGPOOutputState(void)
Get the current GPO output state.
Definition: sfDevCY8CMBR3.cpp:981
bool sendCtrlCommand(sfe_cy8cmbr3_ctrl_cmd_t command, bool waitForCompletion=true)
Sends a control command to the sensor.
Definition: sfDevCY8CMBR3.cpp:149
uint8_t getLowBaselineReset(void)
Get the low baseline reset value.
Definition: sfDevCY8CMBR3.cpp:770
bool enable(sfe_cy8cmbr3_sensor_id_t sensorId=SID_0, bool enable=true)
Enable or disable sensor by sensor Id.
Definition: sfDevCY8CMBR3.cpp:1007
uint8_t readCapacitancePF(sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Reads the capacitance value in pF from the sensor.
Definition: sfDevCY8CMBR3.cpp:1034
uint16_t getDeviceID(void)
Requests the device ID from the sensor.
Definition: sfDevCY8CMBR3.cpp:50
bool setSPO0Config(sfe_cy8cmbr3_spo_config_t config=SPO_GPO)
Set the SPO0 configuration.
Definition: sfDevCY8CMBR3.cpp:903
uint8_t getHysteresis(void)
Get the hysteresis value.
Definition: sfDevCY8CMBR3.cpp:716
bool saveConfig(void)
Save the current configuration to non-volatile memory.
Definition: sfDevCY8CMBR3.cpp:205
bool setNegativeNoiseThreshold(uint8_t threshold=0)
Set the negative noise threshold value.
Definition: sfDevCY8CMBR3.cpp:800
bool setNoiseThreshold(uint8_t threshold=0)
Set the noise threshold value.
Definition: sfDevCY8CMBR3.cpp:853
uint8_t getNegativeNoiseThreshold(void)
Get the negative noise threshold value.
Definition: sfDevCY8CMBR3.cpp:822
uint8_t getFamilyID(void)
Requests the family ID from the sensor.
Definition: sfDevCY8CMBR3.cpp:64
bool setLowBaselineResetOverride(bool override=false)
Set the low baseline reset override. This allows manual control of the low baseline reset.
Definition: sfDevCY8CMBR3.cpp:727
bool setAutoResetEnable(bool enable=true, sfe_cy8cmbr3_auto_reset_timeout_t timeout=AUTO_RESET_TIMEOUT_5_SECONDS)
Enable or disable the auto-reset feature.
Definition: sfDevCY8CMBR3.cpp:593
void setCommunicationBus(sfTkIBus *theBus)
Sets the communication bus to the specified bus.
Definition: sfDevCY8CMBR3.cpp:78
bool setNoiseThresholdOverride(bool override=false)
Set the noise threshold override. This allows manual control of the noise threshold.
Definition: sfDevCY8CMBR3.cpp:833
uint16_t readDifferenceCount(sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Reads the difference count value from the sensor.
Definition: sfDevCY8CMBR3.cpp:1063
bool setLowBaselineReset(uint8_t baseline=0)
Set the low baseline reset value.
Definition: sfDevCY8CMBR3.cpp:747
sfDevCY8CMBR3()
Definition: sfDevCY8CMBR3.h:826
uint16_t readBaselineCount(sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Reads the baseline count value from the sensor.
Definition: sfDevCY8CMBR3.cpp:1103
bool ledOff(sfe_cy8cmbr3_gpo_t gpo=GPO_0)
Turn off the LED.
Definition: sfDevCY8CMBR3.cpp:1170
bool begin(sfTkIBus *theBus=nullptr)
This method is called to set the communication bus directly and initialize the sensor.
Definition: sfDevCY8CMBR3.cpp:35
bool setSensorId(sfe_cy8cmbr3_sensor_id_t sensorId=SID_0)
Set the sensor Id.
Definition: sfDevCY8CMBR3.cpp:425
bool reset(bool waitForCompletion=true)
Perform a software reset of the sensor.
Definition: sfDevCY8CMBR3.cpp:318
const uint8_t ksfCY8CMBR3RegDiffCnt14
Definition: sfDevCY8CMBR3.h:173
const uint8_t ksfCY8CMBR3RegProxResolution0
Definition: sfDevCY8CMBR3.h:90
const uint8_t ksfCY8CMBR3RegSnsVddShort
Definition: sfDevCY8CMBR3.h:146
const uint8_t ksfCY8CMBR3RegSnsSnsShort
Definition: sfDevCY8CMBR3.h:148
const uint8_t ksfCY8CMBR3RegRefreshCtrl
Definition: sfDevCY8CMBR3.h:118
const uint8_t ksfCY8CMBR3RegSensitivity2
Definition: sfDevCY8CMBR3.h:62
const uint8_t ksfCY8CMBR3RegProxResolution1
Definition: sfDevCY8CMBR3.h:91
const uint8_t ksfCY8CMBR3RegLiftoffSlider2Position
Definition: sfDevCY8CMBR3.h:157
const uint8_t ksfCY8CMBR3RegPwmDutyCycleCfg4
Definition: sfDevCY8CMBR3.h:108
const uint8_t ksfCY8CMBR3RegFingerThreshold15
Definition: sfDevCY8CMBR3.h:79
const uint8_t ksfCY8CMBR3RegProxTouchTh1
Definition: sfDevCY8CMBR3.h:89
const uint8_t ksfCY8CMBR3RegLedOnTime
Definition: sfDevCY8CMBR3.h:100
const uint8_t ksfCY8CMBR3RegFingerThreshold6
Definition: sfDevCY8CMBR3.h:70
const uint8_t ksfCY8CMBR3RegDeviceRev
Definition: sfDevCY8CMBR3.h:142
const uint8_t ksfCY8CMBR3RegLatchedProxStat
Definition: sfDevCY8CMBR3.h:153
const uint8_t ksfCY8CMBR3RegDiffCnt3
Definition: sfDevCY8CMBR3.h:162
const uint8_t ksfCY8CMBR3RegCtrlCmdStatus
Definition: sfDevCY8CMBR3.h:136
const uint8_t kCY8CMBR3DefaultAddr
Definition: sfDevCY8CMBR3.h:45
const uint8_t ksfCY8CMBR3RegSnsGndShort
Definition: sfDevCY8CMBR3.h:147
const uint8_t ksfCY8CMBR3RegPwmDutyCycleCfg5
Definition: sfDevCY8CMBR3.h:109
const uint8_t kCY8CMBR3MinAddr
Definition: sfDevCY8CMBR3.h:46
const uint8_t ksfCY8CMBR3RegProxNt
Definition: sfDevCY8CMBR3.h:95
const uint8_t ksfCY8CMBR3RegProxStat
Definition: sfDevCY8CMBR3.h:152
const uint8_t ksfCY8CMBR3RegDeviceId
Definition: sfDevCY8CMBR3.h:141
const uint8_t ksfCY8CMBR3RegProxCfg2
Definition: sfDevCY8CMBR3.h:87
const uint8_t ksfCY8CMBR3RegDiffCnt5
Definition: sfDevCY8CMBR3.h:164
const uint8_t ksfCY8CMBR3RegGpoCfg
Definition: sfDevCY8CMBR3.h:103
const uint8_t ksfCY8CMBR3RegDeviceCfg3
Definition: sfDevCY8CMBR3.h:116
const uint8_t ksfCY8CMBR3RegCtrlCmdErr
Definition: sfDevCY8CMBR3.h:137
const uint8_t ksfCY8CMBR3RegSliderLbr
Definition: sfDevCY8CMBR3.h:127
const uint8_t ksfCY8CMBR3RegSensorEn
Definition: sfDevCY8CMBR3.h:56
const uint8_t ksfCY8CMBR3RegDeviceCfg1
Definition: sfDevCY8CMBR3.h:114
const uint8_t ksfCY8CMBR3RegFingerThreshold8
Definition: sfDevCY8CMBR3.h:72
const uint8_t ksfCY8CMBR3RegPwmDutyCycleCfg0
Definition: sfDevCY8CMBR3.h:104
const uint8_t kCY8CMBR3MaxAddr
Definition: sfDevCY8CMBR3.h:47
const uint8_t ksfCY8CMBR3RegI2cAddr
Definition: sfDevCY8CMBR3.h:117
const uint8_t ksfCY8CMBR3RegDiffCnt9
Definition: sfDevCY8CMBR3.h:168
const uint8_t ksfCY8CMBR3RegPwmDutyCycleCfg1
Definition: sfDevCY8CMBR3.h:105
const uint8_t ksfCY8CMBR3RegProxLbr
Definition: sfDevCY8CMBR3.h:93
const uint8_t ksfCY8CMBR3RegSlider2Resolution
Definition: sfDevCY8CMBR3.h:125
const uint8_t ksfCY8CMBR3RegLiftoffSlider1Position
Definition: sfDevCY8CMBR3.h:155
sfe_cy8cmbr3_auto_reset_timeout_t
Definition: sfDevCY8CMBR3.h:814
@ AUTO_RESET_TIMEOUT_20_SECONDS
Definition: sfDevCY8CMBR3.h:817
@ AUTO_RESET_TIMEOUT_5_SECONDS
Definition: sfDevCY8CMBR3.h:816
@ AUTO_RESET_TIMEOUT_DISABLED
Definition: sfDevCY8CMBR3.h:815
const uint8_t ksfCY8CMBR3RegBaseThreshold1
Definition: sfDevCY8CMBR3.h:65
const uint8_t ksfCY8CMBR3RegDebugBaseline0
Definition: sfDevCY8CMBR3.h:180
const uint8_t ksfCY8CMBR3RegCalcCrc
Definition: sfDevCY8CMBR3.h:143
const uint8_t ksfCY8CMBR3RegFingerThreshold14
Definition: sfDevCY8CMBR3.h:78
const uint8_t ksfCY8CMBR3RegDiffCnt8
Definition: sfDevCY8CMBR3.h:167
const uint8_t ksfCY8CMBR3RegProxHys
Definition: sfDevCY8CMBR3.h:92
const uint8_t ksfCY8CMBR3RegSlider2Position
Definition: sfDevCY8CMBR3.h:156
const uint8_t ksfCY8CMBR3RegSyncCounter0
Definition: sfDevCY8CMBR3.h:158
const uint8_t ksfCY8CMBR3RegSyncCounter1
Definition: sfDevCY8CMBR3.h:176
const uint8_t ksfCY8CMBR3RegProxEn
Definition: sfDevCY8CMBR3.h:85
sfe_cy8cmbr3_gpo_t
Definition: sfDevCY8CMBR3.h:744
@ GPO_3
Definition: sfDevCY8CMBR3.h:750
@ GPO_5
Definition: sfDevCY8CMBR3.h:752
@ GPO_1
Definition: sfDevCY8CMBR3.h:748
@ GPO_7
Definition: sfDevCY8CMBR3.h:754
@ GPO_0
Definition: sfDevCY8CMBR3.h:747
@ GPO_4
Definition: sfDevCY8CMBR3.h:751
@ GPO_2
Definition: sfDevCY8CMBR3.h:749
@ GPO_6
Definition: sfDevCY8CMBR3.h:753
const uint8_t ksfCY8CMBR3RegPwmDutyCycleCfg7
Definition: sfDevCY8CMBR3.h:111
const uint8_t ksfCY8CMBR3RegCmodShieldTest
Definition: sfDevCY8CMBR3.h:149
const uint8_t ksfCY8CMBR3RegDeviceCfg0
Definition: sfDevCY8CMBR3.h:113
const uint8_t ksfCY8CMBR3RegSensitivity3
Definition: sfDevCY8CMBR3.h:63
const uint8_t ksfCY8CMBR3RegProxTouchTh0
Definition: sfDevCY8CMBR3.h:88
const uint8_t ksfCY8CMBR3RegSliderNt
Definition: sfDevCY8CMBR3.h:129
uint8_t sfe_cy8cmbr3_reg_debug_cp_t
Definition: sfDevCY8CMBR3.h:663
const uint8_t ksfCY8CMBR3RegDiffCnt2
Definition: sfDevCY8CMBR3.h:161
const uint8_t ksfCY8CMBR3RegDiffCnt13
Definition: sfDevCY8CMBR3.h:172
const uint8_t ksfCY8CMBR3RegButtonNt
Definition: sfDevCY8CMBR3.h:84
const uint8_t ksfCY8CMBR3RegConfigCrc
Definition: sfDevCY8CMBR3.h:132
const uint8_t ksfCY8CMBR3RegSyncCounter2
Definition: sfDevCY8CMBR3.h:183
const uint8_t ksfCY8CMBR3RegDeviceCfg2
Definition: sfDevCY8CMBR3.h:115
const uint8_t ksfCY8CMBR3RegBuzzerOnTime
Definition: sfDevCY8CMBR3.h:102
const uint8_t ksfCY8CMBR3RegProxNnt
Definition: sfDevCY8CMBR3.h:94
const uint8_t ksfCY8CMBR3RegFingerThreshold7
Definition: sfDevCY8CMBR3.h:71
const uint8_t kDefaultCY8CMBR3102FamilyID
Definition: sfDevCY8CMBR3.h:50
sfe_cy8cmbr3_refresh_interval_t
Definition: sfDevCY8CMBR3.h:757
@ REFRESH_INTERVAL_500MS
Definition: sfDevCY8CMBR3.h:782
@ REFRESH_INTERVAL_240MS
Definition: sfDevCY8CMBR3.h:769
@ REFRESH_INTERVAL_380MS
Definition: sfDevCY8CMBR3.h:776
@ REFRESH_INTERVAL_200MS
Definition: sfDevCY8CMBR3.h:767
@ REFRESH_INTERVAL_420MS
Definition: sfDevCY8CMBR3.h:778
@ REFRESH_INTERVAL_480MS
Definition: sfDevCY8CMBR3.h:781
@ REFRESH_INTERVAL_180MS
Definition: sfDevCY8CMBR3.h:766
@ REFRESH_INTERVAL_340MS
Definition: sfDevCY8CMBR3.h:774
@ REFRESH_INTERVAL_300MS
Definition: sfDevCY8CMBR3.h:772
@ REFRESH_INTERVAL_280MS
Definition: sfDevCY8CMBR3.h:771
@ REFRESH_INTERVAL_220MS
Definition: sfDevCY8CMBR3.h:768
@ REFRESH_INTERVAL_80MS
Definition: sfDevCY8CMBR3.h:761
@ REFRESH_INTERVAL_140MS
Definition: sfDevCY8CMBR3.h:764
@ REFRESH_INTERVAL_60MS
Definition: sfDevCY8CMBR3.h:760
@ REFRESH_INTERVAL_20MS
Definition: sfDevCY8CMBR3.h:758
@ REFRESH_INTERVAL_40MS
Definition: sfDevCY8CMBR3.h:759
@ REFRESH_INTERVAL_160MS
Definition: sfDevCY8CMBR3.h:765
@ REFRESH_INTERVAL_320MS
Definition: sfDevCY8CMBR3.h:773
@ REFRESH_INTERVAL_120MS
Definition: sfDevCY8CMBR3.h:763
@ REFRESH_INTERVAL_100MS
Definition: sfDevCY8CMBR3.h:762
@ REFRESH_INTERVAL_360MS
Definition: sfDevCY8CMBR3.h:775
@ REFRESH_INTERVAL_460MS
Definition: sfDevCY8CMBR3.h:780
@ REFRESH_INTERVAL_440MS
Definition: sfDevCY8CMBR3.h:779
@ REFRESH_INTERVAL_260MS
Definition: sfDevCY8CMBR3.h:770
@ REFRESH_INTERVAL_400MS
Definition: sfDevCY8CMBR3.h:777
const uint8_t ksfCY8CMBR3RegDiffCnt7
Definition: sfDevCY8CMBR3.h:166
const uint8_t ksfCY8CMBR3RegSystemStatus
Definition: sfDevCY8CMBR3.h:138
const uint8_t ksfCY8CMBR3RegProxNegativeTh1
Definition: sfDevCY8CMBR3.h:99
const uint8_t ksfCY8CMBR3RegTotalWorkingSns
Definition: sfDevCY8CMBR3.h:144
const uint8_t ksfCY8CMBR3RegFingerThreshold13
Definition: sfDevCY8CMBR3.h:77
const uint8_t ksfCY8CMBR3RegSnsCpHigh
Definition: sfDevCY8CMBR3.h:145
const uint8_t ksfCY8CMBR3RegLatchedButtonStat
Definition: sfDevCY8CMBR3.h:151
const uint8_t ksfCY8CMBR3RegSensitivity0
Definition: sfDevCY8CMBR3.h:60
const uint8_t ksfCY8CMBR3RegButtonNnt
Definition: sfDevCY8CMBR3.h:83
const uint8_t ksfCY8CMBR3RegDiffCnt11
Definition: sfDevCY8CMBR3.h:170
const uint8_t ksfCY8CMBR3RegGpoData
Definition: sfDevCY8CMBR3.h:175
const uint8_t ksfCY8CMBR3RegBaseThreshold0
Definition: sfDevCY8CMBR3.h:64
sfe_cy8cmbr3_spo_config_t
Definition: sfDevCY8CMBR3.h:805
@ SPO_DISABLED
Definition: sfDevCY8CMBR3.h:806
@ SPO_SHIELD_ELEC
Definition: sfDevCY8CMBR3.h:808
@ SPO_HOST_INT
Definition: sfDevCY8CMBR3.h:810
@ SPO_CAP_SENSE
Definition: sfDevCY8CMBR3.h:807
@ SPO_GPO
Definition: sfDevCY8CMBR3.h:811
@ SPO_BUZZER
Definition: sfDevCY8CMBR3.h:809
const uint8_t ksfCY8CMBR3RegDiffCnt12
Definition: sfDevCY8CMBR3.h:171
const uint8_t ksfCY8CMBR3RegCtrlCmd
Definition: sfDevCY8CMBR3.h:135
sfe_cy8cmbr3_sensor_id_t
Definition: sfDevCY8CMBR3.h:717
@ SID_0
Definition: sfDevCY8CMBR3.h:718
@ SID_11
Definition: sfDevCY8CMBR3.h:729
@ SID_13
Definition: sfDevCY8CMBR3.h:731
@ SID_14
Definition: sfDevCY8CMBR3.h:732
@ SID_3
Definition: sfDevCY8CMBR3.h:721
@ SID_15
Definition: sfDevCY8CMBR3.h:733
@ SID_7
Definition: sfDevCY8CMBR3.h:725
@ SID_INVALID
Definition: sfDevCY8CMBR3.h:734
@ SID_9
Definition: sfDevCY8CMBR3.h:727
@ SID_12
Definition: sfDevCY8CMBR3.h:730
@ SID_2
Definition: sfDevCY8CMBR3.h:720
@ SID_6
Definition: sfDevCY8CMBR3.h:724
@ SID_1
Definition: sfDevCY8CMBR3.h:719
@ SID_4
Definition: sfDevCY8CMBR3.h:722
@ SID_5
Definition: sfDevCY8CMBR3.h:723
@ SID_8
Definition: sfDevCY8CMBR3.h:726
@ SID_10
Definition: sfDevCY8CMBR3.h:728
const uint8_t ksfCY8CMBR3RegDiffCnt10
Definition: sfDevCY8CMBR3.h:169
const uint8_t ksfCY8CMBR3RegFingerThreshold11
Definition: sfDevCY8CMBR3.h:75
const uint8_t ksfCY8CMBR3RegPwmDutyCycleCfg3
Definition: sfDevCY8CMBR3.h:107
sfe_cy8cmbr3_ctrl_cmd_err_t
Definition: sfDevCY8CMBR3.h:798
@ CTRL_CMD_ERR_CRC_FAILED
Definition: sfDevCY8CMBR3.h:801
@ CTRL_CMD_ERR_SAVE_FAILED
Definition: sfDevCY8CMBR3.h:800
@ CTRL_CMD_ERR_INVALID_CMD
Definition: sfDevCY8CMBR3.h:802
@ CTRL_CMD_ERR_NO_ERROR
Definition: sfDevCY8CMBR3.h:799
const uint8_t ksfCY8CMBR3RegToggleEn
Definition: sfDevCY8CMBR3.h:58
const uint8_t ksfCY8CMBR3RegFingerThreshold4
Definition: sfDevCY8CMBR3.h:68
const uint8_t ksfCY8CMBR3RegSlider1Resolution
Definition: sfDevCY8CMBR3.h:122
const uint8_t ksfCY8CMBR3RegStateTimeout
Definition: sfDevCY8CMBR3.h:119
const uint8_t ksfCY8CMBR3RegPwmDutyCycleCfg2
Definition: sfDevCY8CMBR3.h:106
const uint8_t ksfCY8CMBR3RegSlider1Threshold
Definition: sfDevCY8CMBR3.h:123
const uint8_t ksfCY8CMBR3RegBuzzerCfg
Definition: sfDevCY8CMBR3.h:101
const uint8_t ksfCY8CMBR3RegFssEn
Definition: sfDevCY8CMBR3.h:57
const uint8_t ksfCY8CMBR3RegProxCfg
Definition: sfDevCY8CMBR3.h:86
const uint8_t ksfCY8CMBR3RegSensorDebounce
Definition: sfDevCY8CMBR3.h:80
const uint8_t ksfCY8CMBR3RegFingerThreshold5
Definition: sfDevCY8CMBR3.h:69
sfe_cy8cmbr3_sensitivity_t
Definition: sfDevCY8CMBR3.h:737
@ CS_SENSITIVITY_125_COUNTS_PER_PF
Definition: sfDevCY8CMBR3.h:741
@ CS_SENSITIVITY_167_COUNTS_PER_PF
Definition: sfDevCY8CMBR3.h:740
@ CS_SENSITIVITY_250_COUNTS_PER_PF
Definition: sfDevCY8CMBR3.h:739
@ CS_SENSITIVITY_500_COUNTS_PER_PF
Definition: sfDevCY8CMBR3.h:738
const uint8_t ksfCY8CMBR3RegFingerThreshold10
Definition: sfDevCY8CMBR3.h:74
const uint8_t ksfCY8CMBR3RegSlider1Cfg
Definition: sfDevCY8CMBR3.h:121
const uint8_t ksfCY8CMBR3RegSlider2Cfg
Definition: sfDevCY8CMBR3.h:124
const uint8_t ksfCY8CMBR3RegSlider1Position
Definition: sfDevCY8CMBR3.h:154
const uint8_t ksfCY8CMBR3RegDebugCp
Definition: sfDevCY8CMBR3.h:178
const uint8_t ksfCY8CMBR3RegProxNegativeTh0
Definition: sfDevCY8CMBR3.h:98
const uint8_t ksfCY8CMBR3RegDiffCnt6
Definition: sfDevCY8CMBR3.h:165
const uint8_t ksfCY8CMBR3RegProxPositiveTh0
Definition: sfDevCY8CMBR3.h:96
const uint8_t ksfCY8CMBR3RegDebugSensorId
Definition: sfDevCY8CMBR3.h:177
sfe_cy8cmbr3_ctrl_cmd_t
Definition: sfDevCY8CMBR3.h:786
@ CTRL_CMD_SW_RESET
Definition: sfDevCY8CMBR3.h:794
@ CTRL_CMD_RESET_LATCH
Definition: sfDevCY8CMBR3.h:791
@ CTRL_CMD_CALC_CRC
Definition: sfDevCY8CMBR3.h:789
@ CTRL_CMD_NO_OP
Definition: sfDevCY8CMBR3.h:787
@ CTRL_CMD_DEEP_SLEEP
Definition: sfDevCY8CMBR3.h:790
@ CTRL_CMD_SAVE_CONFIG
Definition: sfDevCY8CMBR3.h:788
@ CTRL_CMD_ALP_RESET_PS1
Definition: sfDevCY8CMBR3.h:793
@ CTRL_CMD_ALP_RESET_PS0
Definition: sfDevCY8CMBR3.h:792
const uint8_t ksfCY8CMBR3RegDiffCnt15
Definition: sfDevCY8CMBR3.h:174
const uint8_t ksfCY8CMBR3RegFingerThreshold9
Definition: sfDevCY8CMBR3.h:73
const uint8_t ksfCY8CMBR3RegFamilyId
Definition: sfDevCY8CMBR3.h:140
const uint8_t ksfCY8CMBR3RegFingerThreshold12
Definition: sfDevCY8CMBR3.h:76
const uint16_t kDefaultCY8CMBR3102DeviceID
Definition: sfDevCY8CMBR3.h:51
const uint8_t ksfCY8CMBR3RegScratchpad0
Definition: sfDevCY8CMBR3.h:130
const uint8_t ksfCY8CMBR3RegDiffCnt4
Definition: sfDevCY8CMBR3.h:163
const uint8_t ksfCY8CMBR3RegFingerThreshold3
Definition: sfDevCY8CMBR3.h:67
const uint8_t ksfCY8CMBR3RegSensitivity1
Definition: sfDevCY8CMBR3.h:61
const uint8_t ksfCY8CMBR3RegButtonHys
Definition: sfDevCY8CMBR3.h:81
const uint8_t ksfCY8CMBR3RegDebugRawCnt0
Definition: sfDevCY8CMBR3.h:181
const uint8_t ksfCY8CMBR3RegPrevCtrlCmdCode
Definition: sfDevCY8CMBR3.h:139
const uint8_t ksfCY8CMBR3RegSpoCfg
Definition: sfDevCY8CMBR3.h:112
const uint8_t ksfCY8CMBR3RegSensorId
Definition: sfDevCY8CMBR3.h:134
const uint8_t ksfCY8CMBR3RegLedOnEn
Definition: sfDevCY8CMBR3.h:59
const uint8_t ksfCY8CMBR3RegDebugAvgRawCnt0
Definition: sfDevCY8CMBR3.h:182
const uint8_t ksfCY8CMBR3RegDebugDiffCnt0
Definition: sfDevCY8CMBR3.h:179
const uint8_t ksfCY8CMBR3RegDiffCnt1
Definition: sfDevCY8CMBR3.h:160
const uint8_t ksfCY8CMBR3RegFingerThreshold2
Definition: sfDevCY8CMBR3.h:66
const uint8_t ksfCY8CMBR3RegSliderCfg
Definition: sfDevCY8CMBR3.h:120
const uint8_t ksfCY8CMBR3RegButtonStat
Definition: sfDevCY8CMBR3.h:150
const uint8_t ksfCY8CMBR3RegProxPositiveTh1
Definition: sfDevCY8CMBR3.h:97
const uint8_t ksfCY8CMBR3RegDiffCnt0
Definition: sfDevCY8CMBR3.h:159
const uint8_t ksfCY8CMBR3RegSliderNnt
Definition: sfDevCY8CMBR3.h:128
const uint8_t ksfCY8CMBR3RegScratchpad1
Definition: sfDevCY8CMBR3.h:131
const uint8_t ksfCY8CMBR3RegSlider2Threshold
Definition: sfDevCY8CMBR3.h:126
const uint8_t ksfCY8CMBR3RegGpoOutputState
Definition: sfDevCY8CMBR3.h:133
const uint8_t ksfCY8CMBR3RegPwmDutyCycleCfg6
Definition: sfDevCY8CMBR3.h:110
const uint8_t ksfCY8CMBR3RegButtonLbr
Definition: sfDevCY8CMBR3.h:82
Definition: sfDevCY8CMBR3.h:260
uint8_t byte
Definition: sfDevCY8CMBR3.h:264
uint8_t CS_BASE_THRESHOLD
Definition: sfDevCY8CMBR3.h:262
Definition: sfDevCY8CMBR3.h:503
uint8_t CRC_LSB
Definition: sfDevCY8CMBR3.h:505
uint16_t word
Definition: sfDevCY8CMBR3.h:508
uint8_t CRC_MSB
Definition: sfDevCY8CMBR3.h:506
Definition: sfDevCY8CMBR3.h:675
uint16_t word
Definition: sfDevCY8CMBR3.h:680
uint8_t BASELINE_LSB
Definition: sfDevCY8CMBR3.h:677
uint8_t BASELINE_MSB
Definition: sfDevCY8CMBR3.h:678
Definition: sfDevCY8CMBR3.h:666
uint8_t DIFF_COUNT_LSB
Definition: sfDevCY8CMBR3.h:668
uint8_t DIFF_COUNT_MSB
Definition: sfDevCY8CMBR3.h:669
uint16_t word
Definition: sfDevCY8CMBR3.h:671
Definition: sfDevCY8CMBR3.h:684
uint16_t word
Definition: sfDevCY8CMBR3.h:689
uint8_t RAW_COUNT_MSB
Definition: sfDevCY8CMBR3.h:687
uint8_t RAW_COUNT_LSB
Definition: sfDevCY8CMBR3.h:686
Definition: sfDevCY8CMBR3.h:434
uint8_t MED_EN
Definition: sfDevCY8CMBR3.h:436
uint8_t byte
Definition: sfDevCY8CMBR3.h:440
uint8_t IIR_EN
Definition: sfDevCY8CMBR3.h:437
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:438
Definition: sfDevCY8CMBR3.h:444
uint8_t SYSD_EN
Definition: sfDevCY8CMBR3.h:446
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:447
uint8_t byte
Definition: sfDevCY8CMBR3.h:449
Definition: sfDevCY8CMBR3.h:454
uint8_t GUARD_EN
Definition: sfDevCY8CMBR3.h:457
uint8_t ATH_EN
Definition: sfDevCY8CMBR3.h:459
uint8_t BUTTON_SLD_ARST
Definition: sfDevCY8CMBR3.h:460
uint8_t SHIELD_EN
Definition: sfDevCY8CMBR3.h:456
uint8_t EMC_EN
Definition: sfDevCY8CMBR3.h:458
uint8_t byte
Definition: sfDevCY8CMBR3.h:463
uint8_t PROXIMITY_ARST
Definition: sfDevCY8CMBR3.h:461
Definition: sfDevCY8CMBR3.h:467
uint8_t LOW_POWER_MODE
Definition: sfDevCY8CMBR3.h:469
uint8_t byte
Definition: sfDevCY8CMBR3.h:472
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:470
Definition: sfDevCY8CMBR3.h:527
uint8_t DEVICE_ID_LSB
Definition: sfDevCY8CMBR3.h:529
uint8_t DEVICE_ID_MSB
Definition: sfDevCY8CMBR3.h:530
uint16_t word
Definition: sfDevCY8CMBR3.h:532
Definition: sfDevCY8CMBR3.h:536
uint16_t word
Definition: sfDevCY8CMBR3.h:541
uint8_t REVISION
Definition: sfDevCY8CMBR3.h:538
uint8_t reserved
Definition: sfDevCY8CMBR3.h:539
Definition: sfDevCY8CMBR3.h:630
uint16_t word
Definition: sfDevCY8CMBR3.h:635
uint8_t DIFF_COUNT_LSB
Definition: sfDevCY8CMBR3.h:632
uint8_t DIFF_COUNT_MSB
Definition: sfDevCY8CMBR3.h:633
Definition: sfDevCY8CMBR3.h:268
uint8_t CS_FINGER_THRESHOLD
Definition: sfDevCY8CMBR3.h:270
uint8_t byte
Definition: sfDevCY8CMBR3.h:272
Definition: sfDevCY8CMBR3.h:402
uint8_t GPO_CTL
Definition: sfDevCY8CMBR3.h:404
uint8_t ACTIVE_STATE
Definition: sfDevCY8CMBR3.h:407
uint8_t DRIVE_MODE
Definition: sfDevCY8CMBR3.h:406
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:408
uint8_t byte
Definition: sfDevCY8CMBR3.h:410
uint8_t GPO_PWM
Definition: sfDevCY8CMBR3.h:405
Definition: sfDevCY8CMBR3.h:639
uint8_t byte
Definition: sfDevCY8CMBR3.h:650
uint8_t GPO2
Definition: sfDevCY8CMBR3.h:643
uint8_t GPO1
Definition: sfDevCY8CMBR3.h:642
uint8_t GPO0
Definition: sfDevCY8CMBR3.h:641
uint8_t GPO5
Definition: sfDevCY8CMBR3.h:646
uint8_t GPO7
Definition: sfDevCY8CMBR3.h:648
uint8_t GPO6
Definition: sfDevCY8CMBR3.h:647
uint8_t GPO3
Definition: sfDevCY8CMBR3.h:644
uint8_t GPO4
Definition: sfDevCY8CMBR3.h:645
Definition: sfDevCY8CMBR3.h:512
uint8_t GPO7
Definition: sfDevCY8CMBR3.h:521
uint8_t GPO3
Definition: sfDevCY8CMBR3.h:517
uint8_t GPO1
Definition: sfDevCY8CMBR3.h:515
uint8_t GPO6
Definition: sfDevCY8CMBR3.h:520
uint8_t GPO4
Definition: sfDevCY8CMBR3.h:518
uint8_t GPO5
Definition: sfDevCY8CMBR3.h:519
uint8_t GPO0
Definition: sfDevCY8CMBR3.h:514
uint8_t byte
Definition: sfDevCY8CMBR3.h:523
uint8_t GPO2
Definition: sfDevCY8CMBR3.h:516
Definition: sfDevCY8CMBR3.h:476
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:479
uint8_t I2C_ADDRESS
Definition: sfDevCY8CMBR3.h:478
uint8_t byte
Definition: sfDevCY8CMBR3.h:481
Definition: sfDevCY8CMBR3.h:611
uint8_t PS0
Definition: sfDevCY8CMBR3.h:613
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:615
uint8_t PS1
Definition: sfDevCY8CMBR3.h:614
uint8_t byte
Definition: sfDevCY8CMBR3.h:617
Definition: sfDevCY8CMBR3.h:233
uint8_t GPO7
Definition: sfDevCY8CMBR3.h:242
uint8_t GPO3
Definition: sfDevCY8CMBR3.h:238
uint8_t GPO0
Definition: sfDevCY8CMBR3.h:235
uint16_t word
Definition: sfDevCY8CMBR3.h:245
uint8_t GPO5
Definition: sfDevCY8CMBR3.h:240
uint8_t GPO4
Definition: sfDevCY8CMBR3.h:239
uint8_t GPO1
Definition: sfDevCY8CMBR3.h:236
uint8_t GPO6
Definition: sfDevCY8CMBR3.h:241
uint8_t GPO2
Definition: sfDevCY8CMBR3.h:237
uint8_t reserved
Definition: sfDevCY8CMBR3.h:243
Definition: sfDevCY8CMBR3.h:393
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:396
uint8_t LED_ON_TIME
Definition: sfDevCY8CMBR3.h:395
uint8_t byte
Definition: sfDevCY8CMBR3.h:398
Definition: sfDevCY8CMBR3.h:339
uint8_t ALP_FILTER_K
Definition: sfDevCY8CMBR3.h:341
uint8_t byte
Definition: sfDevCY8CMBR3.h:344
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:342
Definition: sfDevCY8CMBR3.h:328
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:332
uint8_t byte
Definition: sfDevCY8CMBR3.h:335
uint8_t PS0_WAKE_ON_APPROACH
Definition: sfDevCY8CMBR3.h:330
uint8_t PS1_WAKE_ON_APPROACH
Definition: sfDevCY8CMBR3.h:331
uint8_t ALP_FILTER_EN
Definition: sfDevCY8CMBR3.h:333
Definition: sfDevCY8CMBR3.h:313
uint8_t PS1
Definition: sfDevCY8CMBR3.h:316
uint8_t byte
Definition: sfDevCY8CMBR3.h:319
uint8_t PS0
Definition: sfDevCY8CMBR3.h:315
uint8_t reserved
Definition: sfDevCY8CMBR3.h:317
Definition: sfDevCY8CMBR3.h:357
uint8_t PROX_HYSTERESIS
Definition: sfDevCY8CMBR3.h:359
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:360
uint8_t byte
Definition: sfDevCY8CMBR3.h:362
Definition: sfDevCY8CMBR3.h:366
uint8_t OVERRIDE
Definition: sfDevCY8CMBR3.h:369
uint8_t byte
Definition: sfDevCY8CMBR3.h:371
uint8_t LOW_BASELINE_RESET_THRESHOLD
Definition: sfDevCY8CMBR3.h:368
Definition: sfDevCY8CMBR3.h:375
uint8_t byte
Definition: sfDevCY8CMBR3.h:380
uint8_t NEGATIVE_NOISE_THRESHOLD
Definition: sfDevCY8CMBR3.h:377
uint8_t OVERRIDE
Definition: sfDevCY8CMBR3.h:378
Definition: sfDevCY8CMBR3.h:384
uint8_t byte
Definition: sfDevCY8CMBR3.h:389
uint8_t NOISE_THRESHOLD
Definition: sfDevCY8CMBR3.h:386
uint8_t OVERRIDE
Definition: sfDevCY8CMBR3.h:387
Definition: sfDevCY8CMBR3.h:348
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:351
uint8_t PROX_RESOLUTION
Definition: sfDevCY8CMBR3.h:350
uint8_t byte
Definition: sfDevCY8CMBR3.h:353
Definition: sfDevCY8CMBR3.h:601
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:605
uint8_t byte
Definition: sfDevCY8CMBR3.h:607
uint8_t PS0
Definition: sfDevCY8CMBR3.h:603
uint8_t PS1
Definition: sfDevCY8CMBR3.h:604
Definition: sfDevCY8CMBR3.h:414
uint8_t byte
Definition: sfDevCY8CMBR3.h:419
uint8_t HIGH_DUTY_CYCLE
Definition: sfDevCY8CMBR3.h:416
uint8_t LOW_DUTY_CYCLE
Definition: sfDevCY8CMBR3.h:417
Definition: sfDevCY8CMBR3.h:485
uint8_t REFRESH_INTERVAL
Definition: sfDevCY8CMBR3.h:487
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:488
uint8_t byte
Definition: sfDevCY8CMBR3.h:490
Definition: sfDevCY8CMBR3.h:249
uint8_t CS0_SENSITIVITY
Definition: sfDevCY8CMBR3.h:251
uint8_t byte
Definition: sfDevCY8CMBR3.h:256
uint8_t CS1_SENSITIVITY
Definition: sfDevCY8CMBR3.h:252
uint8_t CS3_SENSITIVITY
Definition: sfDevCY8CMBR3.h:254
uint8_t CS2_SENSITIVITY
Definition: sfDevCY8CMBR3.h:253
Definition: sfDevCY8CMBR3.h:194
uint8_t CS6
Definition: sfDevCY8CMBR3.h:202
uint8_t CS12
Definition: sfDevCY8CMBR3.h:208
uint8_t CS3
Definition: sfDevCY8CMBR3.h:199
uint8_t CS11
Definition: sfDevCY8CMBR3.h:207
uint8_t CS9
Definition: sfDevCY8CMBR3.h:205
uint8_t CS0
Definition: sfDevCY8CMBR3.h:196
uint8_t CS4
Definition: sfDevCY8CMBR3.h:200
uint8_t CS5
Definition: sfDevCY8CMBR3.h:201
uint8_t CS13
Definition: sfDevCY8CMBR3.h:209
uint16_t word
Definition: sfDevCY8CMBR3.h:213
uint8_t CS8
Definition: sfDevCY8CMBR3.h:204
uint8_t CS1
Definition: sfDevCY8CMBR3.h:197
uint8_t CS2
Definition: sfDevCY8CMBR3.h:198
uint8_t CS7
Definition: sfDevCY8CMBR3.h:203
uint8_t CS15
Definition: sfDevCY8CMBR3.h:211
uint8_t CS14
Definition: sfDevCY8CMBR3.h:210
uint8_t CS10
Definition: sfDevCY8CMBR3.h:206
Definition: sfDevCY8CMBR3.h:423
uint8_t byte
Definition: sfDevCY8CMBR3.h:430
uint8_t RESERVED1
Definition: sfDevCY8CMBR3.h:428
uint8_t SPO0
Definition: sfDevCY8CMBR3.h:425
uint8_t SPO1
Definition: sfDevCY8CMBR3.h:427
uint8_t RESERVED0
Definition: sfDevCY8CMBR3.h:426
Definition: sfDevCY8CMBR3.h:494
uint8_t byte
Definition: sfDevCY8CMBR3.h:499
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:497
uint8_t TIMEOUT
Definition: sfDevCY8CMBR3.h:496
Definition: sfDevCY8CMBR3.h:621
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:624
uint8_t COUNTER
Definition: sfDevCY8CMBR3.h:623
uint8_t byte
Definition: sfDevCY8CMBR3.h:626
Definition: sfDevCY8CMBR3.h:654
uint8_t COUNTER
Definition: sfDevCY8CMBR3.h:656
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:657
uint8_t byte
Definition: sfDevCY8CMBR3.h:659
Definition: sfDevCY8CMBR3.h:693
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:696
uint8_t COUNTER
Definition: sfDevCY8CMBR3.h:695
uint8_t byte
Definition: sfDevCY8CMBR3.h:698
Definition: sfDevCY8CMBR3.h:702
uint8_t F_DEFAULT
Definition: sfDevCY8CMBR3.h:704
uint8_t byte
Definition: sfDevCY8CMBR3.h:707
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:705
Definition: sfDevCY8CMBR3.h:217
uint8_t GPO4
Definition: sfDevCY8CMBR3.h:223
uint8_t GPO7
Definition: sfDevCY8CMBR3.h:226
uint16_t word
Definition: sfDevCY8CMBR3.h:229
uint8_t GPO3
Definition: sfDevCY8CMBR3.h:222
uint8_t reserved
Definition: sfDevCY8CMBR3.h:227
uint8_t GPO0
Definition: sfDevCY8CMBR3.h:219
uint8_t GPO6
Definition: sfDevCY8CMBR3.h:225
uint8_t GPO1
Definition: sfDevCY8CMBR3.h:220
uint8_t GPO5
Definition: sfDevCY8CMBR3.h:224
uint8_t GPO2
Definition: sfDevCY8CMBR3.h:221
Definition: sfDevCY8CMBR3.h:545
uint8_t RESERVED
Definition: sfDevCY8CMBR3.h:548
uint8_t SYSD_ERR
Definition: sfDevCY8CMBR3.h:549
uint8_t SENSOR_COUNT
Definition: sfDevCY8CMBR3.h:547
uint8_t byte
Definition: sfDevCY8CMBR3.h:551