Real time embedded FreeRTOS RSS feed 
Real time embedded FreeRTOS mailing list 
Homepage FreeRTOS+ Products FreeRTOS Labs Integration Services Contact / Enquiries

FreeRTOS Training
Expert instructor led RTOS training to maximise productivity

Investing in training allows your team to be as productive as possible as early as possible, lowering your overall development cost, and enabling you to bring a more robust product to market earlier than would otherwise be possible.

Two official FreeRTOS training programs are available:

  1. The FreeRTOS Masterclass

    A thorough and always up to date hands-on RTOS course that can be tailored to the specific needs of your corporation. Presented on-site by Richard Barry, CTO of Real Time Engineers Ltd, and the world's leading authority on FreeRTOS.

  2. FreeRTOS - Theory and Practice

    An in-depth hands-on RTOS training that can be delivered online or on-site. Presented by Robert Berger, a real time embedded systems training professional, and Real Time Engineers Ltd. official training partner.




    1 - The FreeRTOS Masterclass

    Description

    A thorough and always up to date hands-on RTOS course that can be tailored to the specific needs of your corporation.

    Presented by Real Time Enigneers Ltd's CTO Richard Barry, who is both the architect and key author of FreeRTOS, and so also the world's leading authority on what is the world's most popular real time kernel for deeply embedded designs.

    Obtaining your training from Richard ensures your team will gain directly from his in-depth and leading edge product knowledge, and years of usage experience.

    Masterclass training can be tailored to your needs, and the hands-on training can be provided on the microcontroller or microprocessor of your choice. FreeRTOS+Trace is used to visualise concepts as they are described.


    Objectives Overview

    The RTOS training is designed to ensure your engineers can be as productive as possible as early as possible. This includes an understanding of when it is appropriate to use an RTOS, how to use FreeRTOS in particular, how to program in a multi-threaded environment, how to use the various features provided by FreeRTOS, and how to detect and avoid common usage and design mistakes.


    Course Details
    Title The FreeRTOS Masterclass
    Delivery On-site
    Duration Tailored, but typically 3 days
    Language English
    Who Should Attend? People with an interest in, or who have been tasked with, development of a resource constrained real-time system. For example, embedded software engineers, field application engineers, project managers, etc.
    Course Material and Equipment The following items are provided:
    • A copy of the training slides
    • Low cost target hardware of your choice, priced extra per board
    • A set of the examples used during the training, along with their solutions
    Please note, we do not permit re-use of our copyright material.
    Prerequisites Attendees should have:
    • A basic familiarity with using a Windows system as an end user
    • Familiarity with embedded C concepts and programming
    • The ability to develop software using the C language
    • The ability to use an embedded compiler and embedded debugging tools
    • Basic knowledge of embedded microcontroller development boards
    Pricing FreeRTOS Masterclasses are tailored to your needs and as such prices vary. Please use the enquiry form to open a discussion of your specific RTOS training requirements.

    RTOS training price enquiry

    Sample Agenda FreeRTOS Masterclasses are tailored to your needs. Below is a sample agenda.
    1. Introductory Topics

      • When it is and is not appropriate to use an RTOS
      • The difference between an OS and an RTOS
      • Scheduling policies used by FreeRTOS
      • What a task (or thread) is
      • What FreeRTOS is, and its market position
      • Licensing options
      • Ecosystem products, including trace tool

    2. Orientation

      • The FreeRTOS directory structure
      • Naming conventions used by FreeRTOS
      • FreeRTOS header files
      • Options for memory allocation

    3. Multitasking in FreeRTOS

      • Tasks and task behavior - including a lab (hands-on) session
      • Inspecting the structure of the lab project
      • The effect of tick-less idling
      • Reentrancy
      • Mutual exclusion techniques - including a lab

    4. Features

      • Task notifications - including a lab
      • Using queues - including a lab
      • Software timers
      • Binary semaphores, counting semaphores
      • Priority inversion
      • Mutexes
      • Queue sets
      • Event groups - including a lab

    5. Interrupt Handling

      • Using FreeRTOS in interrupts
      • Cortex-M3/4/6 interrupt nesting
      • Signalling tasks from interrupts - including a lab
      • Other techniques for deferred interrupt processing

    6. FreeRTOS+CLI

    7. Developer Support

      • Hook functions
      • Stack overflow checking
      • Run time statistics
      • Using asserts
      • Trace macros
      • Resolving common issues

    8. Example application design discussion




    2 - FreeRTOS Theory and Practice

    RTOS training can be delivered online or on-site

    Description

    This 3-day training class uses hands-on exercises combined with instruction to illustrate the concepts of a real-time operating system. FreeRTOS is used as an example. It is designed to bring you up to speed quickly, ensuring maximum project productivity.

    The concepts and commands necessary to make effective use of FreeRTOS are described through a combination of theory and on-the-job training. Learn from an experienced trainer and take away a working knowledge of FreeRTOS and the ability to use it effectively in your own embedded projects.


    Objectives Overview

    Attending an RTOS training class will provide an understanding of RTOS essentials, advantages and trade-offs. Hands-on exercises will provide the practical experience necessary to use an RTOS in your own embedded system development.


    Online or On-site Options

    Online training is cost effective because, without travel and accommodation expenses, fewer trainees are required to cover our costs. Training can be given as a private session, and can be arranged for any mutually convenient time.

    On-site training can also be provided when the number of trainees is high enough. The point at which on-site training becomes cost effective depends on the geographic location.


    RTOS training price enquiry


    Course Details
    Title FreeRTOS in Theory and Practice
    Delivery The course is normally presented online with instructor screen sharing. On-site training can also be provided where attendee numbers make this cost effective.
    Duration Modular, up to three days
    Language Course material is provided in English. Instruction can be provided in either English or German.
    Who Should Attend? People with an interest in, or who have been tasked with, development of a resource constrained real-time system. For example, embedded software engineers, field application engineers, project managers, etc.
    Course Material and Equipment The following items are provided:
    • A bound course book, priced extra per copy
    • Low cost target hardware, typically an LPC1769 LPCXpresso Board, priced extra per board
    • A CD containing the examples and solutions
    Please note, we do not permit re-use of our copyright material.
    Prerequisites Attendees should have:
    • A basic familiarity with using a Windows system as an end user
    • Familiarity with embedded C concepts and programming
    • The ability to develop software using the C language
    • The ability to use an embedded compiler and embedded debugging tools
    • Basic knowledge of embedded microcontroller development boards
    Pricing Private online sessions cost €3700 EUR plus shipping costs for the full three days (approximately $5000 USD plus shipping costs), offering excellent per person per day value for larger groups. The same course can be delivered on-site for the addition of the travel and living expenses incurred. Please use the form below to make an enquiry.

    Public online sessions cost €1250 EUR per person plus shipping costs (approximately $1700 USD plus shipping costs) and are provided as and when enough people have registered an interest in a single time zone band. Please use the form below to register your interest.

    RTOS training price enquiry

    Agenda
    1. Introduction

      • FreeRTOS
        • Overview, market position, free software, open source, the modified GPLv2 license, software architecture, features, hard and soft real-time, the difference between an RTOS and Linux, etc.

      • LPCXpresso
        • Download and install, then import and example workspace
      • Download FreeRTOS

    2. Task Management

      • Tasks
        • What is a task?
        • Crude loop periodic delays, the task parameter, task priorities, task starvation, etc.
        • Task creation, task states, task priorities, the idle task, deleting a task, etc.
        • vTaskDelay(), vTaskDelayUntil(), polling Vs event driven, the idle task hook, etc.

      • Scheduling
        • Determinism, multitasking, endless loops, cyclic executives, issues with using interrupts, preemptive, cooperative, prioritized preemptive, rate monotonic, deadline, cooperative, hybrid
    3. Queue Management

      • What is a queue?
      • Creating a queue, sending to a queue, receive from a queue, etc.
      • Blocking on a queue read, blocking on a queue write
      • Blocking multiple tasks on the same queue
      • Queueing large data items
      • Indirect, direct, synchronous and asynchronous message passing.
    4. Interrupt Management

      • Interrupt Vs. Polling
      • Hardware and software interrupts
      • Interrupts arriving at the same time
      • Reentrancy and reentrant code
      • What is an event?
      • What is a Semaphore and what can it be used for?
      • Signal/Wait pattern, state diagram, states of a binary semaphore, etc.
      • Counting semaphores
      • Queues and interrupt service routines
      • Deferred interrupt processing, interrupt handlers, FreeRTOS interrupt safe API functions, task and interrupt synchronisation, efficient queue usage in interrupts, interrupt nesting, etc.
    5. Resource Management

      • Concurrency, concurrent reading and writing
      • Mutual exclusion, critical sections, suspending the scheduler, mutexes, priority inversion, priority inheritance, deadlock, gate-keeper tasks, mutex vs. semaphore, etc.
    6. Memory Management

      • Types of memory, memory fragmentation, memory exhaustion, memory allocation, dynamic memory allocation in FreeRTOS
      • FreeRTOS memory allocation schemes, xPortGetFreeHeapSize(), etc.
    7. Trouble Shooting

      • Project planning, firmware standard, code review, binutils, etc.
      • Debugging by stopping, the FreeRTOS Simulator, state viewer plugins, etc.
      • printf-stdarg.c, stack overflow detection
      • Heap overflow detection
      • Task statistics, run time statistics
      • profiling, tracing
      • Common errors
    8. FreeRTOS-MPU

      • Memory management
      • User and privileged modes, access permissions, defining MPU regions, configuration required by the linker, usage tips
      • Find out why a program failed


    RTOS Training Enquiry Form

    Please complete the form below so we can assess how best to meet your training needs.





[ Back to the top ]    [ About FreeRTOS ]    [ FreeRTOS+ Sitemap ]    [ Main FreeRTOS Sitemap ]    [ ]


Copyright (C) 2004-2010 Richard Barry. Copyright (C) 2010-2015 Real Time Engineers Ltd.
Any and all data, files, source code, html content and documentation included in the FreeRTOSTM distribution or available on this site are the exclusive property of Real Time Engineers Ltd.. See the files license.txt (included in the distribution) and this copyright notice for more information. FreeRTOSTM and FreeRTOS.orgTM are trade marks of Real Time Engineers Ltd.