Skip to content

feat: add IIR filter configuration via BME280_IIR_FILTER env var#14

Merged
guillaumedelre merged 1 commit into
developfrom
feat/iir-filter
May 14, 2026
Merged

feat: add IIR filter configuration via BME280_IIR_FILTER env var#14
guillaumedelre merged 1 commit into
developfrom
feat/iir-filter

Conversation

@guillaumedelre
Copy link
Copy Markdown
Owner

Summary

  • Write config register 0xF5 (bits [4:2]) with the IIR filter coefficient before each measurement
  • New env var BME280_IIR_FILTER: 0=off (default), 1=2×, 2=4×, 3=8×, 4=16×
  • Default is 0 (filter off) to preserve existing behavior
  • Document in .env.example and README configuration table

Per Bosch BME280 datasheet table 28: IIR filter suppresses short-term disturbances (door slams, wind gusts). Recommended coefficient 4 or 8 for indoor navigation use cases.

Test plan

  • 21 tests pass: docker compose run --rm test
  • BME280_IIR_FILTER=2 python sensor_api.py applies 4× filter on Pi

Write config register 0xF5 (bits [4:2]) before each measurement.
Defaults to 0 (filter off) to preserve existing behavior.
Recommended value for indoor use is 2 (4x coefficient).
Document the new variable in .env.example and README.

Co-authored-by: agilicode <agilicode@gmail.com>
@guillaumedelre guillaumedelre merged commit 3a42617 into develop May 14, 2026
3 checks passed
@guillaumedelre guillaumedelre deleted the feat/iir-filter branch May 14, 2026 09:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant