NXP i.MX6 (ARM®v7) under QNX® Neutrino RTOS
The i.MX6 processor from NXP (formerly Freescale) is located at the upper end of the performance scale within the embedded systems space and can therefore be used to tackle tasks that had previously been in the sole domain of the more powerful PC platforms.
The processor is able to control up to four displays simultaneously. Even video streams can be integrated into the user interface using various built-in hardware codecs. Because of this the device can be used for demanding applications in the field of industrial process visualization, medical equipment as well as infotainment.
The i.MX6 processor offers a wide variety of interfaces such as: 2x USB, 2x CAN, Ethernet, PCIe, various GPIO, 5x SPI, PWM, 6x UART, 3x I²C and two camera interfaces. It can therefore very well be used for headless systems in the field of industrial control and automation. Due to its high compute power data acquisition, processing and visualization can be integrated onto a single chip. The QNX Adaptive Partitioning technology supports this design very effectively by separating those various modules at the software level.
PHYTEC Messtechnik GmbH offer this processor on two different modules:
- The phyFLEX-i.MX6 module with the processor-independent pin connector layout and comprehensive I/O. Full information on the CPU module can be found PHYTEC product page for phyFLEX-i.MX6 module.
- The more compact phyCORE-i.MX6 for morededicated applications and with a pin connector layout optimized for the processor. Full description can be found here: PHYTEC phyCORE-i.MX6 module product page
BitCtrl Systems have developed a QNX 6.5/6.6 Board Support Package for both of the corresponding development kits (Rapid Development Kit RDK for phyFLEX, phyBOARD-MIRA for phyCORE). We directly provide technical support.
QNX BSP: Background Information
There are a number of reference boards for the i.MX6 processor for which QNX® offers Board Support Packages (BSP). Therefore the BSP for the PHYTEC i.MX6 CPU modules has been derived from these existing BSPs without copying any source code. All components that can be run on both platforms (e.g. driver for onboard Ethernet Controller or Startup library) are only referenced.
|Support for i.MX6 Solo||P|
|Support for QNX6.6||X|
|NAND Flash Driver||X|
|I²C (QNX Standard)||X|
|I²C/SMBus (new framework)||C|
|SPI NOR Flash||X|
|EEPROM 24C32 (Library)||X|
|Screen Graphics on DVI||X|
|LCD Support (PL 1365.1)||X|
|Touch Screen Driver||X|
|Display Backlight (auto)||X||P|
|STMPE811 Temp Sensor||P|
|NVRAM filesystem daemon||I|
|QNX 7 Support||P|
Legend: X=Available, EA=Early Access, C=Committed, P=Planned, I=Investigation
To build the BSP it is necessary to first import the reference BSP for the Sabrelite Board. It can be found under this URL: http://community.qnx.com/sf/wiki/do/viewPage/projects.bsp/wiki/FreescaleImx6QSabreLite. The current version 1.4.2 of the BSP works together with the reference BSP for the Sabre Lite dated October 25, 2016 (QNX 6.6, build number 808) respectively January 23, 2015 (QNX 6.5, build number 93).
One of the highlights of our BSP is the ability to build all sources and create installable SD-Cards with a single click. We have created a Build and Release Engineering project to accomplish that ("releng"). All you have to do is transfer the created artefacts to an empty SD-Card and execute a single script in the Barebox boot loader. This provides you an installation experience comparable with x86 PCs.
Are you experiencing any difficulties in using our BSP? Please do not hesitate to use our helpdesk. Specific development can be requested via the helpdesk or the general contact form.
QNX® is a registered trademark of QNX Software Systems. phyFLEX® is a registered trademark of PHYTEC Messtechnik GmbH.