FreeRTOS Upgrade for ATmel XMEGA256D3

guggech wrote on Tuesday, January 07, 2014:

I am using the FreeRtos V6.0.4 with an Atmel xmega256D3 processor. What are the benefits to upgrade to version V7.x or V8.x?

Thanks you.


rtel wrote on Tuesday, January 07, 2014:

First I would say - there isn’t actually an official XMega port, so I assume you created the port yourself or obtained it from the web somewhere (there are several about - FreeRTOS currently only have a MegaAVR not an XMega). Therefore I will ignore the port layer in the info below, in any which case most work in the port layers has been for 32-bit parts rather than 8-bit parts.

A full version history can always be found here: You can just look at the description major version number changes to get an idea.

The major advance between V6 and V7 was the introduction of Software Timers. They could potentially be of benefit to you if you can replace some tasks with much lighter weight software timer callback functions. I can imagine that would be beneficial on [relatively speaking] resource limited cores such as the XMega, but only you know if there are any opportunities to exploit this in your application.

The major advance between V7 and V8 would be the event groups. Again, event groups can be beneficial in resource limited systems if you can replace multiple binary semaphores with a single event group. Not only can each bit in the event group be effectively used as a binary semaphore, but event groups are just less resource intensive anyway.