Difference between revisions of "OE 5 Software Overview"

From wiki.emacinc.com
Jump to: navigation, search
m (Made minor fixes and marked Complete.)
 
Line 1: Line 1:
{{todo| Final Draft (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+)|Brian Serrano| project=OE 5.0,BS,KY,MD,MG,ER,FinalDraft}}
+
{{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| project=OE 5.0,BS,KY,MD,MG,ER,Complete}}
 
{{#seo:
 
{{#seo:
 
|title=Software Overview
 
|title=Software Overview
Line 21: Line 21:
 
{{:Templateimpl:geninfo | initials=BS | title=Software Overview | desc=EMAC products offer a wide variety of software support from both open source and proprietary sources. | project=OE 5.0 }}
 
{{:Templateimpl:geninfo | initials=BS | title=Software Overview | desc=EMAC products offer a wide variety of software support from both open source and proprietary sources. | project=OE 5.0 }}
 
=== Das U-Boot ===
 
=== 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 environmental 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.
+
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, <code>ethaddr</code>. 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 | U-Boot Overview]] page.
 
For more information visit the [[U-Boot_Overview | U-Boot Overview]] page.
  
 
=== Embedded Linux ===
 
=== Embedded Linux ===
EMAC Open Embedded Linux is an open source Linux distribution for use in embedded systems. The distribution is based on the latest [http://www.openembedded.org 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 provide a customized Linux build if required.
+
EMAC OpenEmbedded Linux is an open source Linux distribution for use in embedded systems. The distribution is based on the latest [https://www.yoctoproject.org/ Yocto]/[http://www.openembedded.org 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:
 
The basic root file system includes:
Line 35: Line 35:
 
* Openssh SSH server
 
* Openssh SSH server
 
* lighttpd HTTP server
 
* lighttpd HTTP server
* EXT4 file system with utilities
+
* JFFS2 or EXT4 file system, with utilities
  
 
For more information visit the [[OE50:Packages| EMAC OE 5.X Release Information]] page.
 
For more information visit the [[OE50:Packages| EMAC OE 5.X Release Information]] page.
  
 
=== Linux with Xenomai Real Time Extensions ===
 
=== 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 one-time inexpensive support/installation fee.
+
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.
 
For more information visit the [[Xenomai]] page.
  
 
=== Linux Software Packages ===
 
=== Linux Software Packages ===
EMAC provides support for many additional Linux packages such as: PHP, Java, Perl, SNMP, Web browser, 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.
+
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_50_Add-on_Packages |EMAC OE 5.X Add-on Packages]] page.
 
For more information visit the [[EMAC_OE_50_Add-on_Packages |EMAC OE 5.X Add-on Packages]] page.
  
 
=== Linux Patches ===
 
=== 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.
+
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 ===
Qt Creator is a cross-platform IDE (Integrated Development Environment) tailored to the needs of Qt developers but works well for headless applications as well. EMAC provides sample code for EMAC Products as projects that can be imported into Qt Creator. Qt Creator supports remote deployment and source debugging.  
+
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 [http://doc.qt.io/qtcreator/ Qt Creator] page.
 
For more information visit the [http://doc.qt.io/qtcreator/ Qt Creator] page.
Line 60: Line 60:
 
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.
 
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 |Getting Started With Qt Creator]] page.
+
For more information on using Qt Creator with the EMAC SDK, visit the [[Getting_Started_With_Qt_Creator |Getting Started With Qt Creator]] page.
  
 
=== ARM EABI Cross Compiler ===
 
=== 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 for 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.  
+
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.
 
For more information visit the [[Install_the_EMAC_SDK EMAC SDK]] page.

Latest revision as of 15:15, 13 November 2015

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.