Development with the Gecko OS API

This section covers the details of writing a Gecko OS app (App) in the C programming language using the Gecko OS API.

For overview material, see:

Development Workflow

The Gecko OS Studio (GSS) manages downloading the Gecko OS SDK for your platform, and provides example applications to get you started. See:

For example applications, see:

App Size Limits and Optimization

Gecko OS Apps execute from the MCU's internal flash. The flash available for an App depends on the hardware platform.

The size of an App's executable/read-only code may not exceed these values.

The implementation of Gecko OS APIs is included in Gecko OS. API calls only reference the Gecko OS implementations. This greatly reduces the required size of a Gecko OS App.

To optimize the size of a Gecko OS App, wherever possible use:

File Size Limit

There is no limit to the size of an individual file other than the size of the extended or bulk serial flash connected to the Gecko OS hardware. Bulk serial flash up to 128MBytes may be used.

Files are typically opened and written to completion with the size known a-priori, however the file log API provides the option to append to an existing file which is useful for data logging. The minimum size of a file is 4KByte.

See the File System description and the File System API for additional information.

For log file format, see File System, Log Files.

SDK Profiler Utility

The SDK Profiler Utility captures timing data for delimited sections of code. The profiler reporting layout is determined by defining named profilers, which can be nested, and referring to a named profiler in the PROFILER_BEGIN and PROFILER_END macros that delimit a code section.

The utility/profiler example app demonstrates how to use the profiler. This example app also demonstrates using event handling and state management to manage reporting, and creating custom commands.