Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.

Revision and Notes






Initial release

Table of Contents

Table of Contents


The following quick start guide provides background information about the HummingBoard CBi product which use the i.MX6 System on module.

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.

Hardware Setup

Product Specifications

SOM Model

NXP i.MX6 based Solo to Quad Core SOM


i.MX6 Solo – Quad core ARM Cortex A9 up to 800Mhz

Memory & Storage

Up to 2GB DDR3

uSD, eMMC (8GB), M.2 (2242)


1 x RJ45


1 x CAN bus

1 x RS485

4 x USB 2.0

Mini PCIe


SIM card slot






1 x Reset button

1 x Configurable push button

3 x LED indicators


IR reciver

OS Support



102mm x 69mm


7V – 36V wide range


Metal Enclosure

Ui button
titleBuy Now


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

Block Diagram

The following figure describes the Hummingboard CBi Block Diagram.

Visual features overview

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

Print side connector overview of the HummingBoard CBi.

Software Setup

Cable setup and prerequisites

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

  • Linux or Windows PC

  • HummingBoard CBi with SOM

  • 12V Power adapter (HummingBoard CBi has wide range input of 9V-36V, it is recommended to use 12V power adapter)

  • USB to UART cable

  • IP router or IP switch

Booting form an SD card

On the HummingBoard CBi it is possible to boot from different media.

For Booting from an SD card, jumpers need to be setup at J5005 as follows:

Before you set the boot jumpers, please refer to HummingBoard Edge/Gate Boot Jumpers for more information about J5005.

Once you setup the jumpers, 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:

Code Block

2. Writing the image to the SD card

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

Code Block
xz -dc sr-imx6-debian-bullseye-20220712-cli-sdhc.img.xz | dd of=/dev/sdX bs=4M conv=fsync

Note: Plug a micro SD into your Linux PC, the following assumes that the micro SD is added as /dev/sdX and all it’s partitions are unmounted.

3. SD card insertion

Please Insert the SD card into your device.

4. Power connection

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

5. Serial connection

Please connect the UART cable to the pins on connector J25 as shown in the below picture, then you can refer to Serial Connection for installing necessary serial connection software in Linux/Windows.


For more information about J25 connector, please refer to HummingBoard Gate/Edge UART console .

Once you installed the necessary serial connection software, please run the following:

Code Block
setenv som_rev 'V15'; saveenv; boot 

And you should be able to see the following:

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

CanBUS and RS485 Support

Initial Setup

HummingBoard CBi can use the CAN-Bus and RS485 only if booted with the appropriate device-tree. From U-Boot console, interrupt boot by pressing any key during the Hit any key to stop autoboot prompt. Then permanently choose the cbi device-tree variant:

Code Block
Hit any key to stop autoboot:  0
=> setenv is_cbi 1
=> saveenv
=> reset

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

Code Block
apt-get update 
apt-get upgrade 

CanBUS Enable

1. Download the compressed zip file:

Code Block
sudo wget -O /tmp/

2. Unzip the file:

Code Block
unzip -o /tmp/ -d /boot/dtbs/5.10.0-8-armmp/

3. Restart your device:

Code Block

RS485 Enable

1. Add a support for rs485conf and compile an exec file by runnig the following:

Code Block
git clone
cd rs485conf

Before you run the above, please install some helping commands by running:

apt-get install make gcc git

2. Copy the output of the exec file bu running:

Code Block
cp rs485conf /usr/bin/

3. Add an execute permission to the file:

Code Block
 chmod +x /usr/bin/rs485conf

Install to eMMC

  • You can follow this document Install to eMMC to install debian to an eMMC device.

More Features


  • Please check you Ethernet connection.

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

Code Block
apt-get update 
apt-get upgrade 
  • For more detailed information, please refer to i.MX6 Debian .


An example for connecting to WiFi using wpa_supplicant:

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

Code Block
ifconfig wlan0 up 

To discover your wireless network interface name, see Network Interfaces.

2. Install the wpa_supplicant package:

Code Block
apt-get install wpasupplicant 

3. Edit network interfaces file :

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

Code Block
cat <<EOF > /etc/network/interfaces.d/wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp


4. Create a configuration file with the relevant ssid:

Code Block
cat <<EOF > /etc/wpa_supplicant/wpa_supplicant.conf



Check your personal ssids by running : ‘iw dev wlan0 scan’

5. 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.


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

Code Block
apt-get install bluez
hciconfig -a

2. Choose a device, and turn it on:

Code Block
 hciconfig hci0 up

3. Set up the Bluetooth name:

Code Block
hciconfig hci0 name 'SolidRun_Ble'

4. Make your Bluetooth detectable by other devices:

Code Block
hciconfig hci0 piscan

5. If you want to connect to other devices:

  • Start by scanning for other Bluetooth devices:

Code Block
hcitool scan
  • Choose a MAC address and connect :

Code Block
rfcomm connect 0  $MAC 10 & 
  • You can check the communication between the devices by writing :

Code Block
l2ping -c 4  $MAC

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.

GPIO pins Control

In order to be able to control the GPIO pins, please refer to HummingBoard Edge/Gate/CBi GPIO Pins Control .

CanBUS and RS485 Test

For testing your CANBus and RS-485 interfaces, please refer to HummingBoard CBi RS485 and CAN bus .

List Of Supported OS

Build U-Boot & Kernel from sources



Ui button
titleBuy a Sample Now

Filter by label (Content by label)
cqllabel in ( "hummingboard-cbi" , "hummingboard" , "flash-sd-card" , "serial-connection" , "serial-imx6" )