feat(nodes): using an explicit thread, as it may cause the huge battery usage

This commit is contained in:
adrien balleyguier
2026-05-21 10:22:25 +02:00
committed by Klagarge
parent 676913e280
commit dffdcd36db
3 changed files with 21 additions and 6 deletions

View File

@@ -10,9 +10,9 @@
#include "supervisor.h"
int main(void){
supervisor_init();
supervisor_run();
// should never come here
return 0;
}
// size of a stack used by the supervisor thread
#define STACKSIZE 1024
// scheduling priority used by the supervisor thread
#define PRIORITY 7
K_THREAD_DEFINE(supervisor_id, STACKSIZE, thread_supervisor, NULL, NULL, NULL, PRIORITY, 0, 0);

View File

@@ -4,6 +4,16 @@ const int SLEEP_GRANULARITY = 2; // [min]
const int SLEEP_MIN_DURATION = SLEEP_GRANULARITY; // [min]
const int SLEEP_MAX_DURATION = 30; // [min]
// Zephyr related stuff
void thread_supervisor(){
supervisor_init();
supervisor_run();
//should never return
}
// supervisor stuff
enum error_code supervisor_init(){
enum error_code ret = init_failed;
if(

View File

@@ -16,6 +16,11 @@ extern const int SLEEP_GRANULARITY; // [min]
extern const int SLEEP_MIN_DURATION; // [min]
extern const int SLEEP_MAX_DURATION; // [min]
/**
* @brief thread function to run the supervisor in zephyr environment
*/
void thread_supervisor();
/**
* @brief init the supervisor, and thus the complete plein_de_ee application
* @return init_failed upon any error occurring during the initialisation of any module