mirror of
https://github.com/meshtastic/firmware.git
synced 2025-05-10 23:29:25 +00:00

* Refactor GPS to not probe if pins not defined * Use Named Constructor to clean up code * Move doGPSPowerSave to GPS class * Make sure to set GPS awake on triple-click * Cleanup and remove dead code * Rename GPS_PIN_WAKE to GPS_PIN_STANDBY * Actually put GPS to sleep between fixes * add GPS_POWER_TOGGLE for heltec-tracker and t-deck * Change GPS_THREAD_INTERVAL to 200 ms * More dead code, compiler warnings, and add returns * Add Number of sats to log output * Add pgs enable and triple-click config * Track average GPS fix time to judge low-power time * Feed PositionModule on GPS fix * Don't turn off the 3v3_s line on RAK4631 when the rotary is present. * Add GPS power standbyOnly option * Delay setting time currentQuality to avoid strange log message. * Typos, comments, and remove unused variable * Short-circuit the setAwake logic on GPS disable * heltec-tracker 0.3 GPS power saving * set en_gpio to defined state * Fix fixed_position logic with GPS disabled * Don't process GPS serial when not isAwake * Add quirk for Heltec Tracker GPS powersave --------- Co-authored-by: Ben Meadors <benmmeadors@gmail.com> Co-authored-by: mverch67 <manuel.verch@gmx.de> Co-authored-by: Manuel <71137295+mverch67@users.noreply.github.com>
41 lines
1.4 KiB
C++
41 lines
1.4 KiB
C++
#include "UpDownInterruptImpl1.h"
|
|
#include "InputBroker.h"
|
|
|
|
UpDownInterruptImpl1 *upDownInterruptImpl1;
|
|
|
|
UpDownInterruptImpl1::UpDownInterruptImpl1() : UpDownInterruptBase("upDown1") {}
|
|
|
|
bool UpDownInterruptImpl1::init()
|
|
{
|
|
|
|
if (!moduleConfig.canned_message.updown1_enabled) {
|
|
// Input device is disabled.
|
|
return false;
|
|
}
|
|
|
|
uint8_t pinUp = moduleConfig.canned_message.inputbroker_pin_a;
|
|
uint8_t pinDown = moduleConfig.canned_message.inputbroker_pin_b;
|
|
uint8_t pinPress = moduleConfig.canned_message.inputbroker_pin_press;
|
|
|
|
char eventDown = static_cast<char>(meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_DOWN);
|
|
char eventUp = static_cast<char>(meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_UP);
|
|
char eventPressed = static_cast<char>(meshtastic_ModuleConfig_CannedMessageConfig_InputEventChar_SELECT);
|
|
|
|
UpDownInterruptBase::init(pinDown, pinUp, pinPress, eventDown, eventUp, eventPressed, UpDownInterruptImpl1::handleIntDown,
|
|
UpDownInterruptImpl1::handleIntUp, UpDownInterruptImpl1::handleIntPressed);
|
|
inputBroker->registerSource(this);
|
|
return true;
|
|
}
|
|
|
|
void UpDownInterruptImpl1::handleIntDown()
|
|
{
|
|
upDownInterruptImpl1->intDownHandler();
|
|
}
|
|
void UpDownInterruptImpl1::handleIntUp()
|
|
{
|
|
upDownInterruptImpl1->intUpHandler();
|
|
}
|
|
void UpDownInterruptImpl1::handleIntPressed()
|
|
{
|
|
upDownInterruptImpl1->intPressHandler();
|
|
} |