OE 5 Software Overview

From wiki.emacinc.com
(Redirected from Software Overview)
Jump to: navigation, search
TODO: {{#todo: Complete (05.20.2015-12:35->BS+);(05.21.2015-15:35->BS+);(05.21.2015-16:48->KY+);(11.13.2015-12:00->MG+);(11.13.2015-14:26->ER+);(11.13.2015-15:15->MD+)|Brian Serrano|OE 5.0,BS,KY,MD,MG,ER,Complete}}


EMAC products offer a wide variety of software support from both open source and proprietary sources. The hardware core was designed to be software compatible with the given processor reference design, which is supported by Linux.

General Information

Das U-Boot

EMAC's ARM based products are distributed with Das U-Boot installed. U-Boot is an open source, cross-architecture, platform independent bootloader. It supports reading and writing to the flash, auto-booting, environmental variables, and TFTP. Das U-boot can be used to upload and run and/or reflash the OS on EMAC Products, or to run stand-alone programs without an OS. EMAC Products' modules are shipped with a valid MAC address installed in flash in the protected U-boot environment variable, ethaddr. At boot time, U-Boot automatically stores this address in a register within the MAC, which effectively provides it to any OS loaded after that point.

For more information visit the U-Boot Overview page.

Embedded Linux

EMAC OpenEmbedded Linux is an open source Linux distribution for use in embedded systems. The distribution is based on the latest Yocto/OpenEmbedded release and contains everything a user could expect from a standard Linux distribution: powerful networking features, advanced file system support, security, debugging utilities, and countless other features. EMAC can also provide a customized Linux build if required.

The basic root file system includes:

  • Busybox
  • Hotplugging support
  • APM utilities for power management
  • Openssh SSH server
  • lighttpd HTTP server
  • JFFS2 or EXT4 file system, with utilities

For more information visit the EMAC OE 5.X Release Information page.

Linux with Xenomai Real Time Extensions

Xenomai provides real time extensions to the kernel and can be used to schedule tasks with hard deadlines and μs latencies. The Xenomai build is an additional module that can be added to the standard Linux kernel and is available for a one-time inexpensive support/installation fee.

For more information visit the Xenomai page.

Linux Software Packages

EMAC provides support for many additional Linux packages such as: PHP, Java, Perl, SNMP, Chromium, etc. As with the Xenomai package, other packages can be added to the standard Linux file system and are available for a one-time inexpensive support/installation fee.

For more information visit the EMAC OE 5.X Add-on Packages page.

Linux Patches

In addition to standard Embedded Linux support, EMAC has released a number of patches and device drivers from the open source community, and from internal EMAC engineering, into its standard distribution. Along with kernel patches, EMAC provides the binaries for the kernel and root file system.

Qt Creator

Qt Creator is a cross-platform IDE (Integrated Development Environment) tailored to the needs of Qt developers, but it works well for non-Qt applications as well. EMAC provides sample code for EMAC Products in the form of projects that can be imported into Qt Creator. Qt Creator supports remote deployment and source level debugging.

For more information visit the Qt Creator page.


EMAC provides a custom version of Qt Creator based on the 3.x or later release. This custom version includes examples and documentation relevant to EMAC customers. EMAC also provides a getting started guide for Qt Creator as a separate document.

For more information on using Qt Creator with the EMAC SDK, visit the Getting Started With Qt Creator page.

ARM EABI Cross Compiler

The popular open source gcc compiler has a stable build for the ARM family. The Embedded Linux kernel and EMAC Qt Creator projects use this compiler for building ARM stand alone, and OS specific, binaries. The EMAC OE SDK provides source level debugging over Ethernet or serial using gdb. The Linux binaries for the ARM EABI cross compiler are available online with the SDK for EMAC Products.

For more information visit the Install_the_EMAC_SDK EMAC SDK page.