- ESP32Board: общий механизм adcMultiplierBase()/adcMultiplier(); setAdcMultiplier возвращает false только там, где батарея измеряется не через ADC - платы со своей формулой переведены на общий механизм: Heltec E213/E290/T190, heltec_tracker_v2, Heltec v2, ThinkNode M2/M5; Station G2/G3 и T-Beam сообщают, что подстройка не поддерживается - мастер настройки: поле ADC стартует от действующего значения платы (getAdcMultiplier) и работает с тремя знаками (x.xxx), например 5.420; 0.000 возвращает заводское значение платы - Meshadventurer: добавлена поддержка множителя (раньше делитель был зашит числом 2 и set adc.multiplier отвечал Error: unsupported) - экран загрузки: meshcore.io, версия с датой и posadmesh.ru; строка < Repeater > убрана Проверено сборкой: heltec_v4_repeater_mqtt, Meshadventurer_sx1262_repeater_mqtt
32 lines
939 B
C++
32 lines
939 B
C++
#pragma once
|
|
|
|
#include <Arduino.h>
|
|
#include <helpers/RefCountedDigitalPin.h>
|
|
#include <helpers/ESP32Board.h>
|
|
#include "LoRaFEMControl.h"
|
|
|
|
class HeltecTrackerV2Board : public ESP32Board {
|
|
KeyValueStore* _prefs = NULL;
|
|
|
|
bool setLoRaFemLnaEnabled(bool enable);
|
|
bool isLoRaFemLnaEnabled() const;
|
|
|
|
public:
|
|
RefCountedDigitalPin periph_power;
|
|
LoRaFEMControl loRaFEMControl;
|
|
|
|
HeltecTrackerV2Board() : periph_power(PIN_VEXT_EN,PIN_VEXT_EN_ACTIVE) { }
|
|
|
|
void begin();
|
|
void attachDynamicPrefs(KeyValueStore* prefs);
|
|
bool handleCommand(const char* command, uint32_t sender_timestamp, char* reply) override;
|
|
|
|
void onBeforeTransmit(void) override;
|
|
void onAfterTransmit(void) override;
|
|
void powerOff() override;
|
|
float adcMultiplierBase() const override { return 5.42f; } // заводской множитель делителя
|
|
uint16_t getBattMilliVolts() override;
|
|
const char* getManufacturerName() const override ;
|
|
|
|
};
|