- 1 About
- 2 Technical Specifications
- 3 Quick Setup Guide
- 4 Setup Guide
- 5 Pre-built Image Downloads
- 6 Flashing and Booting the Images Built
- 7 Unit Testing
- 8 Sample Project
- 9 Tools
- 10 Additional Reading
What is HIO Project
HIO Project is a development effort to create expandable modular hardware platforms for building embedded systems and Internet of Things (IoT) devices. The goal is to provide affordable embedded computer building blocks that can be used across the entire product development cycle - from evaluation, development, prototyping to finish product. It is based on the bottom up approach, enabling developers to build a custom embedded computer tailored to their applications starting with the minimal building block and adding modules as needed.
It all starts with a core computer board, or “core-board” the structural base and minimal computer unit of the device. The developer can add “modules” to the core-board (or add core-board to module) which provide peripherals, connectivity, user interface, power functionality and features to the embedded computer. The modules can be stackable, expandable and interchangeable to provide different configurations and power requirements. The designs of the modules are open as well as the embedded Linux OS, provide a creative canvas for developers to make their own module for specific application. Ultimately, developers are able to buy the core-board, select the ready-made modules or design custom modules to build their intelligent, application-specific embedded systems and Internet of Things (IoT) devices.
HIO Project supports Open Source embedded Linux created by the Yocto Project development environment. The Yocto Project is an open source collaboration project that provides templates, tools and methods to help you create custom Linux-based systems for embedded products regardless of the hardware architecture. It was founded in 2010 as a collaboration among many hardware manufacturers, open-source operating systems vendors, and electronics companies. HIO Project provides resources, instructions, open source BSP, recipes, image examples for both new and experienced developers. Sample images range from minimal with basic filesystem which boots up to a console login to Qt Framebuffer, Qt X11, Qt xfce and more. Android BSP is also available for some HIO development kits.
The Technical Specification Manual is intended to provide an in-depth level of detailed, technical information about the HIO-EMB-1200 and its components to vendor, system integrator, engineer and technician. It is not intended for general audiences.
Quick Setup Guide
The HIO core-board and development kits' core-board are preloaded with sample images built with Yocto embedded Linux and Qt frame buffer setup. To get started, select the corresponding Kit from the links below:
This session provides instructions to configure HIO-Yocto Image. User can choose to develop the images from scratch for Yocto development or Download the Deployed Files. The goal of this configuration is to obtain the following files.
- Bootloader u-boot: a small program that put the operating system into the memory
- Kernel UImage: the lowest level of software that interfaces with the hardware in computer. It is responsible for interfacing all the applications in "user mode" to physical hardware. It also allow processes to get information from each other using inter-process communication (IPC).
- Rootfs //rootfs/folder : a special instance of a very simple filesystem that exports Linux's disk caching mechanisms as a dynamically resizable RAM-based filesystem.
- SDCard *.sdcard file: inlucde uboot, kernel, rootfs. Can be written to SD Card and let HIO-EMB-1200 boots from it.
Sample Image Definition
|hio-image-minimal||Small image just capable of allowing the system to boot with SSH and USB WiFi module driver support|
|hio-image-fb||This image is based on hio-image-minimal and added Qt 5.2.1 frame buffer framework|
|hio-image-x11||Full image based on Yocto Project's core-image-sato with X11 Window System, SSH, USB WiFi module driver and Qt 5.2.1 framework|
|hio-image-xfce||Full image with Xfce Desktop Environment, SSH, USB WiFi module driver and Qt 5.2.1 framework|
Building HIO-Yocto Image From Scratch
- Setup Yocto Build Environment
- Select a Sample Image
Pre-built Image Downloads
Downloads: HIO i.MX6 Dual Core - Sample Images Files
The pre-built image files for HIO-EMB-1200 board can be downloaded below. This is built with Yocto Project Daisy 1.6.1. The recipe can be found at meta-hio-demos of HIO Project GitHub. These files include the latest u-boot, kernel, sample root file systems, and sample image .sdcard File generated with Yocto Project embedded Linux development environment for HIO boards and development kits. It is based on Freescale FSL Community BSP and meta-hio layer from HIO Project GitHub. These images are used to create a bootable SD card or to apply images to core-board's on-board flash.
- U-Boot Binary File
- Rootfs Compressed Package
- *.sdcard File
Downloads: HIO i.MX6 Quad Core
- U-Boot Binary File
- Kernel Files
- Rootfs Compressed Package
- SD Card File
Flashing and Booting the Images Built
After we have obtained sample HIO-Yocto image files (i.e. u-boot, kernel, rootfs, or the .sdcard file), we can use them to create a bootable SD card or update the preload image in the core-board's flash.
- Optional: How To: Prepare SD Card for boot
- How to: Create Bootable SD card
- How To: Create SD Card to Update iNAND(i.e. Preload Image in the core-board)