mirror of
https://github.com/BotChain-Robots/firmware.git
synced 2026-07-08 17:47:21 +02:00
RPC calls
This commit is contained in:
@@ -6,6 +6,8 @@
|
||||
#define LOOPMANAGER_H
|
||||
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
#include <cstdint>
|
||||
|
||||
#include "MessagingInterface.h"
|
||||
#include "control/ActuatorFactory.h"
|
||||
@@ -15,7 +17,18 @@ class LoopManager {
|
||||
public:
|
||||
LoopManager() : m_config_manager(ConfigManager::get_instance()),
|
||||
m_messaging_interface(std::make_unique<MessagingInterface>()),
|
||||
m_actuator(ActuatorFactory::create_actuator(m_config_manager.get_module_type())) {}
|
||||
m_actuator(ActuatorFactory::create_actuator(m_config_manager.get_module_type())) {
|
||||
|
||||
// todo: temporary demo register_function call.
|
||||
const auto function_tag = 100;
|
||||
m_messaging_interface->register_function(function_tag, [](const uint8_t *parameters, size_t parameter_size, Writer& writer) {
|
||||
ESP_LOGI("TMP", "%s", (char*)parameters);
|
||||
std::string msg = "Hello from board!";
|
||||
std::vector<uint8_t> return_value(msg.begin(), msg.end());
|
||||
writer.write(return_value);
|
||||
});
|
||||
}
|
||||
|
||||
[[noreturn]] void control_loop() const; // gets control commands
|
||||
[[noreturn]] static void sensor_loop(char * args); // sends sensor data commands continually
|
||||
[[noreturn]] static void metadata_tx_loop(char * args); // sends metadata continually (low duty cycle)
|
||||
|
||||
Reference in New Issue
Block a user