Skip to content

Releases: IEQLab/samba

v1.99.96

27 Mar 01:02

Choose a tag to compare

Changes

  • Increase CPU clock speed and I2C bus speed
  • Better guards against NANs in median filters
  • Update and streamline documentation for final release

v1.99.95

20 Mar 02:46

Choose a tag to compare

Changes

  • Improve air speed model by removing unnecessary terms; now uses only 3 terms with same or better performance
  • Implement RH calibration by computing vapour pressure at the raw SHT temperature, then recalculating RH at the calibration-corrected temperature
  • Update global defaults for calibration coefficients based on initial testing of 15 SAMBAs
  • Reduced window size for CO2, TVOC, and air speed to reduce likelihood of stale values due to i2c errors producing NaNs
  • Clamp CO2 floor at 395+20 (offset)
  • Better reporting of SD card errors
  • Move SAMBA serial dump to on API connection event to remove dependency on direct serial uploads via USB
  • Fix VFS due to changes in ESPHome 2026.2.0
  • Tweaks to custom components for compatibility with ESPHome 2026.3.0
  • Bump minimum firmware version to 2026.3.0

v1.99.94

24 Jan 01:53

Choose a tag to compare

Changes

  • Implement watchdogs for TVOC and CO2 sensors. These devices occasionally fail on boot. This watchdog will catch that and reboot the device, which tend to resolve the problem. Combined with the new K30 re-initialisation function (see below), most K30 boot issues are solved. Occasional issues with SGP4X remain, but they are infrequent.
  • Implement re-initialisation function for K30 CO2 sensor. It will try to reinitialise K30 sensor after boot, before restarting the device if unsuccessful (after 4 attempts / 2 mins). Attempts are printed to the log.
  • Fix address for automatic background calibration (ABC) for K30 sensor
  • Add button to HA to manually trigger ABC
  • Remove upload block on ads1115 error
  • Add captive_portal to handle adding SAMBA to a new WiFi network
  • Move manifest.json inside /firmware directory. Note: this requires the existing firmware.json remain until all devices are running v1.99.94 or later.
  • Clean repo for upcoming release of v2.0

v1.99.93

20 Jan 03:50

Choose a tag to compare

Improve anemometer models for more accurate air speeds at low velocities

Changes

  • Implement a new approach for air speed model. New coefficients calibration_as1_d0 and calibration_as1_d1 are from a linear calibration to determine voltage floor based on air temperature. Coefficients from power-law models use that voltage floor offset for more accurate readings at lower air speeds.
  • Tested support for ESPHome 2025.12.4
  • Update all default calibration coefficients based on sample of 10 SAMBAs
  • Implement watchdog to reset device if no airspeed measurements for >5mins
  • Reduce sample window size for anemometers and globe thermistor to account for i2c bus errors with ADS1115
  • Skip Influx uploads if there's an airspeed error
  • Require VFS after it was removed in ESPHome 2025.11.0
  • Improve SD mount check
  • Influx component now checks for WiFi connection before uploading
  • SAMBA will not reboot if no WiFi connection is found (needed for offline logging to SD)
  • Simplify SD logs to prevent large prints
  • Simplify on boot status log
  • Use default K30 address (custom address is defined in Senseair block)
  • Change ESP32 block to use variant instead of board as recommended
  • Remove dBC filter and La05 until needed
  • Standardise CO2 calibration coefficients to simple +20 offset

v1.99.92

06 Oct 23:06

Choose a tag to compare

This update adds additional functionality to the Senseair and InfluxDB external components to make them more flexible.

Changes

  • Added a manual call for background calibration in Senseair component with senseair_i2c.background_calibration action. This will set current reading at 400ppm. Note there needs to be a power cycle for the calibration to take place.
  • Added the senseair_i2c.abc_get_period action to check the current ABC period.
  • Improved boot logs for Senseair component to include firmware and serial number
  • Reduced CO2 sensor polling from 15s to 30s
  • Added the influxdb.publish_sensors action which accepts a list of sensor_ids to publish. Note the id(influx).publish_now() approach still works if wanting to publish all defined sensors.

v1.99.91

03 Oct 06:04

Choose a tag to compare

Changes

  • Use unique filenames for SD card logging. Generated on boot with format mac_yymmdd_hhmm.txt
  • Use UTC timestamp for SD card logs
  • Fix background calibration for CO2 sensor (180h)

v1.99.90

01 Oct 23:56

Choose a tag to compare

This update adds a nice feature - SD card support! This is the last piece of base functionality for SAMBA v2 🎉

Changes

  • SD cart support using SPI. Measurements are written to SD card at same sample interval as InfluxDB (5 mins).
  • some basic remount logic with manual mounting button in HA
  • add toggle to disable SD card writing (enabled by default)
  • reduced adc sample rates to try and minimise i2c errors
  • stagger CO2 reads to try and minimise i2c errors
  • reduce i2c timeout setting to 13ms to align with esp-idf limit
  • add toggle to disable automatic firmware updates (enabled by default)
  • add jitter delay only after confirming there's a firmware update
  • reduce sntp syncs to 1 hour

v1.99.80

30 Sep 06:20

Choose a tag to compare

Changes

  • Tested support for new esp-idf i2c stack
  • InfluxDB tags are now templatable
  • Add configurable read delay to K30
  • Increase i2c timeout to 15ms
  • More robust RTC setting using actions
  • Add placeholder for wifi hotspot network

v1.99.72

23 Aug 02:22

Choose a tag to compare

Changes

  • reduce i2c bus speed to 50kHz
  • reduce ADC sample rate to try and minimise issue #19
  • reduce sample LED off transition to 300ms

v1.99.71

20 Aug 04:03

Choose a tag to compare

Changes

  • implement managed updates via http_request where update.json hosted in GitHub points to the latest firmware. SAMBAs will check for updates every 6 hours but will only update on Sunday mornings (if an update is available)
  • reduced i2c frequency to 50kHz (from 100kHz) to fix occasional crash from bus issues
  • hide reset buttons from Home Assistant front end by default