QUARC Linux DuoVero 2016 Target QUARC Linux Raspberry Pi Generic Target navigation bar

Table of Contents

QUARC Linux Overo Target

One of the target types supported by QUARC is the Linux Overo target. The Linux Overo target currently supports OpenEmbedded (OE) Linux running on a gumstix™ Overo board. This section provides a general description of the Linux Overo target in addition to limitations and requirements for this target type. Please use the following list to refer to each topic:

Description

The QUARC Linux Overo target currently supports the OpenEmbedded Linux Operating System (OS) running on a gumstix Overo board. A gumstix Overo board is a full-function miniature computer built and sold by Gumstix, Inc. (www.gumstix.com). There are a variety of gumstix Overo variants available, such as the Overo Earth, Overo Fire, Overo Tide, Overo Water and Overo Air. While the detailed specifications differ, each Overo motherboard has an OMAP35xx processor, which is an ARM Cortex-A8™ CPU. The different variants have varying RAM and flash memory support, but there is typically at least 256 MB of RAM and 256 MB of flash (except the Overo Tide). The processor clock speed is either 600 MHz or 720 MHz. The full set of specifications may be found by following the links to the Overo of interest at https://www.gumstix.com/catalogsearch/result/index/?p=2&q=overo. The small form factor of the gumstix makes it very attractive to use for, for example, Unmanned Aerial Vehicle (UAV) applications.

The Linux Overo target is a soft real-time system. The OE Linux operating system is not designed to guarantee that events are always processed within a particular timeframe, as in a hard real-time system. Thus, if an operation misses its deadline, it is considered "less" than correct but not an application or system failure. The system simply tolerates the missed deadline and performs the operation with delay. In real-time applications, this behaviour is undesirable since all operations must meet their deadlines. In particular, real-time control applications expect the sampling rate of the controller to be maintained, and no samples to be missed.

To minimize the delays in processing real-time events, the QUARC Linux Overo target assigns the highest possible priority to a model's real-time code. The threads of the real-time code will preempt the threads of all other processes, including operating system processes performing important tasks, such as networking. Hence, a real-time process that executes for more than a brief interval may cause for example networking to be unresponsive.

Please keep in mind that using QUARC with a Linux Overo target still requires a Windows host. Details on this requirement are given in the Requirements section of this page.

The gumstix refers to both a QUARC target type as well as a data acquisition card. For more information about the data acquisition cards supported by the QUARC Linux Overo target, please refer to the QUARC Data Acquisition Card Support reference section in the QUARC documentation.

Limitations

There are a number of limitations imposed on the Linux Overo target. The following is a list of these limitations:

Real-Time Performance

Warning The Linux Overo target is a soft real-time system. For real-time processes with critical time constraints (e.g. advanced robotics), this target may not be suitable.

Sampling Rates

Warning There is a limit on the fastest sampling time that can be set for a model using the QUARC system timebase. This limit is one millisecond (using the modified OE Linux kernel, as recommended by Quanser). It is possible to obtain sample times smaller than one millisecond, but using smaller sample times is not recommended.

C++ Not Supported by All Compilers

Warning The LLVM-based cross-compilers supplied with QUARC do not support C++. However, the optional CodeSourcery Lite compiler does support C++.

Requirements

As mentioned earlier on this page, running code on a gumstix target still requires a remote Windows host to be present. This is required since the code to be run on the Linux Overo target first needs to be generated on a Windows system with MATLAB, Simulink and QUARC installed. Please note that even though QUARC must be installed on the Windows host, it is still necessary to have the QUARC runtime installed on the gumstix target, since the QUARC Target Manager must be present where the code is running.

Please note that if your only intended target is a gumstix, the QUARC Windows target is not required and you can select not to install that component when installing QUARC. However the QUARC Simulink Development Environment component is required to generate code from your Simulink models.

Unlike the old Linux Overo target, quarc_linux_arm, the new Linux Overo target supports cross-compilation tools to compile code for the gumstix Overo board. Using a cross-compiler results in much faster compiles and downloads than in the previous generation.

Three different compilation options are available for the Linux Overo target:

LLVM-GCC

The LLVM-GCC cross-compiler is supplied with QUARC. This compiler is used by default. The LLVM compiler is an open-source compiler that is extensible, so it is possible to modify the code generation or optimization phases of the compiler for static analysis, instrumentation and other capabilities and use those extensions with QUARC. Please refer to the LLVM Release License for licensing information.

LLVM-GCC based on CodeSourcery Lite

To use an LLVM-GCC cross-compiler based on CodeSourcery Lite, the appropriate CodeSourcery Lite compiler must be downloaded and installed. Detailed instructions on where to download CodeSourcery Lite and how to install it may be found at Installing CodeSourcery Lite.

The LLVM compiler is an open-source compiler that is extensible, so it is possible to modify the code generation or optimization phases of the compiler for static analysis, instrumentation and other capabilities and use those extensions with QUARC. Please refer to the LLVM Release License for licensing information.

CodeSourcery Lite

To use the CodeSourcery Lite compiler, the appropriate CodeSourcery Lite compiler must be first be downloaded and installed. Detailed instructions on where to find CodeSourcery Lite and how to install it with QUARC may be found at Installing CodeSourcery Lite.

Technical Support Package

Warning Due to the high flexibility and customizability of a gumstix-based system together with the specificity of the gumstix configuration required to optimally use and run QUARC, only the Quanser products (e.g., ALTAV, Qbot) using a gumstix board are currently directly supported by Quanser. If required, please contact the Quanser Sales department for more details regarding running QUARC on a gumstix board interfacing with your own application(s). The following is a link to the Quanser Contact Web Site.

 

navigation bar