HummingBoard IIOT & i.MX8M Plus SOM Quick Start Guide

IIOT Sideways.png

 

Introduction

The following quick start guide provides background information about the HummingBoard IIOT.

The guide will give a technical overview about the product and by the end of it you should be able to boot an operating system and begin testing your application.

Revision and Notes

Hardware Setup

Product specifications

Model

HummingBoard IIOT

Model

HummingBoard IIOT

SOM Model

NXP i.MX8M Plus Dual / Quad core Arm Cortex A53 up to 1.8GHz (with Arm M7 GPP)

Memory & Storage

Up to 4GB LPDDR4
eMMC
MicroSD

Network

2 x Ethernet RJ45 10/100/1000
1 x 802.11 a/b/g/n/ac WiFi and Bluetooth (2.4/5 GHz)

Connectivity

1 x USB3.0 (OTG)
2 x USB3.0 ( Host)
M.2 B-Key LTE modem (eSIM, NanoSim)
M.2 M-Key - NVMe or AI accelerator
Additional addon cards are supported*
SIM card slot

Media

LVDS
MIPI-DSI
2x MIPI-CSI 4 lanes  (1 MIPI-CSI on the SoM, 2 on the carrier)

I/O

1 x Reset button
1 x ON/OFF button
1 x Configurable push button
1 x RGB LED
2 x CAN-FD
2x RS232 or 2x RS485, or RS232 + RS485 (SW Configuration)
1 x I/O Digital Input
1 x I/O Digital output

Misc

TPM2.0
RTC
EEPROM

OS Support

Linux

Environment

Commercial: 0°C to 70°C
Industrial: -40°C to 85°C

Dimensions

PCBA: 140 x 90mm
Enclosure : <TBD>

Power

7V – 28V wide range
PoE sink support 802.3af Class 0

Enclosure

Optional extruded aluminum (IP32) enclosure

 

Supported with i.MX8M-PLUS SOM. For more detailed information about our SOM-i.MX8M series please visit this user manual : i.MX8M Plus SOM Hardware User Manual .

Block Diagram

The following figure describes the i.MX8M Pro Block Diagram.

Visual features overview

Please see below the features overview of the connector side of the HummingBoard IIOT.

Print side connector overview of the HummingBoard IIOT.

 

 

Power Input Polarity [J1]:

  • Connector Type: Green two-terminal connector [J1].

  • Voltage Range: 7V to 32V.

  • Polarity:

    • + (Positive): Left terminal (as marked in the image).

    • - (Negative): Right terminal (as marked in the image).

Plug for connector J1 : 2 Position Terminal Block Plug, Female Sockets 0.138" (3.50mm).

J5004 {2x RS485, 2x CAN-FD, 2x RS232, DIG_IN, DIG_OUT}

 

Plug for connector J5004 : 20 Position Terminal Block Plug, Female Sockets 0.138" (3.50mm) like this.

Software Setup

Cable setup and prerequisites

Here is what you will need to power up and use the board:

  • Linux or Windows PC

  • HummingBoard IIOT with SOM

  • 12V Power adapter (HummingBoard IIOT has wide range input of 7V-28V), alternatively you can use a PoE injector to power on the device.

  • Type-C to USB for console, the HummingBoard IIOT has an onboard FTDI chip.

  • IP router or IP switch

Boot Select

Before powering up the board for the first time it is recommended to select the boot media using onboard DIP switch S5:

Switch

1
(MD0)

2
(MD1)

3
(MD2)

4
(MD3)

5
(VDD_1.8V)

6
(VDD_3.3V)

Switch

1
(MD0)

2
(MD1)

3
(MD2)

4
(MD3)

5
(VDD_1.8V)

6
(VDD_3.3V)

uSD

ON

ON

OFF

OFF

ON

OFF

eMMC

OFF

ON

OFF

OFF

ON

OFF

USB OTG

ON

OFF

OFF

OFF

ON

OFF

Internal Fuses

OFF

OFF

OFF

OFF

ON

OFF

Booting from SD card

Boot Select

Here is the correct DIP switch position for SD boot:

 

Once you set the switches, you can apply the following for booting from an SD card.

  1. Downloading the Debian image

Download the Debian image by running the following command on your Linux/Windows PC:

wget https://solid-run-images.sos-de-fra-1.exo.io/IMX8/imx8mp_build/build_date_20240806-rev_449b768/imx8mp-sdhc-debian-449b768.img.xz
  1. Writing the image to the SD card

Use the following commands for writing the image to an SD card:

xz -dc imx8mp-sdhc-debian-449b768.img.xz | sudo dd of=/dev/sdX bs=4k conv=fdatasync status=progress
  1. SD card insertion

Please Insert the SD card into your device.

  1. Power connection

Connect your power adaptor to the DC jack, and then connect the adaptor to mains supply.

  1. Serial Connection

Please insert the micro USB into your device, then you can refer to Serial Connection for installing necessary serial connection software in Linux/Windows.

Once you installed the necessary serial connection software, you should be able to see the following:

  • In order to be able to log in , please insert “root” as a username and password as follows:

Final stages

The following stages need to be done in order to finalise the imaging:

  1. Run fdisk /dev/mmcblk1 if using SD and fdisk /dev/mmcblk2if using eMMC.

  2. Recreate the rootfs partition (mostly the second partition) by deleting it and then creating a new partition that starts at the next sector after the first one and extends to the end of the drive (or less depending on your needs).

  3. Write the new partition, when prompt about ‘Do you want to remove the signature?’ then answer with Yes.

  4. Run resize2fs /dev/mmcblk1p2 if using SD Card and resize2fs /dev/mmcblk2p2if using eMMC.

  5. In this stage the root partition should be big enough to start populating it; but first update the RTC clock.

  6. Connect the RJ45 to your network with internet access (and DHCP server); and then run dhclient.

  7. Update the RTC clock by running ntpdate pool.ntp.org and then hwclock -w.

  8. Run apt-update commands below and then populate the root filesystem as you wish.

apt-get update && apt-get upgrade -y

Here is an example of the same process in the HB-IIOT device until step 4 (include):

In the end you should see with “lsblk” that the partition size is in the required size.

Programming eMMC

Boot Linux from uSD and follow the Instructions bellow to Program the eMMC

  1. Programming the Bootloader on eMMC Boot Partition:

  2. Programming the Debian Image on the eMMC Main Partition:

  3. Set the boot select to boot from eMMC as documented here and do reset to boot from eMMC.

More Features

Internet

Connect an Ethernet cable to your HummingBoard Pulse (for internet access during boot-up).
Models HummingBoard with WiFi, can be connected via WiFi or wired Ethernet.

  • Please check you Ethernet connection.

  • Use the following commands in order to keep your system up-to-date:

WiFi

An example for connecting to WiFi using wpa_supplicant:

  1. To bring a WiFi interface up, run the following :

  1. Install the wpa_supplicant package:

  1. Edit network interfaces file :

At the bottom of the file, add the following lines to allow wlan as a network connection:

  1. Create a configuration file with the relevant ssid:

  1. Make sure it works:

Restart your device and it should connect to the wireless network. If it doesn't, repeat above steps or get help from an adult.

Bluetooth

  1. For showing all Bluetooth devices, run the following:

  1. Choose a device, and turn it on:

  1. Set up the Bluetooth name:

  1. Make your Bluetooth detectable by other devices:

  1. If you want to connect to other devices:

  • Start by scanning for other Bluetooth devices:

  • Choose a MAC address and connect :

  • You can check the communication between the devices by writing :

Cellular Modem

The cellular modem is a more fully featured extension of which contains a cellular module with additional hardware interfaces and a SIM card slot.

You can connect your cellular modem to the mPCIe, and insert a SIM card.

SPI

For testing you serial peripheral interface - SPI, please see this documentation SPI from Linux with spidev.

GUI On Debian

There is an option with the Debian image, up to the user, to work with a GUI like Weston, GNOME and etc.
For applying this option do the following steps:

First, connect your device to a screen using the working output (HDMI / uHDMI).

For working with Weston GUI:

  1. Install the Weston package.

  2. Make a directory for the output of the Weston GUI.

  3. Give permissions to this directory.

  4. Set the XDG_RUNTIME_DIR env param to your directory.

  5. Run Weston.

     

For working with GNOME GUI on top of Xorg:

  1. Install Xorg.

  2. Install your desired gnome.

    NOTE: ‘gnome-session’ is an example of gnome that we can work with, you can replace the ‘session' with another GNOME extention.

  3. Start your GNOME GUI.

    • For logging in you need a user on your device to log into it. You can create one before step 3 by this command (replace the ‘username’ with name that you want) :

    • You can jump between GUIs that you install (like gnome-session) by the setting button that locates in the down right corner of the home screen.

     

Basler Camera

For getting started with the Camera Module on your board, please see this documentation Basler Camera Quick Start Guide.

TLV EEPROM Support

Starting from April 01. 2022, the EEPROMs on Carriers, i.MX8M Plus SoMs are being programmed with identifying information such as the product name and SKUs to allow for programmatic identification of hardware. Check our iMXMP EEPROM documentation for additional information.

List Of Supported OS

 

Build from source

 

Documentation

  File Modified
No files shared here yet.

 

 

Related Articles

 

 

Related pages

SolidRun Ltd.