49 Serial.println(
"Tilt detected");
68 Serial.println(
"BMA4xx sensor initialization failed");
74 Serial.println(
" Sensor initialized successfully");
79 Serial.println(
"Failed to set remap axes");
90 float data_rate_hz = 100.0f;
95 Serial.println(
"Failed to configure accelerometer");
99 bool feature_enable =
true;
100 bool interrupt_enable =
true;
110 Serial.println(
"Failed to set interrupt pin configuration");
123 Serial.println(
"Failed to enable tilt detector");
132 Serial.println(
"Now you can tilt the sensor.");
OperationMode
Enumeration of sensor operation modes.
AccelFullScaleRange
Enumeration of accelerometer full-scale range settings.
InterruptPinMap
Enumeration of interrupt pin mapping options.
volatile bool isInterruptTriggered
bool begin(CommInterface interface, SensorCommCustom::CustomCallback callback, SensorCommCustomHal::CustomHalCallback hal_callback, uint8_t addr=0)
Initialize the sensor using custom callback interface.
bool selectPlatform(Platform platform)
Select the platform for the sensor.
Platform
Select the platform for the sensor.
void update() override
Update sensor state and process interrupts.
void setOnTiltDetectedCallback(std::function< void(void)> cb)
Set the callback for tilt detection events.
bool enableTiltDetector(bool enable, bool interrupt_enable=false, InterruptPinMap pin_map=InterruptPinMap::PIN1) override
Enable or disable tilt detection.
virtual bool setRemapAxes(SensorRemap remap)
Set the remapping of axes for the BMA4XX sensor.
bool setInterruptPinConfig(InterruptPinMap pin_map, bool edge_trigger=false, bool active_low=true, bool output_en=true, bool input_en=false)
Configure the electrical properties of an interrupt pin.
const char * getModelName() const
Get the model name of the BMA4XX sensor.
bool configAccelerometer(OperationMode mode, AccelFullScaleRange range, float data_rate_hz, AccelBandwidth bandwidth, AccelPerfMode perf_mode)
Configure the accelerometer.
AccelBandwidth
BMA4 Accelerometer averaging filter configuration These values configure the internal averaging filte...
@ OSR2_AVG2
OSR2 mode with 2 samples averaged.
AccelPerfMode
BMA4 Accelerometer performance mode configuration Configures the internal filter behavior for sample ...
@ CIC_AVG_MODE
Averaging filter mode: samples are averaged based on configured bandwidth and ODR.