TechoCardBoard.h 883 B

12345678910111213141516171819202122232425262728293031323334
  1. #pragma once
  2. #include <MeshCore.h>
  3. #include <Arduino.h>
  4. #include <helpers/NRF52Board.h>
  5. #include <Adafruit_Neopixel.h>
  6. // built-ins
  7. #define VBAT_MV_PER_LSB (0.73242188F) // 3.0V ADC range and 12-bit ADC resolution = 3000mV/4096
  8. #define VBAT_DIVIDER (0.5F) // Even voltage divider on VBAT
  9. #define VBAT_DIVIDER_COMP (2.0F) // Compensation factor for the VBAT divider
  10. #define PIN_VBAT_READ (2)
  11. #define REAL_VBAT_MV_PER_LSB (VBAT_DIVIDER_COMP * VBAT_MV_PER_LSB)
  12. class TechoCardBoard : public NRF52BoardDCDC {
  13. public:
  14. TechoCardBoard() : NRF52Board("TECHO_OTA") {}
  15. void begin();
  16. uint16_t getBattMilliVolts() override;
  17. void onBeforeTransmit(void) override;
  18. void onAfterTransmit(void) override;
  19. const char* getManufacturerName() const override {
  20. return "LilyGo T-Echo Card";
  21. }
  22. void powerOff() override;
  23. void turnOffLeds();
  24. };