IMX8/Nitrogen8M: Difference between revisions

From RidgeRun Developer Wiki
mNo edit summary
 
(10 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<noinclude>{{IMX8/Head}}</noinclude>
<noinclude>{{IMX8/Head|previous=iMX8MEVK/System Recovery|next=Nitrogen8M/Overview|metakeywords=carrier,carrier board,base board,SOM,System on Module,Boundary Devices,Nitrogen8M}}</noinclude>


=Getting Started=
The Nitrogen8M is the latest addition to the Boundary Devices' i.MX based Nitrogen platforms, leveraging the recently released i.MX 8M family of applications processors from NXP.


On this page you are going to find all the information to start from scratch. You will find information about the board and how to configure your host machine in order to customize your own images. First, a general description about the board capabilities will be shown. Next, a description about the package content and a briefly guide about how to start the board. Finally, the required steps to build a custom image will be shown.
=Key Features=
The Nitrogen8m has the following features:
* Processor: i.MX 8M Quad (Based on Cortex-A53 and Cortex-M4F series)
* Memory RAM: 2 GB LPDDR4 
* eMMC : 8 GB
* Wireless: WiFi 802.11ac + Bluetooth 4.1
* Network: Gigabit Ethernet
* GPU: Vivante GC7000 Lite
* Display specification:
# HDMI (4K@60fps)
# 4-lane MIPI-DSI (1080p@60fps)
* Camera support: 2x 4-lane MIPI-CSI
* Audio: Headphones and Analog Microphone
* Encoders:
# H.265
# VP9
* Interfaces:
# 3x USB 3.0 Host ports
# USB 3.0 OTG port
# 3x I2C
# SPI
# RS-232
# SIM card
# RTC + battery
# 2x PCIe (1 Mini-PCIE connector, 1 on expansion connector)
# JTAG
* Supported OS :
# Yocto
# Ubuntu/Debian
# Buildroot
# FreeRTOS
# Android
* Power supply: 5V
=Package Content=
This is a description about the Nitrogen8m accessory kit and its contents. The packages includes the following items:
* Nitrogen8M rev11 preloaded with Android 8.1
* RTC battery
* 5v power adapter
* Serial console cable
* Antenna


[[File:Nitrogen8m.jpg|800px]]


=Boot Options=
*[[IMX8/Nitrogen8M/Overview|Overview]] section that summarizes the key hardware features and board connectors layout.
The board is able to boot from more that one way, below you will see how to configure the boot device.  
*[[IMX8/Nitrogen8M/Getting Started|Getting Started]] section that provides a starting point for the i.MX Boundary Devices Nitrogen8M.
== eMMC ==
*[[IMX8/Nitrogen8M/Yocto|Yocto Support]] section to provide the build steps for Yocto distributions.
By default, the board will boot from eMMC.
*[[IMX8/Nitrogen8M/Android|Android Support]] section to provide the build steps for Android distributions.
Just be sure that the '''Boot Mode Switch''' is place on left side before connecting the power adapter.  
*[[IMX8/Nitrogen8M/System_Recovery|System Recovery]] section that provides steps when the Nitrogen8M is not booting.


== USB Boot ==
<noinclude>{{IMX8/Foot|iMX8MEVK/System Recovery|Nitrogen8M/Overview}}</noinclude>
This Boot option requires a Bootable USB stick and a Serial Console Cable, refer to iMX8 Software Support section to download a prebuilt image or create your own image with the instructions provided in the Custom Image section.
 
Instructions to setting up the USB Boot:
* Connect the Nitrogen8m to a host machine with the Serial Console Cable.
* Start any serial console (i.e minicom or term)
* Power on the board, the console will display the U-boot start-up screen.
* Press any key on your keyboard to stop the boot sequence, this will display the U-Boot console.
* Change the Boot Device with the following command:
<pre>
setenv boot_targets usb0
</pre>
* If you do not want to repeat this commands, you can save the selected Boot Device with this command:
<pre>
saveenv
</pre>
* Continue the Boot sequence by typing the next command:
<pre>
boot
</pre>
 
After the previous instructions, the board will boot from the USB stick
 
=Custom Image=
In order to create your own image, a supported Software Development Kit will be required for your desired OS.
 
==Yocto==
To create a customized image with Yocto, first install its required packages with the following commands:
* repo tool
<pre>
mkdir ~/bin
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
export PATH=~/bin:$PATH
</pre>
 
* Yocto dependencies
<pre>
sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential \
chrpath socat cpio python python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping \
libsdl1.2-dev xterm autoconf libtool libglib2.0-dev python-git sed cvs subversion coreutils \
texi2html docbook-utils python-pysqlite2 help2man make gcc g++ desktop-file-utils libgl1-mesa-dev \
libglu1-mesa-dev mercurial automake groff curl lzop asciidoc u-boot-tools dos2unix mtd-utils pv \
libncurses5 libncurses5-dev libncursesw5-dev libelf-dev zlib1g-dev
</pre>
 
'''NOTE:''' If you have some dependencies errors, this could be the reason: [https://developer.ridgerun.com/wiki/index.php?title=Fix_broken_APT_after_JetPack_installation Broken APT due to ARM64 packages]
 
* Download the Nitrogen8m source code
<pre>
mkdir fsl-community-bsp
cd fsl-community-bsp
repo init -u https://github.com/Freescale/fsl-community-bsp-platform -b master
repo sync
</pre>
 
* Set up the build configuration
'''For now, only Wayland distro is supported for iMX8'''
<pre>
DISTRO=fslc-wayland MACHINE=nitrogen8m source setup-environment build
</pre>
 
* Start the build process
<pre>
bitbake fsl-image-multimedia-full
</pre>
 
Other images are supported, i.e '''core-image-minimal'''
 
For flashing the image, refer to iMX8 Installing an Image section. 
 
<noinclude>{{IMX8/Foot|<Replace with "previous" page>|<Replace with "next" page>}}</noinclude>

Latest revision as of 17:11, 9 March 2023



Previous: iMX8MEVK/System Recovery Index Next: Nitrogen8M/Overview





The Nitrogen8M is the latest addition to the Boundary Devices' i.MX based Nitrogen platforms, leveraging the recently released i.MX 8M family of applications processors from NXP.


  • Overview section that summarizes the key hardware features and board connectors layout.
  • Getting Started section that provides a starting point for the i.MX Boundary Devices Nitrogen8M.
  • Yocto Support section to provide the build steps for Yocto distributions.
  • Android Support section to provide the build steps for Android distributions.
  • System Recovery section that provides steps when the Nitrogen8M is not booting.


Previous: iMX8MEVK/System Recovery Index Next: Nitrogen8M/Overview