MeshSolarBoard.h 921 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #pragma once
  2. #include <MeshCore.h>
  3. #include <Arduino.h>
  4. #ifdef HELTEC_MESH_SOLAR
  5. #include "meshSolarApp.h"
  6. #endif
  7. // LoRa radio module pins for Heltec T114
  8. #define P_LORA_DIO_1 20
  9. #define P_LORA_NSS 24
  10. #define P_LORA_RESET 25
  11. #define P_LORA_BUSY 17
  12. #define P_LORA_SCLK 19
  13. #define P_LORA_MISO 23
  14. #define P_LORA_MOSI 22
  15. #define SX126X_DIO2_AS_RF_SWITCH true
  16. #define SX126X_DIO3_TCXO_VOLTAGE 1.8
  17. class MeshSolarBoard : public mesh::MainBoard {
  18. protected:
  19. uint8_t startup_reason;
  20. public:
  21. void begin();
  22. uint8_t getStartupReason() const override { return startup_reason; }
  23. uint16_t getBattMilliVolts() override {
  24. return meshSolarGetBattVoltage();
  25. }
  26. const char* getManufacturerName() const override {
  27. return "Heltec Mesh Solar";
  28. }
  29. void reboot() override {
  30. NVIC_SystemReset();
  31. }
  32. bool startOTAUpdate(const char* id, char reply[]) override;
  33. };