ENTS-tock
Environmental NeTworked Sensor firmware on Tock OS
Loading...
Searching...
No Matches
power.hpp
Go to the documentation of this file.
1
10#ifndef LIB_MODULE_HANDLER_INCLUDE_MODULES_POWER_HPP_
11#define LIB_MODULE_HANDLER_INCLUDE_MODULES_POWER_HPP_
12
13#include <ArduinoLog.h>
14#include <libents/proto/controller.pb.h>
15
16#include "template_module.hpp"
17
28namespace ModuleHandler {
29
30class ModulePower : public Module {
31 public:
33
35
39 void OnReceive(const Esp32Command& cmd);
40
44 size_t OnRequest(uint8_t* buffer);
45
52 void EnterSleep();
53
54 private:
58 void Sleep();
59
63 void Wakeup();
64
66 bool sleep_flag = 0;
67
69 const gpio_num_t wakeup_pin = GPIO_NUM_3;
70
72 uint8_t request_buffer[WiFiCommand_size] = {};
73 size_t request_buffer_len = 0;
74};
75
76} // namespace ModuleHandler
77
82#endif // LIB_MODULE_HANDLER_INCLUDE_MODULES_POWER_HPP_
void OnReceive(const Esp32Command &cmd)
Definition power.cpp:23
void EnterSleep()
Put the esp32 into a deep sleep state if stated.
Definition power.cpp:82
size_t OnRequest(uint8_t *buffer)
Definition power.cpp:51
Class prototype for modules.
uint8_t buffer[32]
Power module for the esp32.