
Тест проводил на Heltec V3: https://ali.click/eetwtp?erid=2SDnjdyKjZJ
В проекте Meshtastic есть такой пункт, как телеметрия. Телеметрия позволяет получать данные с разных датчиков по I2c.
Показания этих датчиков видны как в приложении Meshtastic, так и другим людям, которые видят вашу Ноду.
Список поддерживаемых датчиков:
| Sensor | I2C Address | Data Points |
|---|---|---|
| AHT10, AHT20 | 0x38 | Температура и влажность |
| BMP085 | 0x76, 0x77 | Температура и давление |
| BMP180 | 0x76, 0x77 | Температура и давление |
| BMP280 | 0x76, 0x77 | Температура и давление |
| BME280 | 0x76, 0x77 | Температура, влажность и давление |
| BMP388 | 0x76, 0x77 | Температура и давление |
| BMP390 | 0x76, 0x77 | Температура и давление |
| BME68x | 0x76, 0x77 | Температура, влажность, давление и VOC |
| DPS310 | 0x76, 0x77 | Температура и давление |
| MCP9808 | 0x18 | Temperature |
| INA219 | 0x40, 0x41, 0x43 | Ток и напряжение |
| INA226 | 0x40, 0x41, 0x43 | Ток и напряжение |
| INA260 | 0x40, 0x41, 0x43 | Ток и напряжение |
| INA3221 | 0x42 | 3х фазный Ток и напряжение |
| LPS22 | 0x5D, 0x5C | Датчик давления |
| SHTC3 | 0x70 | Температура и влажность |
| SHT31 | 0x44, 0x45 | Температура и влажность |
| SHT4X | 0x44, 0x45 | Температура и влажность |
| OPT3001 | 0x44, 0x45 | Датчик освещенности |
| VEML7700 | 0x10 | Датчик освещенности |
| TSL2591 | 0x29 | Датчик освещенности |
| LTR390UV | 0x53 | UV датчик |
| RCWL9620 | 0x57 | Ультразвуковой датчик дистанции |
| PMSA003I | 0x12 | PM2.5 датчик частиц |
| DFROBOT_LARK | 0x42 | Температура, атмосферное давление, влажность, направление ветра, скорость ветра |
| DFROBOT_RAIN | 0x1d | Счетчик дождя в ведре с наконечником |
| RadSens | 0x66 | Датчик радиации |
| MAX30102 | 0x57 | Частота сердечных сокращений, насыщение организма кислородом и температура тела |
| MLX90614 | 0x5A | Температура тела |
| MLX90632 | 0x3A | Температура тела |
| NAU7802 | 0x2A | 24-разрядный дифференциальный АЦП для моста Уитстона |
Подключаются эти датчики все по I2c к Ноде Meshtastic. Но i2c есть только на нодах с esp32. На nRF52840 нет I2c шины. По этому работать не будет.
i2c включен по умолчанию в прошивках и нам остаётся только найти распиновку Вашего модуля и подключить датчик необходимый.
Описание модулей поддерживаемых Meshtastic можно посмотреть тут: https://meshtastic.org/docs/hardware/devices/
Например под мой модуль Heltec V3 описание тут: https://meshtastic.org/docs/hardware/devices/heltec-automation/lora32/?heltec=v3
И судя по описанию, i2c шина тут находится на пинах:
- SDA: GPIO41
- SCL: GPIO42

При подключении датчика, включении ноды, нужно еще телеметрию включить в настройках:

И включить нужные ползунки и выбрать время обновления:

После чего минут через 5 появятся показания:

Если Вы добавите датчик в Home Assistant, то данные будут и туда передаваться:

Причем со всей статистикой и динамикой:

И это очень удобно. Например у Вас большой участок. И можно не умея программировать, взять 2 ноды. Одну с датчиком температуры отнести на конец участка и принимать показания в Home Assitant на большие расстояния. В прямой видимости и 15 км можно получить.
Но надо сказать еще то, что у меня на одном модуле не работала телеметрия. Не знаю с чем это связано. Модуль был такой: https://meshtastic.org/docs/hardware/devices/heltec-automation/lora32/?heltec=tracker-v1.0
Может из-за встроенного gpis… но телеметрия не поднималась. Пока не купил другой датчик, так и думал, что сложно все с этой телеметрией.