SDK Download

Overview

The FreeRTOS SDK for Realtek Ameba-IoT SoC is divided into basic SDK and extended XDK. It is mirrored on both GitHub and Gitee, enabling easy access and download for users both domestically and internationally.

The basic SDK integrates essential features such as Wi-Fi and Bluetooth (BT), serving as a fundamental platform for development.

The extended XDK supports advanced modules like AI Voice, TensorFlow Lite (tflite), GUI, and audio processing, further meeting diverse application requirements.

SDK Clone

GitHub:

SDK is mirrored on GitHub: https://github.com/Ameba-AIoT/ameba-rtos. XDK is maintained in a separate git repository and is included as a submodule in the base SDK.

  • Basic SDK clone command:

    git clone --depth=5 https://github.com/Ameba-AIoT/ameba-rtos.git
    
  • XDK clone command:

    git clone --recursive --depth=5 --shallow-submodules https://github.com/Ameba-AIoT/ameba-rtos.git
    

Note

The –depth parameter specifies the depth of a shallow clone; and –depth=5 fetches only the most recent five commits. The –shallow-submodules parameter means shallow cloning of submodules. Setting –depth during cloning can significantly improve fetch speed. If you need to view the full commit history, run the following command in the repository directory:

git fetch --unshallow

SDK versions

The ameba-rtos GitHub repository is continuously updated, with the master branch primarily used for the development of new features and having a higher update frequency.

For mass production or when stability is required, it is recommended to use a stable branch or an officially released version.

SDK Branches and Features

Currently, the SDK includes the following two types of branches:

Branch

Feature

master branch

  • Mainly used for developing new features, with a high update frequency

  • Adds support for new ICs

release branches

  • Stable branches, mainly used for bug fixes and a small number of new features, with a low update frequency

  • After the creation of a release branch, the supported IC list of this branch will not be updated

  • For example: release/v1.1

Each branch has its corresponding documentation. For details, please refer to the SDK documentation page, and select the appropriate version according to your current branch.

SDK Releases and Features

We regularly perform manual and automated verification for all branches. Once all verification tests and fixes are complete, an official release will be published.

For the complete list of releases and release notes, please refer to the Release Notes page.

Versioning Scheme

The ameba-rtos SDK uses a MAJOR.MINOR.PATCH versioning scheme:

  • MAJOR: Incremented for major changes that are not backward compatible with previous APIs

  • MINOR: Incremented for new features or bug fixes that are backward compatible with existing APIs

  • PATCH: Incremented only for bug fixes

You can check the version in two ways:

  • The component/soc/common/include/ameba_rtos_version.h file under each branch directory defines the current SDK version.

  • You can also query the current version via the AT command AT+GMR.

Support Period

Each official version of ameba-rtos is supported for 24 months. After the support period expires, the version will no longer receive updates or maintenance support.

Branches Updates

Branches update follow the steps below:

  1. Navigate to the root directory of ameba-rtos:

cd ameba-rtos
  1. Update the current branch to the latest:

git pull
  1. (XDK only) Update submodules:

git submodule update --init --recursive

Releases Updating and Switching

Please check the Release Notes page regularly to get the latest release information. To upgrade or switch to a release version, follow these steps:

  1. Navigate to the root directory of ameba-rtos:

cd ameba-rtos
  1. Fetch all remote branches and tag information:

git fetch

If the repository is a shallow clone, execute:

git fetch --tags
  1. View all release versions:

git tag
  1. Switch locally to a specified release version:

git checkout vX.Y.Z