Start of trail End of trail navigation bar

Table of Contents

QUARC Linux ARM (gumstix) Target

Deprecated

The QUARC Linux ARM (gumstix) Target is deprecated. Please use the QUARC Linux Verdex target instead, which has updated features, including support for cross-compiling from the Windows host making development much faster.

The Linux ARM (gumstix) target currently supports OpenEmbedded (OE) Linux running on a gumstix™ Verdex board. This section provides a general description of the QUARC Linux ARM (gumstix) 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 ARM (gumstix) Target currently supports the OpenEmbedded Linux Operating System (OS) running on a gumstix Verdex XL6P board. A gumstix board is a full-function miniature computer built and sold by Gumstix, Inc. (www.gumstix.com). The gumstix verdex XL6P motherboard has 32 MB of on-board flash memory and is run by a 600 MHz Marvell® PXA270 with XScale™ processor. Its full set of specifications is described at https://www.gumstix.com/support/hardware/verdex-pro/. The small form factor of the gumstix makes it very attractive to use for, for example, Unmanned Aerial Vehicle (UAV) applications.

The QUARC Linux ARM (gumstix) 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 ARM (gumstix) 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 QUARC Linux ARM (gumstix) 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 ARM (gumstix) 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 QUARC Linux ARM (gumstix) Target. The following is a list of these limitations:

Real-Time Performance

Warning The QUARC Linux ARM (gumstix) 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 1.3 milliseconds (using the modified OE Linux kernel, as recommended by Quanser). You cannot have sampling times smaller than 1.3 milliseconds when using the QUARC system timebase on a QUARC Linux ARM (gumstix) Target.

Requirements

As mentioned earlier on this page, running pseudo-real-time code on a gumstix target still requires a remote Windows host to be present. This is required since the pseudo-real-time code to be run on the QUARC Linux ARM (gumstix) 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 QUARC installed on the gumstix target, since the QUARC Target Manager must be present where the pseudo-real-time 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.

Once the pseudo-real-time code is generated on the Windows host, it is automatically downloaded to the gumstix target where it is first built then run. In order to achieve this, the OE Linux OS on the gumstix must be properly configured. This involves, for example, installing the full gcc-based compilation suite on the gumstix target itself. Other OS optimizations, like minimizing the system timer resolution, are also recommended for maximum real-time performance. For these reasons Quanser recommends using its own already QUARC-configured gumstix OE rootfs image for your gumstix target.

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