Mirror/fork of freertos kernel
Find a file
Archit Aggarwal ac5bf3b934
Update coreSNTP submodule and coreSNTP demo (#631)
Update the coreSNTP submodule to the latest commit. Also, make updates to the coreSNTP demo for the new changes in the SNTP library which include the following:

1. Update to the type for packet size from size_t to uint16_t for parameters in the transport and authentication interfaces.
2. Change in the call to Sntp_SendTimeRequest API to pass the new blockTimeMs parameter added to the API.
3. Update to the clock-offfset type from int32_t to int64_t for representing information in milliseconds. To accommodate this update in the SntpSetTime_t interface, the mathematical model for representing system clock has been updated to store slew rate as milliseconds/second (instead of second/second). This change improves the accuracy of the WinSim demo time correction (because the milliseconds of time difference between server and client time is corrected over the entire polling interval which makes a significant difference!).

This PR also adds demo config macros for setting the block time values passed to the Sntp_SendTimeRequest and Sntp_ReceiveTimeResponse APIs.
2021-06-25 12:19:00 -07:00
.github Bump urllib3 from 1.26.4 to 1.26.5 in /.github/scripts/common (#617) 2021-06-02 09:29:22 -07:00
FreeRTOS Fix Bug from Issue #565 (#629) 2021-06-21 17:39:10 -07:00
FreeRTOS-Plus Update coreSNTP submodule and coreSNTP demo (#631) 2021-06-25 12:19:00 -07:00
tools Merge FreeRTOS 202104.00 to main (#585) 2021-04-29 14:53:40 -07:00
.editorconfig Add unity memory extension, fake_assert, and enable -fsanitize=address (#506) 2021-02-18 10:15:01 -08:00
.gitignore Blocklist certificate files in .gitignore (#498) 2021-02-09 12:09:14 -08:00
.gitmodules Add new submodules for port demo contribution (#628) 2021-06-21 10:42:23 -07:00
FreeRTOS+TCP.url Update version number in +TCP code. 2019-02-21 18:08:36 +00:00
GitHub-FreeRTOS-Home.url Maintenance -- clean up readme.txt and add url to GitHub. (#38) 2020-03-17 19:30:02 -07:00
History.txt Merge FreeRTOS 202104.00 to main (#585) 2021-04-29 14:53:40 -07:00
lexicon.txt Update coreSNTP submodule and coreSNTP demo (#631) 2021-06-25 12:19:00 -07:00
LICENSE.md Updated contributions guidelines (#12) 2020-02-12 23:00:18 -08:00
manifest.yml Add new demo submodules to manifest.yml (#630) 2021-06-21 17:12:33 -07:00
Quick_Start_Guide.url Add quick start guide. 2013-04-30 19:37:00 +00:00
README.md Add some hyperlinks for the recently concluded FreeRTOS 202104.00 release (#588) 2021-05-06 13:09:09 -07:00
Upgrading to FreeRTOS V10.3.0.url 2020-02-07 21:49:55 +00:00
Upgrading-to-FreeRTOS-9.url Add Pearl Gecko demo. 2016-03-02 16:03:25 +00:00
Upgrading-to-FreeRTOS-10.url Update to MIT licensed FreeRTOS V10.0.0 - see https://www.freertos.org/History.txt 2017-11-29 16:53:26 +00:00
Upgrading-to-FreeRTOS-V10.4.0.url Added some URL files and move submodule pointer along (#254) 2020-09-09 14:31:07 -07:00

The FreeRTOS 202104.00 release introduces the new coreMQTT Agent library, and includes all the Long-Term Support (LTS) libraries that are part of the FreeRTOS-LTS 202012.01-LTS release. Learn more about the FreeRTOS 202012.01 LTS libraries at https://freertos.org/lts-libraries.html.

Getting started

The FreeRTOS.org website contains a FreeRTOS Kernel Quick Start Guide, a list of supported devices and compilers, the API reference, and many other resources.

Getting help

You can use your Github login to get support from both the FreeRTOS community and directly from the primary FreeRTOS developers on our active support forum. The FAQ provides another support resource.

Cloning this repository

This repo uses Git Submodules to bring in dependent components.

Note: If you download the ZIP file provided by the GitHub UI, you will not get the contents of the submodules. (The ZIP file is also not a valid git repository)

If using Windows, set core.symlinks to true since copying a directory with symlinks may cause hangups:

git config --global core.symlinks true

To clone using HTTPS:

git clone https://github.com/FreeRTOS/FreeRTOS.git --recurse-submodules

Using SSH:

git clone git@github.com:FreeRTOS/FreeRTOS.git --recurse-submodules

If you have downloaded the repo without using the --recurse-submodules argument, you need to run:

git submodule update --init --recursive

Repository structure

This repository contains the FreeRTOS Kernel, a number of supplementary libraries including the LTS ones, and a comprehensive set of example projects. Many libraries (including the FreeRTOS kernel) are included as Git submodules from their own Git repositories.

Kernel source code and example projects

FreeRTOS/Source contains the FreeRTOS kernel source code (submoduled from https://github.com/FreeRTOS/FreeRTOS-Kernel).

FreeRTOS/Demo contains pre-configured example projects that demonstrate the FreeRTOS kernel executing on different hardware platforms and using different compilers.

Supplementary library source code and example projects

FreeRTOS-Plus/Source contains source code for additional FreeRTOS component libraries, as well as select partner provided libraries. These subdirectories contain further readme files and links to documentation.

FreeRTOS-Plus/Demo contains pre-configured example projects that demonstrate the FreeRTOS kernel used with the additional FreeRTOS component libraries.

Previous releases

Releases contains older FreeRTOS releases.

FreeRTOS Lab Projects

FreeRTOS Lab projects are libraries and demos that are fully functional, but may be experimental or undergoing optimizations and refactorization to improve memory usage, modularity, documentation, demo usability, or test coverage.

Most FreeRTOS Lab libraries can be found in the FreeRTOS-Labs repository.

A number of FreeRTOS Lab Demos can be found in the FreeRTOS Github Organization by searching for "Lab" or following this link to the search results.

coreMQTT Agent Demos

The FreeRTOS/coreMQTT-Agent-Demos repository contains demos to showcase use of the coreMQTT-Agent library to share an MQTT connection between multiple application tasks.

The demos show a single MQTT connection usage between multiple application tasks for interacting with AWS services (including Over-the-air-Updates, Device Shadow, Device Defender) alongside performing simple Publish-Subscribe operations.