From e0ad7ca823a261070626e60da034464762972ea2 Mon Sep 17 00:00:00 2001 From: Patrick Balsiger Date: Sat, 17 Nov 2018 16:54:06 +0100 Subject: [PATCH] add default subscriptions --- src/inputs/analog/AnalogInputPlugin.cpp | 5 +++++ src/inputs/digital/DigitalInputPlugin.cpp | 5 +++++ src/inputs/rotary/RotaryPlugin.cpp | 6 ++++++ 3 files changed, 16 insertions(+) diff --git a/src/inputs/analog/AnalogInputPlugin.cpp b/src/inputs/analog/AnalogInputPlugin.cpp index 391c0b6..2743fec 100644 --- a/src/inputs/analog/AnalogInputPlugin.cpp +++ b/src/inputs/analog/AnalogInputPlugin.cpp @@ -5,9 +5,14 @@ AnalogInputPlugin::AnalogInputPlugin(GpioConfig cfg){ } void AnalogInputPlugin::activate(Scheduler *userScheduler) { + // add update task inputTask.set(TASK_MILLISECOND * config.updateInterval, TASK_FOREVER, std::bind(&AnalogInputPlugin::checkInput, this)); userScheduler->addTask(inputTask); inputTask.enable(); + + // add dummy subscription + subscribe(config.topic, [](String msg){}); + PRINT_MSG(Serial, "PLUGIN", "AnalogInputPlugin activated"); } diff --git a/src/inputs/digital/DigitalInputPlugin.cpp b/src/inputs/digital/DigitalInputPlugin.cpp index 78b353c..12d407a 100644 --- a/src/inputs/digital/DigitalInputPlugin.cpp +++ b/src/inputs/digital/DigitalInputPlugin.cpp @@ -10,9 +10,14 @@ DigitalInputPlugin::DigitalInputPlugin(GpioConfig cfg) } void DigitalInputPlugin::activate(Scheduler *userScheduler) { + // add update task inputTask.set(TASK_MILLISECOND * config.updateInterval, TASK_FOREVER, std::bind(&DigitalInputPlugin::checkInput, this)); userScheduler->addTask(inputTask); inputTask.enable(); + + // add dummy subscription + subscribe(config.topic, [](String msg){}); + PRINT_MSG(Serial, "PLUGIN", "DigitalInputPlugin activated"); } diff --git a/src/inputs/rotary/RotaryPlugin.cpp b/src/inputs/rotary/RotaryPlugin.cpp index cfe4428..4898827 100644 --- a/src/inputs/rotary/RotaryPlugin.cpp +++ b/src/inputs/rotary/RotaryPlugin.cpp @@ -10,9 +10,15 @@ RotaryPlugin::RotaryPlugin(RotaryConfig cfg) void RotaryPlugin::activate(Scheduler *userScheduler) { + // add update task inputTask.set(TASK_MILLISECOND * config.updateInterval, TASK_FOREVER, std::bind(&RotaryPlugin::checkInput, this)); userScheduler->addTask(inputTask); inputTask.enable(); + + // add dummy subscription + subscribe(config.topic, [](String msg){}); + subscribe(String(config.topic) + "/btn", [](String msg){}); + PRINT_MSG(Serial, "PLUGIN", "RotaryPlugin activated"); }