VersaLogic Zebra VL-EPC-2701 User Manual

Zebra
Bus, SPI and I2C
Yocto Linux User Guide
REV. April 2018
(VL-EPC-2701)
Arm* i.MX6 Single Board Computer with Gigabit Ethernet, V ideo, USB, SATA, Serial I/O, Digital I/O, CAN
WWW.VERSALOGIC.COM
12100 SW Tualatin Road Tualatin, OR 97062
-7341
(503) 747-2261
Fax (971) 224
-4708
Copyright © 2018 VersaLogic Corp. All rights reserved.
Notice:
Although every effort has been made to ensure this document is error
-free, VersaLogic makes no representations or warranties with respect to this product and specifically disclaims any implied warranties of merchantability or fitness for any particular purpose.
VersaLogic reserves the right to
revise this product and associated documentation at any time without obligation to
notify anyone of such changes.
* Other names and brands may be claimed as the property of others.
ii Zebra (VL-EPC-2701) Yocto Linux User Guide
Product Release Notes
Rev 1.0
Initial release for the Rev 1.0 board
Support Page
The Zebra Support Page
contains additional information and resources for this product including:
Operating system information and software drivers Data sheets and manufacturers’ links for chips used in this product U-Boot information and upgrades
VersaTech KnowledgeBase
The VersaTech KnowledgeBase contains useful technical information about VersaLogic products, along with product advisories.
Customer Support
If you are unable to solve a problem after reading this manual, visiting the product support page, or searching the KnowledgeBase, contact VersaLogic Technical Support at (503) 747-2261. VersaLogic support engineers are also available via e-mail at Support@VersaLogic.com.
Repair Service
If your product requires service, you must obtain a Returned Material Authorization (RMA) number by calling 503-747-2261. Be ready to provide the following information:
Your name, the name of your company, your phone number, and e-mail address The name of a technician or engineer that can be contacted if any questions arise The quantity of items being returned The model and serial number (barcode) of each item A detailed description of the problem Steps you have taken to resolve or recreate the problem The return shipping address
Warranty Repair: All parts and labor charges are covered, including return shipping charges for UPS Ground delivery to United States addresses.
Non-warranty Repair: All approved non-warranty repairs are subject to diagnosis and labor charges, parts charges and return shipping fees. Specify the shipping method you prefer and provide a purchase order number for invoicing the repair.
Note: Mark the RMA number clearly on the outside of the box before returning.
Zebra (VL-EPC-2701) Yocto Linux User Guide iii
Contents
Introduction ................................................................................................................... 6
Quick Start ..................................................................................................................... 7
Setting up Zebra for the First Time .................................................................................... 7
Booting up Zebra for the First Time ................................................................................... 8
Basic Zebra Features and Commands ....................................................................... 10
USB Support ..................................................................................................................... 10
Video Support ................................................................................................................... 10
MikroBUS Compatible Socket ......................................................................................... 10
Storage Support ................................................................................................................ 10
Multimedia Support .......................................................................................................... 10
Multimedia Playback ........................................................................................... 10
Audio Recording ............................................................................................................... 11
Setting up the Development Host .............................................................................. 13
Host Packages ................................................................................................................... 13
Setting up the Repo Utility ............................................................................................... 14
Yocto Project Setup .................................................................................................... 15
Building the Zebra Image ............................................................................................ 17
Setting up the Build Configurations ................................................................................. 17
Patching the Build Configuration ..................................................................................... 18
Creating the Target Image ................................................................................................ 19
Deploying the Image to Zebra .................................................................................... 20
Deploying the MicroSD Card ........................................................................................... 20
Booting from the Network ................................................................................................ 20
Configuring the Host PC ..................................................................................... 20
Configuring U-Boot Environmental Variables .................................................... 21
Deploying to eMMC ............................................................................................ 23
Creating a Simple Application .................................................................................... 25
Standalone Application ..................................................................................................... 25
Adding the Application to the Image ................................................................................ 26
Customizing the Image ............................................................................................... 29
Adding or Removing Packages ......................................................................................... 29
Modifying Linux Kernel Configuration ........................................................................... 30
Updating U-Boot ............................................................................................................... 32
iv Zebra (VL-EPC-2701) Yocto Linux User Guide
Advanced Features and Commands .......................................................................... 35
Sensors .............................................................................................................................. 35
CAN Network ................................................................................................................... 37
2
C Commands .................................................................................................................. 38
I
GPIO ................................................................................................................................. 39
References ................................................................................................................... 40
Figures
Figure 1. Major Components and Connectors ................................................................................................. 7
Figure 2. Booting the System .......................................................................................................................... 8
Figure 3. Login ................................................................................................................................................ 9
Figure 3. X11 Desktop .................................................................................................................................... 9
Figure 5. Op ening a Terminal ........................................................................................................................ 11
Figure 6. Alsamixer ....................................................................................................................................... 11
Figure 7. Stopping Auto Boot ....................................................................................................................... 21
Figure 8. Printenv .......................................................................................................................................... 22
Figure 9. Netboot ........................................................................................................................................... 23
Figure 10. Firefox Icon .................................................................................................................................. 29
Figure 11. K ernel Configuration GUI ........................................................................................................... 30
Figure 12. Device Drivers ............................................................................................................................. 31
Figure 13. Sony MemoryStick ....................................................................................................................... 32
Tables
Table 1. Image Details ................................................................................................................................... 19
Zebra (VL-EPC-2701) Yocto Linux User Guide v
1
Introduction
The VersaLogic EPC-2701 Zebra is an ARM based Single Board Computer (SBC). It is consists of a NXP i.MX6 ARM Cortex-A9 single or dual core processor and many standard components, which will be described in more detail later. The single core version of Zebra is named “Solo,” while the dual core version is “DualLite.” The recommended OS is Yocto Linux which is an open­source collaboration focused on embedded Linux OS development.
The purpose of this guide is to provide an overview of the Zebra product, as well as to help the user to configure the system to boot for the first time. It also provides instructions on how to set up a Yocto Linux development environment and to build the OS image, develop a simple application, and deploy the OS and applications to the Zebra for execution.
However, this guide is not intended to provide significant amount of background information on the NXP i.MX6 ARM Cortex-A9 processor or Yocto Linux. The commands used are intended as examples; it is possible that there are also other Linux commands which will accomplish the same results. The user is encouraged to follow the links in the reference section to learn more.
This guide assumes the user has basic knowledge of the Linux Operating System and is able to obtain the necessary hardware and software required to complete the tasks outlined in this guide.
Note: The NXP i.MX6 ARM Cortex-A9 processor was originally made by Freescale. Freescale was purchased by NXP, but much of the documentation still retains the name Freescale.
6 Zebra (VL-EPC-2701) Yocto Linux User Guide
Quick Start
2
EPC-2701 Zebra Hardware Introduction
Detailed hardware description is available in the Zebra Hardware Reference Manual, but here is some essential information required in order to quickly set up the board.
The following diagram shows the major components of a Zebra:
Figure 1. Major Components and Connectors
Quick Start
Setting up Zebra for the First Time
At a minimum, the following ports and devices should be connected before booting up Zebra for the first time:
J1 – USBx2: connect USB mouse and keyboard to the USB ports. There are two options to do this: Option one is to connect a USB hub to the bottom port, then connect both mouse and keyboard to the hub. Option two is to set the top USB port to host mode and then use both on board ports for mouse and keyboard.
Zebra (VL-EPC-2701) Yocto Linux User Guide 7
Quick Start
J4 – MicroSD socket: install the MicroSD card in this socket. The space is tight so be careful not to bend the pins or cause other damage.
J5 – Ethernet: connect network cable to the Ethernet port. J6 – HDMI: connect a HDMI monitor to this port. If an HDMI monitor is not available, then a HDMI
to VGA adapter can connect to a VGA monitor. Note that the current limit for the HDMI 5V power is 55mA, so when choosing an adapter make sure it draws less than that.
J15 – Power: connect the power cable from the adapter when instructed below, after all other connections and jumper changes have been made.
J16 – COM1: connect the VL-CBR-0504 cable adapter for RS-232 serial port, and then connect serial cable to a PC COM port. Use a terminal emulator such as PuTTY for console access to the Zebra.
Booting up Zebra for the First Time
At this point, the Zebra is ready to boot up for the first time. Connect the power cable to the board and watch the serial console and you should see the boot messages displayed. Please note that instead of BIOS, Zebra uses a different boot loader called U-Boot. Unless auto boot is stopped by pressing a key on the keyboard, U-Boot will load Yocto Linux from the microSD.
Figure 2. Booting the System
Once the system completes boot up, a login prompt will be displayed. Login as root; no password is required.
8 Zebra (VL-EPC-2701) Yocto Linux User Guide
Quick Start
Figure 3. Login
If a monitor is connected to the HDMI port, then a basic X11 Desktop as shown below will be displayed on the monitor.
Figure 4. X11 Desktop
Zebra (VL-EPC-2701) Yocto Linux User Guide 9
3
Assuming the Zebra is up and running with the OS provided by VersaLogic, this section describes some of the built-in features on the Zebra board and Yocto Linux commands to utilize these features.
USB Support
There are two USB ports on the Zebra that support standard USB 2.0 devices. The bottom USB port is set to host mode, but the top USB OTG port is set to device mode by default. To change the top USB port to host mode, install the V2 jumper per the Zebra Hardware Reference Manual.
Video Support
The Zebra has an integrated video controller that supports multiple video formats and provides an HDMI V1.4 port, used with most standard monitors.
Basic Zebra Features and
Commands
MikroBUS Compatible Socket
The Zebra board includes a MikroBUS compatible socket that supports industry standard click boards, which can provide expandability to support additional on-board I/O including I serial lines. See the Zebra Hardware Reference Manual for socket pin support information.
Storage Support
Zebra supports onboard storage devices such as MicroSD and optional eMMC. The fdisk command will list all the storage devices that are currently attached, as shown in the example below.
root@imx6zebra:~# fdisk –l …
[ This is the MicroSD card installed in the onboard socket. ]
/dev/mmcblk1p1 8192 24575 16384 8M c W95 FAT32 (LBA) /dev/mmcblk1p2 24576 2834431 2809856 1.3G 83 Linux
Multimedia Support
Multimedia Playback
2
C, SPI and
GStreamer is the default multimedia framework on Linux OS, and gplay-1.0 is a command line tool built on top of GStreamer that will test basic playback. MP3, MP4, WAV and AVI file formats are verified on the Zebra.
To play back a multimedia file, first make sure a speaker or headphone is properly connected to the J10 – Audio port. Then open a terminal from the X11 Desktop as indicated below.
10 Zebra (VL-EPC-2701) Yocto Linux User Guide
Basic Zebra Features and Commands
Figure 5. Opening a Terminal
Type the following command in the terminal window:
sh-4.3# gplay-1.0 <file name>
For MP3 and WAV files, command output should indicate that the sound track is playing. For MP4 and AVI files, a new window will also open displaying the vi deo. If there is no sound when expected, first check the volume level by entering the alsamixer command in the terminal window and adjust the headphone volume in the GUI using up or down arrow keys.
sh-4.3# alsamixer
Figure 6. Alsamixer
Audio Recording
To record audio on the Zebra, first connect a microphone or headset to the J10 – Audio port. Adjust the recording level in alsamixer to high to ensure that sound can be captured. The level can be adjusted downward later to achieve the best result.
Type the following command in the terminal window and speak into the microphone
sh-4.3# arecord -r 48000 -f S16_LE -c 2 -d 10 testrecord.wav
Recording automatically stops after 10 seconds. Play back the recording using the gplay-1.0 command:
sh-4.3# gplay-1.0 testrecord.wav
Zebra (VL-EPC-2701) Yocto Linux User Guide 11
Basic Zebra Features and Commands
Note: Audio recording and playback are also possible through the J13 – User IO connector, but a break-out cable is required in order to access line-in and line-out.
12 Zebra (VL-EPC-2701) Yocto Linux User Guide
4
Setting up the Development Host
This chapter begins the discussion on how to build and customize the Yocto Linux OS to run on Zebra.
A host PC or build server is required to setup the Yocto Linux development environment, which will be used to create the Operating System that will run on the VersaLogic Zebra board.
There are a few minimum requirements for this system:
1. Hardware – a server machine will provide the best performance, but at least a mid-range desktop PC is needed. Specifically, at least the following configuration:
A. 2 GHz dual core processor B. 2 GB RAM (system memory) C. 120 GB of free disk space is required in order to install the OS and required packages,
and to build the target image. However, more disk space is highly recommended as
multiple builds during typical development cycle can consume the disk space quickly. D. V GA monitor capable of 1024x768 screen resolution E. A CD/DVD drive or a USB port for the installer media F. A static IP address is recommended but not required G. Internet access to download additional required software
2. Operating System – the recommended OS for the host PC is Ubuntu 14.04, which is the version currently supported for Zebra and has been verified by VersaLogic. If the user decides to try a different version or Linux distribution, then it is up to the user to get the Yocto Linux Project expected behavior on the host PC, as well as making sure the packages and utilities described below are compatible and can be installed correctly.
Host Packages
A Yocto Linux Project build requires that some prerequisite software packages to be installed. Please use the commands below to install these packages. Note that in Ubuntu, the command sudo is typically used to execute other commands with root privileges.
1. Install essential Yocto Project host packages:
$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc­multilib build-essential chrpath socat libsdl1.2-dev
2. Install i.MX layers host packages for an Ubuntu 14.04 host:
$ sudo apt-get install libsdl1.2-dev xterm sed cvs subversion coreutils texi2html docbook-utils python-pysqlite2 help2man make gcc g++ desktop-file-utils libgl1-mesa-dev libglu1-mesa-dev mercurial autoconf automake groff curl lzop asciidoc u-boot-tools
Zebra (VL-EPC-2701) Yocto Linux User Guide 13
Loading...
+ 28 hidden pages