mirror of
https://github.com/meshcore-dev/MeshCore.git
synced 2026-04-25 08:52:24 +00:00
40 lines
992 B
C++
40 lines
992 B
C++
#pragma once
|
|
|
|
#include <Arduino.h>
|
|
#include <helpers/RefCountedDigitalPin.h>
|
|
#include <helpers/ESP32Board.h>
|
|
#include <driver/rtc_io.h>
|
|
#include "LoRaFEMControl.h"
|
|
|
|
#ifndef ADC_MULTIPLIER
|
|
#define ADC_MULTIPLIER 5.42
|
|
#endif
|
|
|
|
class HeltecV4Board : public ESP32Board {
|
|
|
|
protected:
|
|
float adc_mult = ADC_MULTIPLIER;
|
|
|
|
public:
|
|
RefCountedDigitalPin periph_power;
|
|
LoRaFEMControl loRaFEMControl;
|
|
HeltecV4Board() : periph_power(PIN_VEXT_EN,PIN_VEXT_EN_ACTIVE) { }
|
|
|
|
void begin();
|
|
void onBeforeTransmit(void) override;
|
|
void onAfterTransmit(void) override;
|
|
void enterDeepSleep(uint32_t secs, int pin_wake_btn = -1);
|
|
void powerOff() override;
|
|
uint16_t getBattMilliVolts() override;
|
|
bool setAdcMultiplier(float multiplier) override {
|
|
if (multiplier == 0.0f) {
|
|
adc_mult = ADC_MULTIPLIER;
|
|
} else {
|
|
adc_mult = multiplier;
|
|
}
|
|
return true;
|
|
}
|
|
float getAdcMultiplier() const override { return adc_mult; }
|
|
const char* getManufacturerName() const override;
|
|
};
|