Commit Graph

52 Commits

Author SHA1 Message Date
Quency-D fc61018d4d Fix the issue of inconsistent I2C usage in the environmental sensor. 2026-01-23 10:45:13 +08:00
Frieder Schrempf ab7935142c EnvironmentSensorManager.cpp: Cleanup after failed RAK4631 GPS detection
If no GPS was detected, revert the hardware to the initial state,
otherwise we may see conflicts or increased power consumption on some
boards.

Signed-off-by: Frieder Schrempf <frieder@fris.de>
2025-12-31 14:42:42 +01:00
Frieder Schrempf e79ee11872 EnvironmentSensorManager.cpp: Fix RAK4631 serial GPS detection
Serial1 is always true. If we want to check for the presence of a GPS
receiver, we need to check if any data was received.

Signed-off-by: Frieder Schrempf <frieder@fris.de>
2025-12-31 14:42:41 +01:00
entr0p1 cc28b1a34d EnvironmentSensorManager.cpp: Mitigate BME280 self-heating causing inaccurate readings. 2025-12-20 21:51:51 +11:00
agessaman b91b854a1d fix output from LPS22HB: convert barometric pressure from kPa to hPa in EnvironmentSensorManager 2025-12-08 19:53:33 -08:00
Christophe Vanlancker 01eb8716af fix(core): optimize GPS loop and add display GPIO safeguards 2025-12-05 20:45:10 +01:00
csrutil df3cb3d192 _location->loop() should be in the next tick 2025-11-29 20:29:52 +08:00
csrutil 62e180dc0f changed ms to sec 2025-11-29 19:02:00 +08:00
csrutil 88fb173297 add configurable GPS update interval
Make GPS update interval configurable via settings instead of using hardcoded 1 second value. The interval is persisted from preferences and can be adjusted at runtime through the sensor manager settings interface
2025-11-29 17:20:21 +08:00
Florent 1c0017b634 thinknode_m5: gps support 2025-11-28 13:15:11 +01:00
recrof 88a6141943 fix: move bme680 detection before bme280 2025-11-18 15:36:25 +01:00
Wesley Ellis 4cfbd3bad5 Switch BMP085 mode to 0 for ULTRALOWPOWER 2025-10-22 16:53:11 -04:00
Wesley Ellis ac15131296 Add support for bmp085/bmp180 temperature/pressure sensor 2025-10-22 16:17:06 -04:00
liquidraver 3c48f01601 BME680 library doesn't have altitude calculation, we can add it here to match other sensors' 2025-10-16 11:29:22 +02:00
liquidraver 0e7486552d Add simple BME680 support to RAK with adafruit library 2025-10-16 10:17:23 +02:00
Scott Powell d3be6afccb * fix for non-RAK targets 2025-10-15 22:51:05 +11:00
Scott Powell fa8c31be88 * fix for RAK12500 GPS (I2C) 2025-10-15 22:47:55 +11:00
Florent de Lamotte 341b69e3c9 sensor list command 2025-10-06 14:08:16 +02:00
fdlamotte c83abbeff6 ESM: add gps reset after begin 2025-09-28 09:20:59 +02:00
Florent c1915a1133 ESM: delegate gps management to LocationProvider 2025-09-23 11:12:07 +02:00
ripplebiz 4aa58ade8a Merge pull request #811 from fdlamotte/tracker_l1_environment_sensors
Tracker l1: environment sensors
2025-09-23 15:34:22 +10:00
Florent 611d61b6c6 tracker_l1: fix bme226 init in ESM to include all sensors 2025-09-22 19:10:01 +02:00
Quency-D 669bea04a0 add heltec_v4 board. 2025-09-22 19:58:27 +08:00
Florent f9543bb7bb tracker_l1: support for EnvironmentSensorManager 2025-09-21 22:14:22 +02:00
csrutil cf93109cd5 feat: add altitude support to environment sensor node telemetry
- Include actual node altitude in GPS telemetry instead of hardcoded 0.0f
- Extract altitude data from both ublox_GNSS and serial GPS sources
- Update debug logging to display altitude alongside lat/lon coordinates
2025-09-09 19:20:39 +08:00
recrof d59724acd0 new variant: RAK WisMesh Tag 2025-09-05 16:21:19 +02:00
Alex Wolden 0c37eafd01 Fixed shunt value for ina226 2025-08-21 13:23:05 -07:00
Alex Wolden c636536599 Add INA226 to rak 2025-08-20 22:23:54 -07:00
Martin Kudlacek 822850b4d5 Support for Sensirion SHT4x 2025-07-28 10:02:31 +02:00
Martin Kudlacek a96d1022a0 Added support for TI INA260 2025-07-28 09:41:06 +02:00
taco ef58ef460b fix: BMP280 altitude was using incorrect library 2025-07-28 11:29:55 +10:00
Mike Cochrane 93802fe250 Add VL53L0X time-of-flight distance sensor to Heltec V3 Sensor 2025-07-18 22:01:47 +12:00
Mike Cochrane 9f2a77c92e Add Melexis Contact-less Infrared Sensor - MLX90614 to Heltec V3 Sensor 2025-07-18 18:51:00 +12:00
Mike Cochrane e4f7b9e37f Allow the SDA and SCL pins for Environment sensors to be configured independantly. Add Heltec V3 Sensor. 2025-07-18 18:16:59 +12:00
cod3doomy 6b4592bfe2 Cleanup and fixes
-Added RAK_4631 define back
-Added includes for common RAK sensors that are currently supported in ESM
-Set global variables to static
-Reduced delay time within the RAK gps init sequence
2025-07-17 10:42:18 -07:00
cod3doomy 660ab0692f RAK4631 ESM Migration
Changes to migrate sensor code to the ESM.

Added a separate GPS init sequence for the RAK that scans I2C and Serial1 on the various sockets of the various base boards to find the RAK12500. (and soon the RAK12501)

Removed the GPS specific envs from platformio.ini and enabled GPS for all envs.

Verified working with RAK12500 on RAK19007 sockets A and D, as well as RAK19003.
2025-07-16 19:04:50 -07:00
marcelverdult 58cffa8f76 Fixed Barometric Pressure Reading for BMP280
Measurement has to be divided by 100 same as BME280
2025-07-16 13:50:23 +02:00
jasper 7d47608985 Changed the Barometric Pressure value since it was a factor 100 to high 2025-07-08 21:16:03 +02:00
recrof 539f99a90f removed unsupported(?) readAltitude 2025-07-02 16:50:47 +02:00
recrof 3832836eb2 EnvironmentSensorManager: add support for SHTC3 and LPS22HB 2025-07-02 16:42:35 +02:00
recrof 9530744ff4 add support for BMP280 temperature+pressure sensor 2025-06-29 00:17:46 +02:00
taco 84c2cfdcf2 fix: revert swapped GPS pins
reverted GPS pin behaviour and swapped GPS pins for tbeam variants.
2025-06-24 12:39:07 +10:00
cod3doomy 218b96e4aa T-Beam refactor
There is a lot to this PR, so if there are any questions let me know.

The idea here is to merge T-Beam fw so that there is less redundant code. Most versions (except the 0.7) share PMU code, init sequence, and most IO pin definitions.

- Merged all T-Beam board.h files into one TBeamBoard.
- Added PMU code to identify different AXP chips.
- Modified "lilygo tbeam SX1276" variant to cover all T-Beam SX1276 versions
- Modified "lilygo tbeam SX1262" variant to cover all T-Beam SX1262 versions
- Enabled GPS on all T-Beam versions/models
- Enabled BME280 on the Supreme

I am also updating EnvironmentSensorManager to allow for boards that do or don't have GPS enable pins, as well as a PERSISTANT_GPS define check for boards that want GPS to stay active after boot.
2025-06-22 17:46:30 -07:00
taco 83842e4b25 fix: EnvironmentSensorManager.cpp: don't update location if GPS is turned off.
previously the location would always snap to the last heard GPS location after GPS had been on.
2025-06-21 10:09:28 +10:00
Scott Powell 0defa837d8 * EnvironmentSensorManager: some tidy ups 2025-05-23 19:12:32 +10:00
taco 5987e95ce9 refactor: more conditionals for GPS
also re-added some missing returns.
2025-05-23 18:58:45 +10:00
taco 400c4353dc REFACTOR: sensors are now wrapped in conditionals 2025-05-23 17:08:23 +10:00
taco 23f54dd924 fix: remove stray initSerialGPS call 2025-05-23 14:34:34 +10:00
taco a466d3cf80 added serial GPS support to EnvironmentSensorClass
based on T114 serial GPS and EnvironmentSensorClass.
2025-05-22 15:36:20 +10:00
Normunds Gavars 98d94d9423 Remove sensor wrapper classes and simplify. Switch to Adafruit libs for sensors. 2025-05-22 00:19:00 +03:00