mirror of
https://github.com/meshtastic/firmware.git
synced 2025-07-31 02:45:41 +00:00
Add GPIO edge for Native Trackball/Joystick (#7212)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
This commit is contained in:
parent
81828c6244
commit
b02e58521d
@ -22,5 +22,5 @@ Input:
|
||||
TrackballLeft: 5
|
||||
TrackballRight: 26
|
||||
TrackballPress: 13
|
||||
|
||||
TrackballDirection: FALLING
|
||||
# User: 21
|
||||
|
@ -4,8 +4,13 @@
|
||||
#include "mesh/NodeDB.h"
|
||||
|
||||
#ifndef TB_DIRECTION
|
||||
#if ARCH_PORTDUINO
|
||||
#include "PortduinoGlue.h"
|
||||
#define TB_DIRECTION (PinStatus) settingsMap[tbDirection]
|
||||
#else
|
||||
#define TB_DIRECTION RISING
|
||||
#endif
|
||||
#endif
|
||||
|
||||
class TrackballInterruptBase : public Observable<const InputEvent *>, public concurrency::OSThread
|
||||
{
|
||||
|
@ -642,6 +642,11 @@ bool loadConfig(const char *configPath)
|
||||
settingsMap[tbLeftPin] = yamlConfig["Input"]["TrackballLeft"].as<int>(RADIOLIB_NC);
|
||||
settingsMap[tbRightPin] = yamlConfig["Input"]["TrackballRight"].as<int>(RADIOLIB_NC);
|
||||
settingsMap[tbPressPin] = yamlConfig["Input"]["TrackballPress"].as<int>(RADIOLIB_NC);
|
||||
if (yamlConfig["Input"]["TrackballDirection"].as<std::string>("RISING") == "RISING") {
|
||||
settingsMap[tbDirection] = 4;
|
||||
} else if (yamlConfig["Input"]["TrackballDirection"].as<std::string>("RISING") == "FALLING") {
|
||||
settingsMap[tbDirection] = 3;
|
||||
}
|
||||
}
|
||||
|
||||
if (yamlConfig["Webserver"]) {
|
||||
|
@ -63,6 +63,7 @@ enum configNames {
|
||||
tbLeftPin,
|
||||
tbRightPin,
|
||||
tbPressPin,
|
||||
tbDirection,
|
||||
spidev,
|
||||
spiSpeed,
|
||||
i2cdev,
|
||||
|
Loading…
Reference in New Issue
Block a user