From Estone Technology Wiki
Revision as of 17:07, 15 May 2019 by Charles (Talk | contribs) (Quick Setup Guide)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search



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.

Building Blocks

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.

OS Support

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.

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:

Technical Specifications

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.

Setup Guide

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).[1]
  • 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

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.

Downloads: HIO i.MX6 Quad Core

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.

Unit Testing

Sample Project


Additional Reading