summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcooljqln <cooljqln@noreply.codeberg.org>2025-03-05 02:19:55 +0000
committercooljqln <cooljqln@noreply.codeberg.org>2025-03-05 02:19:55 +0000
commit1d1cae2a82f5cc2596025da7d2c3f3a49cf59012 (patch)
treee87eed9c2b21db2d0b9b2bf28c8aa9c9ad9607c2
parent048f86676ee455b3cb653a97ab900d41f2ec19b2 (diff)
parent22a44e48bc12ad39916017f0d54b85c981fb7c41 (diff)
downloadtangara-fw-1d1cae2a82f5cc2596025da7d2c3f3a49cf59012.tar.gz
Merge pull request 'add bt_forget console command' (#289) from tahnok/tangara-fw:bt_forget into main
Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/289
-rw-r--r--src/tangara/app_console/app_console.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/tangara/app_console/app_console.cpp b/src/tangara/app_console/app_console.cpp
index 2a8f290b..8a3df7c3 100644
--- a/src/tangara/app_console/app_console.cpp
+++ b/src/tangara/app_console/app_console.cpp
@@ -479,6 +479,35 @@ void RegisterBtList() {
esp_console_cmd_register(&cmd);
}
+int CmdBtForget(int argc, char** argv) {
+ static const std::pmr::string usage = "usage: bt_forget <index>";
+ if (argc != 2) {
+ std::cout << usage << std::endl;
+ return 1;
+ }
+
+ auto devices = AppConsole::sServices->bluetooth().knownDevices();
+ int index = std::atoi(argv[1]);
+ if (index < 0 || index >= devices.size()) {
+ std::cout << "index out of range" << std::endl;
+ return -1;
+ }
+
+ AppConsole::sServices->bluetooth().forgetKnownDevice(devices[index].mac);
+ std::cout << "Device '" << devices[index].name << "' forgotten" << std::endl;
+ return 0;
+}
+
+void RegisterBtForget() {
+ esp_console_cmd_t cmd{
+ .command = "bt_forget",
+ .help = "removes a bluetooth device from known devices list",
+ .hint = "index",
+ .func = &CmdBtForget,
+ .argtable = NULL};
+ esp_console_cmd_register(&cmd);
+}
+
int CmdSamd(int argc, char** argv) {
static const std::pmr::string usage = "usage: samd [flash|charge|off]";
if (argc != 2) {
@@ -739,6 +768,7 @@ auto AppConsole::RegisterExtraComponents() -> void {
#endif
RegisterBtList();
+ RegisterBtForget();
RegisterSamd();
RegisterCoreDump();