I am struggling to figure out the right logic to combine a fall detection logic with the light (WFI) or deep sleep modes (ie linking to hardware interrupts). So far I’ve been working with the freefall threshold (FF_THS) which works well when testing with an actual free fall (ie dropping the device).
However, a real life fall tends to happen slower, with most g “suspension” only being around 0.6 - 0.75g (vs <0.5g in free fall). The max threshold under FF_THS is 0.5g, so it doesn’t register these “realistic” falls.
Has anyone tried to solve this before and found a solution? If I go through an always-on solution it works fine but I’m trying to optimise for battery life as much as possible.
I am working with the Seeed Xiao BLE Sense (nRf52840 chip).
Your "fall" indication will be after the fall. It should start around 1g, decrease (you say 0.5g) during the fall, then rapidly increases to greater than 1g, then becomes steady around 1g.
Measure values and times, then graph against each other... head, neck, shoulder, elbow, hip, knee, ankle.