diff --git a/src/main/fc/tasks.c b/src/main/fc/tasks.c index 972b09bee5..2de90bf05f 100644 --- a/src/main/fc/tasks.c +++ b/src/main/fc/tasks.c @@ -325,7 +325,7 @@ task_id_t task_ids[TASK_COUNT] = { #endif #ifdef USE_STACK_CHECK - [TASK_STACK_CHECK] = DEFINE_TASK("STACKCHECK", NULL, NULL, taskStackCheck, TASK_PERIOD_HZ(10), TASK_PRIORITY_IDLE), + [TASK_STACK_CHECK] = DEFINE_TASK("STACKCHECK", NULL, NULL, taskStackCheck, TASK_PERIOD_HZ(10), TASK_PRIORITY_LOWEST), #endif [TASK_GYRO] = DEFINE_TASK("GYRO", NULL, NULL, taskGyroSample, TASK_GYROPID_DESIRED_PERIOD, TASK_PRIORITY_REALTIME), @@ -375,7 +375,7 @@ task_id_t task_ids[TASK_COUNT] = { #endif #ifdef USE_BST - [TASK_BST_MASTER_PROCESS] = DEFINE_TASK("BST_MASTER_PROCESS", NULL, NULL, taskBstMasterProcess, TASK_PERIOD_HZ(50), TASK_PRIORITY_IDLE), + [TASK_BST_MASTER_PROCESS] = DEFINE_TASK("BST_MASTER_PROCESS", NULL, NULL, taskBstMasterProcess, TASK_PERIOD_HZ(50), TASK_PRIORITY_LOWEST), #endif #ifdef USE_ESC_SENSOR @@ -387,7 +387,7 @@ task_id_t task_ids[TASK_COUNT] = { #endif #ifdef USE_VTX_CONTROL - [TASK_VTXCTRL] = DEFINE_TASK("VTXCTRL", NULL, NULL, vtxUpdate, TASK_PERIOD_HZ(5), TASK_PRIORITY_IDLE), + [TASK_VTXCTRL] = DEFINE_TASK("VTXCTRL", NULL, NULL, vtxUpdate, TASK_PERIOD_HZ(5), TASK_PRIORITY_LOWEST), #endif #ifdef USE_RCDEVICE @@ -395,23 +395,23 @@ task_id_t task_ids[TASK_COUNT] = { #endif #ifdef USE_CAMERA_CONTROL - [TASK_CAMCTRL] = DEFINE_TASK("CAMCTRL", NULL, NULL, taskCameraControl, TASK_PERIOD_HZ(5), TASK_PRIORITY_IDLE), + [TASK_CAMCTRL] = DEFINE_TASK("CAMCTRL", NULL, NULL, taskCameraControl, TASK_PERIOD_HZ(5), TASK_PRIORITY_LOWEST), #endif #ifdef USE_ADC_INTERNAL - [TASK_ADC_INTERNAL] = DEFINE_TASK("ADCINTERNAL", NULL, NULL, adcInternalProcess, TASK_PERIOD_HZ(1), TASK_PRIORITY_IDLE), + [TASK_ADC_INTERNAL] = DEFINE_TASK("ADCINTERNAL", NULL, NULL, adcInternalProcess, TASK_PERIOD_HZ(1), TASK_PRIORITY_LOWEST), #endif #ifdef USE_PINIOBOX - [TASK_PINIOBOX] = DEFINE_TASK("PINIOBOX", NULL, NULL, pinioBoxUpdate, TASK_PERIOD_HZ(20), TASK_PRIORITY_IDLE), + [TASK_PINIOBOX] = DEFINE_TASK("PINIOBOX", NULL, NULL, pinioBoxUpdate, TASK_PERIOD_HZ(20), TASK_PRIORITY_LOWEST), #endif #ifdef USE_RANGEFINDER - [TASK_RANGEFINDER] = DEFINE_TASK("RANGEFINDER", NULL, NULL, taskUpdateRangefinder, TASK_PERIOD_HZ(10), TASK_PRIORITY_IDLE), + [TASK_RANGEFINDER] = DEFINE_TASK("RANGEFINDER", NULL, NULL, taskUpdateRangefinder, TASK_PERIOD_HZ(10), TASK_PRIORITY_LOWEST), #endif #ifdef USE_CRSF_V3 - [TASK_SPEED_NEGOTIATION] = DEFINE_TASK("SPEED_NEGOTIATION", NULL, NULL, speedNegotiationProcess, TASK_PERIOD_HZ(100), TASK_PRIORITY_IDLE), + [TASK_SPEED_NEGOTIATION] = DEFINE_TASK("SPEED_NEGOTIATION", NULL, NULL, speedNegotiationProcess, TASK_PERIOD_HZ(100), TASK_PRIORITY_LOWEST), #endif }; @@ -573,3 +573,4 @@ void tasksInit(void) setTaskEnabled(TASK_SPEED_NEGOTIATION, useCRSF); #endif } + diff --git a/src/main/scheduler/scheduler.h b/src/main/scheduler/scheduler.h index 45436be9d7..fb379acba0 100644 --- a/src/main/scheduler/scheduler.h +++ b/src/main/scheduler/scheduler.h @@ -56,8 +56,8 @@ typedef enum { TASK_PRIORITY_REALTIME = -1, // Task will be run outside the scheduler logic - TASK_PRIORITY_IDLE = 0, // Disables dynamic scheduling, task is executed only if no other task is active this cycle - TASK_PRIORITY_LOW = 1, + TASK_PRIORITY_LOWEST = 1, + TASK_PRIORITY_LOW = 2, TASK_PRIORITY_MEDIUM = 3, TASK_PRIORITY_MEDIUM_HIGH = 4, TASK_PRIORITY_HIGH = 5,