Skip to content

Conversation

robbederks
Copy link
Contributor

This is needed since we read out the chip at ~104Hz while the anti-aliasing analog filter is 400Hz.

Changes:

  • the ODR is increased to 833Hz to avoid aliasing
  • digital LFP is enabled at ODR/9 BW (93Hz)
  • FIFO decimates the measurements 8x (to get ~104Hz back)

The second step doesn't quite hit Nyquist (93Hz > 104Hz/2), but the next "step" in bandwidth reduction would be ODR/50, which would give a bandwidth of 16.7Hz. Not sure if that's preferable @haraschax? Alternatively we can decrease the decimation to get a readout of ~208Hz

@robbederks
Copy link
Contributor Author

Since the FIFO watermark interrupt can't be set to pulsed, it's quite annoying to deal with in the current sensord framework. I've added some logic to clear the FIFO if we don't see any interrupt edges, but I'm not 100% confident in the stability and it's a bit of a hack

Comment on lines +58 to +60
# reset chip before init
self.write(self.LSM6DS3_ACCEL_I2C_REG_CTRL3_C, 0b1)
time.sleep(0.1)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

reminder to remove this since it will also reset the gyro settings

handled it properly here: #35872

Copy link
Contributor

This PR has had no activity for 9 days. It will be automatically closed in 2 days if there is no activity.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants