Files
UA1ZBE 40c9633238
Some checks failed
Build and deploy Docs site to GitHub Pages / github-pages (push) Has been cancelled
PR Build Check / build (Heltec_v3_companion_radio_ble) (push) Has been cancelled
PR Build Check / build (Heltec_v3_repeater) (push) Has been cancelled
PR Build Check / build (Heltec_v3_room_server) (push) Has been cancelled
PR Build Check / build (LilyGo_Tlora_C6_repeater_) (push) Has been cancelled
PR Build Check / build (PicoW_repeater) (push) Has been cancelled
PR Build Check / build (RAK_4631_companion_radio_ble) (push) Has been cancelled
PR Build Check / build (RAK_4631_repeater) (push) Has been cancelled
PR Build Check / build (RAK_4631_room_server) (push) Has been cancelled
PR Build Check / build (wio-e5-mini_repeater) (push) Has been cancelled
Добавлена прошивка Beacon Sensor для Heltec T114
- Новый пример examples/beacon_sensor/ на основе companion_radio
- Автоматическая отправка flood-объявления каждые 15 минут
- ADV_TYPE_CHAT, ретрансляция через mesh-сеть
- Поддержка BMP280 по I2C (Wire1, SDA=7, SCL=8)
- Новые build-варианты в variants/heltec_t114/platformio.ini:
  - Heltec_t114_without_display_beacon_sensor_ble
  - Heltec_t114_without_display_beacon_sensor_usb
  - Heltec_t114_beacon_sensor_ble (с дисплеем)
  - Heltec_t114_beacon_sensor_usb (с дисплеем)
- Радиопараметры: 868.731 MHz, SF7, BW62.5, CR7, path hash 1 байт

Инструкция по прошивке:
1. pio run -e Heltec_t114_without_display_beacon_sensor_ble -t create_uf2
2. Зажми BOOT на T114, подключи USB, появится диск T114
3. Перетащи firmware.uf2 на диск
2026-06-05 09:35:09 +03:00

47 lines
1.2 KiB
C++

#pragma once
#include <MeshCore.h>
#include <helpers/ui/DisplayDriver.h>
#include <helpers/ui/UIScreen.h>
#include <helpers/SensorManager.h>
#include <helpers/BaseSerialInterface.h>
#include <Arduino.h>
#ifdef PIN_BUZZER
#include <helpers/ui/buzzer.h>
#endif
#include "NodePrefs.h"
enum class UIEventType {
none,
contactMessage,
channelMessage,
roomMessage,
newContactMessage,
ack
};
class AbstractUITask {
protected:
mesh::MainBoard* _board;
BaseSerialInterface* _serial;
bool _connected;
AbstractUITask(mesh::MainBoard* board, BaseSerialInterface* serial) : _board(board), _serial(serial) {
_connected = false;
}
public:
void setHasConnection(bool connected) { _connected = connected; }
bool hasConnection() const { return _connected; }
uint16_t getBattMilliVolts() const { return _board->getBattMilliVolts(); }
bool isSerialEnabled() const { return _serial->isEnabled(); }
void enableSerial() { _serial->enable(); }
void disableSerial() { _serial->disable(); }
virtual void msgRead(int msgcount) = 0;
virtual void newMsg(uint8_t path_len, const char* from_name, const char* text, int msgcount) = 0;
virtual void notify(UIEventType t = UIEventType::none) = 0;
virtual void loop() = 0;
};