Ported from meshcore-dev/MeshCore#2140 (Quency-D <hj_zzns@163.com>).
The upstream v1.16.0 merge changed the Heltec FEM LNA to disabled by
default (upstream commit 696aae6e). This patch restores the enabled
default for repeater via the new "radio.fem.rxgain" preference
(defaulted to 1), while also making the setting user-configurable
and persisted across reboots.
32 строки
857 B
C++
32 строки
857 B
C++
#pragma once
|
|
|
|
#include <MeshCore.h>
|
|
#include <Arduino.h>
|
|
#include <helpers/NRF52Board.h>
|
|
#include <helpers/RefCountedDigitalPin.h>
|
|
#include "LoRaFEMControl.h"
|
|
|
|
class T096Board : public NRF52BoardDCDC {
|
|
protected:
|
|
#ifdef NRF52_POWER_MANAGEMENT
|
|
void initiateShutdown(uint8_t reason) override;
|
|
#endif
|
|
void variant_shutdown();
|
|
|
|
public:
|
|
RefCountedDigitalPin periph_power;
|
|
LoRaFEMControl loRaFEMControl;
|
|
|
|
T096Board() :periph_power(PIN_VEXT_EN,PIN_VEXT_EN_ACTIVE), NRF52Board("T096_OTA") {}
|
|
void begin();
|
|
|
|
void onBeforeTransmit(void) override;
|
|
void onAfterTransmit(void) override;
|
|
uint16_t getBattMilliVolts() override;
|
|
const char* getManufacturerName() const override ;
|
|
void powerOff() override;
|
|
bool setLoRaFemLnaEnabled(bool enable) override;
|
|
bool canControlLoRaFemLna() const override;
|
|
bool isLoRaFemLnaEnabled() const override;
|
|
};
|