Get Started

Congratulations on taking the first step to developing applications and systems with the Legato Application Framework!

Completing this section will familiarize you with the Legato Application Framework workflow and prepare you to start developing for your target.

Our tools and design patterns have been developed to make it easy to set up your development environment; develop, customize and/or update a system and/or apps; build the Legato runtime for your target; and install the updates on the target.


Setup Development Environment

The first thing to do to get started is to install the Source Code, Tools and do an initial Build of the Application Framework for your target.

Install and Build the Legato Application Framework from GitHub.

Module Description
Install/Build Legato Install the source code and build the framework for a target
Configure SWI Target Configure a Sierra Wireless Target
Configure Raspberry Pi Configure the Legato Application Framework for a Raspberry Pi

Customize, Develop and Update

There are two options for development environments:

  • the Legato Application Framework which contains tools to build systems for your target and configure your target through the command line on Linux.
  • Developer Studio - Sierra Wireless has developed and IDE to use with officially support releases of the WP Smart Modules and runs on both Linux and Windows environments.

Command Line Install

The Legato Application Framework tools are automatically installed and configured when you go through the setup process and make your first build for a target.

To use the tools that are provided with the Framework you need to source the tools into your environment. by either adding configlegatoenv to your bash profile or running bin/legs, which spawns a new shell.

Developer Studio Install

To install Developer Studio follow the instructions on the Sierra Wireless Source.

Developer Mode App

When your target gets shipped to you it may be set up for production use. A number of libraries and settings will be removed from the Framework and the underlying OS because of licensing or security concerns. The Dev Mode app bundles up those libraries and sets configuration and sets the target up for development.

The developer mode app, provides the following tools and settings specific for development:

  • bundles gdbserver executable for use on the target device, allowing step-by-step debugging of Legato apps.
    • sets the probation period of apps to 10 seconds, to prevent aggressive roll-back.
  • holds a wake lock, so the target won't go to sleep when disconnected from USB.
  • removes the boot count file on startup to disable the boot loop detection feature of Legato.
  • runs the tcf-agent, so the target is auto discoverable by Developer Studio.
  • sets firewall rules to allow more permissive network access.

To install devMode on your target follow these install instructions.


Now you are ready to start developing apps and installing them on your target. We first recommend starting with our Tutorials; they walk you through some of the basic concepts and how to create, install and test your first component and application.

Tutorial Description
helloWorld Create a "helloWorld" app and deploying it on a target
Extend helloWorld Create two apps and use IPC to communicate between the apps

Build and Update Target

When you are ready to update your target with the new software that you have created you need to combine it all into a system and then update your target with that system. While you can update each app on a target, it is recommended to build all of your apps together into a cohesive system. When your apps are combined and built into a system it validates inter-app dependencies and conflicts and will help you resolve binding issues at build time instead of at runtime.


The following tutorials walk you through:

  • creating a system containing your sample apps
  • adding in optional kernel modules to your existing system (driver to enable hardware)
  • updating your target to a new system that includes your apps and an example kernel module
Tutorial Description
Legato Systems Create a system using a the default set of Platform Services and the helloWorld and helloIPC apps
Kernel Modules Add an example driver to your system
Update Target Update your target with your new system files

Concepts and Conventions

Now that you are familiar with the basic flow of the Legato Application Framework explore our documentation on our concepts and the programing conventions to create apps and systems with the Legato Application Framework.

Section Description
Definition Files Use Definition Files to build systems, Apps, components and drivers
API Files Work with the API files to develop Apps
C Language Standards C Language Coding Standards

Sample Apps and How To's

Our How To section contains useful articles to walk through some of our advance concepts and tools. There is also a repo of Sample Apps that provide demo apps and apps showing how to connect to and consume specific APIs.

Section Description
How To How To and Troubleshooting articles for common features
Sample Apps Sample Applications