Questions tagged [freertos]

FreeRTOS is a portable, open source, real-time operating systems for microcontrollers. It also has some support for microprocessors with memory protection units.

FreeRTOS is a portable, open source, real-time operating systems for microcontrollers. It also has some support for microprocessors with memory protection units. It is designed to be small and simple and consists of only 5 C files and a small portability layer per each unique controller/compiler.

Features

  • Portable - supports 18 toolchains
  • Supports many of the commonly used CPU/MCU architectures including x86, ARM, AVR, AVR32, PIC (PIC24, PIC32, dsPIC), 8051, Z80, PowerPC and more

See also

1097 questions
9
votes
1 answer

Purpose of mtCOVERAGE_TEST_MARKER macro in FreeRTOS

can anyone tell me what it the exact purpose of mtCOVERAGE_TEST_MARKER() macro in FreeRTOS sources? By default it expands to nothing. It is obviously used for some coverage test, but I can't really think of a code that can be universally useful in…
Jędrzej Dudkiewicz
  • 1,053
  • 8
  • 21
8
votes
3 answers

What is the right RTOS for a humanoid robot?

We're students developing a mid-size (~ 4.5 feet tall) humanoid robot as a sponsored research project in college. The major tasks that the robot should be able to perform include: moving around (forward, backward, sideways), running, picking up…
Vicky Chijwani
  • 10,191
  • 6
  • 56
  • 79
8
votes
1 answer

SPI transaction terminates early - ESP-IDF

An ESP32 app using ESP-IDF (ESP32 SDK) communicates with two SPI slaves on the same SPI bus (ILI9341 TFT driver, NRF24L01+ RF transceiver). Overall, it works great. However, some of the data received from the RF transceiver is truncated, i.e. only…
Codo
  • 75,595
  • 17
  • 168
  • 206
8
votes
2 answers

How RTOS does task switching from interrupt

Suppose there is two task running TASK_A and TASK_B. While TASK_A is running an interrupt occurred and a context switch to TASK_B is needed. While inside ISR, TASK_B should not be directly jumped since it is still in ISR and have'nt returned yet…
0xAB1E
  • 721
  • 10
  • 27
8
votes
1 answer

Priority value in FreeRTOS xTaskCreate() method

I can not seem to find what a priority value passed to task creation functions of FreeRTOS mean. If I remember correctly ThreadX uses smaller values for higher priorities i.e task with priority value 1 has higher priority value than task with…
binW
  • 13,220
  • 11
  • 56
  • 69
7
votes
1 answer

acquire a semaphore for the esp32 antenna (bluetooth/wifi dualmode)

I am trying to build a esp32 application, where I have bluetooth and wifi enabled at the same time. Bluetooth is used with the a2dp profile, where the esp is a sink. After receiving the data, it should be published over a UDP socket as a broadcast…
Dimfred
  • 182
  • 2
  • 16
7
votes
1 answer

What are valid values of `HAL_NVIC_SetPriority()` when using STM32 and FreeRTOS?

After a rather difficult process of learning some things about interrupt priority, I am still a bit stuck trying to understand what values I am allowed to call for HAL_NVIC_SetPriority() on the SysTick_IRQn (which is the ISR calling the FreeRTOS…
Gabriel Staples
  • 36,492
  • 15
  • 194
  • 265
7
votes
2 answers

C++ freeRTOS Task, invalid use of non-static member function

Where is the Problem? void MyClass::task(void *pvParameter){ while(1){ this->update(); } } void MyClass::startTask(){ xTaskCreate(this->task, "Task", 2048, NULL, 5, NULL); } But, I get this: error: invalid use of non-static…
NerdEngine
  • 363
  • 4
  • 11
7
votes
1 answer

Shared pointers and queues in FreeRTOS

A C++ wapper around a FreeRTOS queue can be simplified into something like this: template class Queue { public: bool push(const T& item) { return xQueueSendToBack(handle, &item, 0) == pdTRUE; } bool pop(T&…
Per
  • 1,074
  • 6
  • 19
7
votes
1 answer

How to install FreeRTOS on Raspberry Pi?

my goal is to run FreeRTOS from this site on a Raspberry Pi. I have build it using arm-none-eabi-gcc on a Linux machine. Now I have this files/folders: RaspberryPi-FreeRTOS/ ├── build │ ├── Demo │ │ ├── Drivers │ │ │ ├── gpio.d │ │ │…
Alex44
  • 3,597
  • 7
  • 39
  • 56
7
votes
2 answers

Does ISR (Interrupt Service Routine) have a separate stack?

When using an RTOS (ex FreeRTOS), we have separate stack spaces for each thread. So what about ISR (Interrupt Service Routines), does they have a separate stack in the memory? Or is this configurable? If they don't have a stack where the local…
Ginu Jacob
  • 1,588
  • 2
  • 19
  • 35
7
votes
1 answer

FreeRTOS configMINIMAL_STACK_SIZE

In some of the demos for FreeRTOS on cortex M0 MCUs configMINIMAL_STACK_SIZE is set to 60 while on some others it set to 70. Using the STM32Cube software it's set to 128. My question is what is actually the MINIMAL stack size? Looking in the STM32…
evading
  • 3,032
  • 6
  • 37
  • 57
7
votes
1 answer

Why Are Vtables Not Being Implemented Correctly On Embedded Platform?

I am developing code for an embedded system (specifically, the PSoC 5, using PSoC Creator), and writing in C++. While I've overcome most hurdles with using C++ , first off compiling in C++ using the compiler flag -x c++, defining the new and delete…
gbmhunter
  • 1,747
  • 3
  • 23
  • 24
7
votes
1 answer

LwIP - netconn API - Send a TCP packet while the process is blocked?

I am using FreeRTOS + LwIP to develop a Ethernet based bedside nurse call device. After reading some examples and document, I want to use the LwIP's netconn API to send and receive data under TCP, because I am not familiar with the BSD style API and…
eepty
  • 716
  • 3
  • 10
  • 28
6
votes
2 answers

Using Java on FreeRTOS?

Can I use Java on FreeRTOS? If so, are there any good URLs to help me get started? What problems can I expect?
Mawg says reinstate Monica
  • 38,334
  • 103
  • 306
  • 551
1
2
3
73 74