i.MX Processors Knowledge Base

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX Processors Knowledge Base

Discussions

Sort by:
This white paper is a discussion of random hangs and other issues using Windows Embedded Compact on Freescale i.MX6 application processor and how they were solved. All information in this document applies to Windows Embedded Compact 7 and 2013 as well as all variants of the i.MX6.      
View full article
The purpose of this page is to provide supportive information for the selection of suitable camera modules that are supported by the i.MX 8M Plus (i.MX8MP). The guide is attached in this page. This helps customers evaluate project feasibility and integration aspects when considering i.MX 8MP SoCs for their products. It is strongly recommended to consult with NXP and the camera module vendor before finalizing the choice of the camera part number to ensure compatibility, availability, longevity, and pricing requirements. NXP Supported Sensors: Sensor Vendor Image Sensor Max Resolution Camera Module OmniVision OS08A20 8MP IMX-OS08A20 EXPI-OS08A20 OmniVision OV2775 2MP   Sony IMX219 8MP   Sony IMX477 12.3MP   Onsemi AR0144 1MP AR0144 Onsemi AR1335 13MP     Partner Enabled Sensors:   Partner Sensor Vendor Image Sensor Max Resolution ISP Tuning Camera Module Location FRAMOS Sony IMX415 8MP ✔   Munich, Germany/ Canada/USA Sony IMX662 2MP FSM:GO Sony IMX678 8MP Sony IMX900 3.2MP Sony IMX676 12MP Innowave Onsemi AR1335 13MP ✔   Austin, Texas, USA/Israel Sony IMX258 13MP Camera Modules Sony IMX219 8MP OmniVision OV5645 5MP   OmniVision OV2710 2MP   Basler Onsemi AR0821 8MP   Basler   Onsemi AR0521 5MP   Onsemi Onsemi AR0830 8MP   Image Sensors, Module available through Future Electronics   Onsemi AR0544 5MP Onsemi AR0821 8MP Onsemi AR0822 8MP Onsemi AR0145 1MP Onsemi AR0235 2MP Onsemi AR1335 13MP PHYTEC Onsemi AR0144 1MP     Germany/ China/India/ USA Onsemi AR0234 2.3MP   Onsemi AR0521 5MP   E-consystems Sony IMX662 2.4MP     Riverside, CA, USA/India Sony IMX900 3.2MP   Onsemi AR0234 2.3MP   CIS Corporation Sony IMX715 12MP ✔   Japan Sony IMX570 0.32MP   Onsemi AR0234CS 2MP   Sony Sony IMX500 12MP     Japan HINO Engg Sony IMX415 8MP ✔   Japan Sony IMX662 2MP   Leopard Imaging Sony IMX500 12MP ✔   Fremont, CA, USA/China   Note: CIS Corporation and HINO Engg currently only support customers in Japan market.
View full article
This guide walks you through the required steps to prepare your development environment and hardware for debugging the M core on the IMX8MP-EVK board using the MCU-LINK Pro. You’ll install the necessary firmware, compile and flash a binary, and finally, initiate a debug session using MCUXpresso for VS Code. Requirements: IMX8MP-EVK Board MCU-LINK Pro Debug Probe PC Host with MCUXpresso for VS Code installed Install Segger Firmware on MCU-LINK Pro By default, the MCU-LINK Pro does not support i.MX processors. Installing the Segger firmware is essential for proper debugging. Follow the firmware update guide to update your MCU-LINK Pro.   Compile the Binary for the M Core Ensure MCUXpresso for VS Code is properly installed.   Import the iMX8MP-EVK SDK   Import "hello world" example Ensure that we are compiling a debug binary Build Project Flash the Binary using UUU Tool Connect the IMX8MP-EVK Board to your Host PC via USB   Enter Fastboot Mode in U-Boot Terminal => fastboot 0   On your Host PC, navigate to the binary location and flash it using the next commands: $ cd <project_location>/armgcc/debug/ $ uuu -b fat_write hello_world.bin mmc X:1 hello_world_debug.bin Note: replace the X with 2 if you are booting from eMMC or 1 if you are booting from SD Card   Connect MCU-LINK Pro to the Target   IMX8MP-EVK Debug connection:     Launch the M Core from U-Boot Terminal Use the following commands in the U-Boot terminal: => fatload mmc X:1 0x48000000 hello_world_debug.bin; cp.b 0x48000000 0x7e0000 0x20000; => bootaux 0x7e0000 Note: replace the X with 2 if you are booting from eMMC or 1 if you are booting from SD Card   Start the Debug Session Once the M core is launched, you can start your debug session in VS Code using MCUXpresso:          With the MCU-LINK Pro configured, the IMX8MP-EVK, and the binary successfully flashed and executed, you are now ready to debug applications on the M core using MCUXpresso and VS Code. This setup enables a reliable development workflow for i.MX8MP based projects.   References: AN14120.pdf 
View full article
This guide walks you through the required steps to prepare your development environment and hardware for debugging the M core on the IMX93-EVK board using the MCU-LINK Pro. You’ll install the necessary firmware, compile and flash a binary, and finally, initiate a debug session using MCUXpresso for VS Code. Requirements: IMX93-EVK Board MCU-LINK Pro Debug Probe PC Host with MCUXpresso for VS Code installed Install Segger Firmware on MCU-LINK Pro By default, the MCU-LINK Pro does not support i.MX processors. Installing the Segger firmware is essential for proper debugging. Follow the firmware update guide to update your MCU-LINK Pro.   Compile the Binary for the M Core Ensure MCUXpresso for VS Code is properly installed.   Import the iMX93-EVK SDK     Import "hello world" example   Ensure that we are compiling a debug binary Build Project   Flash the Binary using UUU Tool Connect the IMX93-EVK Board to your Host PC via USB       Enter Fastboot Mode in U-Boot Terminal => fastboot 0   On your Host PC, navigate to the binary location and flash it using the next commands: $ cd <project_location>/armgcc/debug/ $ uuu -b fat_write sdk20-app.bin mmc X:1 hello_world.bin Note: replace the X with 0 if you are booting from eMMC or 1 if you are booting from SD Card     Connect MCU-LINK Pro to the Target     IMX93-EVK Debug connection:       Launch the M Core from U-Boot Terminal Use the following commands in the U-Boot terminal: => fatload mmc X:1 80000000 hello_world.bin; cp.b 0x80000000 0x201e0000 0x10000; => bootaux 0x1ffe0000 0 Note: replace the X with 0 if you are booting from eMMC or 1 if you are booting from SD Card     Start the Debug Session Once the M core is launched, you can start your debug session in VS Code using MCUXpresso:        With the MCU-LINK Pro configured, the IMX93-EVK, and the binary successfully flashed and executed, you are now ready to debug applications on the M core using MCUXpresso and VS Code. This setup enables a reliable development workflow for i.MX93-based projects.   References: AN14120.pdf 
View full article
Test Environment: i.MX8MP EVK L6.6.52(weston12)   Background Current RDP only supports TLS authentication, but does not support the NLA feature or PAM password authentication. Therefore, the connection security of RDP will be very low, and you can even login remotely without the correct username and password. This article implements the NLA feature and PAM password authentication base on weston rdp backend, which supports customized user and login.   1.Patches patch weston-imx with add_rdp_pam_nla_support.patch patch meta-imx with add_pam_support_and_weston_user.patch   2.Generate keys on Ubuntu rename key as server.crt and server.key sudo apt-get install winpr-utils winpr-makecert -rdp -path ~/ copy server.crt and server.key from Ubuntu to /etc/freerdp/keys/ on i.MX board 3. Enable start-on-startup=true in weston.ini   4.Install Remmina on Ubuntu.   5.Generate SAM file on board and Ubuntu: /etc/winpr/SAM(SAM is a file, not a directory) and copy hash into /etc/winpr/SAM The username weston and passwd has been set in add_pam_support_and_weston_user.patch. username: weston passwd: weston domain: domain   $ winpr-hash -u weston -d domain -p weston -v1 -f sam weston:domain::b2ca4ec6a1dbd13c49b6ab5e1b10d5bf::: $ vi /etc/winpr/SAM   6.Access with Remmina on Ubuntu. 7.Result      
View full article
Freescale's consumer and industrial i.MX 51 applications processors balance the performance, power consumption, connectivity and multimedia capabilities necessary to drive today's latest and greatest products. Freescale's automotive i.MX 51 processors provide what is necessary to steer today's most advanced automotive systems. i.MX51 Family Comparison i.MX Family Comparison Product Information on Freescale.com i.MX512 Applications Processor i.MX513 Applications Processor i.MX514 Applications Processor i.MX515 Applications Processor i.MX516 Applications Processor Evaluation/Development Boards and Systems IMX51EVK Evaluation Kit Bootloader Installing U-Boot on i.MX51EVK Flashing i.MX51EVK Working with mainline U-Boot Add new iMX5x board on LTIB Compiling U-Boot (from Freescale BSP) using LTIB Changing environment variables storage on U-Boot Linux Flashing Linux application only with SD card Reader Multimedia Using USB Camera Installing OpenCV Library (Open Computer Vision - Image Processing) Android Android without RamDisk Installing TTS library manually Running ADB over USB (iMX51 and Ubuntu communication) Ubuntu Using an USB Touchscreen (Karmic) Using Touchscreen (Lucid) Embedded Software and Tools Android OS for i.MX Applications Processors i.MX51 Current Software Updates and Releases Partners / 3rd-Party Development Tools STK5:  Starter-Kit 5 (Karo Electronics) Additional Resources Board bring-up and DDR initialization tools Develop a Simple OpenVG Application Under Linux: Tutorial i.MX 51 Android ADB over USB IMX51EVK i.MX51 EVK Board USB Camera i.MX51 EVK Compiling U-boot i.MX 51 EVK U-boot i.MX51 EVK Board Video i.MX51 EVK Board OpenCV i.MX51 EVK Board Flashing i.MX51 Flashing Linux Application Only with SD Card Reader I.MX51EVK Install U-Boot i.MX51 EVK Compiling U-boot i.MX51 EVK U-boot i.MX51 EVK Changing Env IMX51 Ubuntu USB TS i.MX 51 Ubuntu TS Lucid
View full article
Play MPEG4 Video only gst-launch filesrc location=test.mpeg ! mfw_vpudecoder codec-type=std_mpeg4 ! mfw_v4lsink H.264 Video only gst-launch filesrc location=test.avi ! mfw_avidemuxer ! mfw_vpudecoder codec-type=std_avc ! mfw_v4lsink AVI(H264+MP3) gst-launch filesrc location=test.avi ! mfw_avidemuxer name=demux demux. !  mfw_vpudecoder \     codec-type=std_avc ! mfw_v4lsink demux. ! queue max-size-buffers=0 ! <mp3_decoder_plugin> ! alsasink MP4(H264+MP3) gst-launch filesrc location=test.mp4 ! mfw_mp4demuxer name=demux demux. ! \    mfw_vpudecoder codec-type=std_mpeg4 ! mfw_v4lsink demux. ! \    queue max-size-buffers=0 ! <mp3_decoder_plugin> ! alsasink <mp3_decoder_plugin> can be replaced by mad RAW Video Test gst-launch videotestsrc ! video/x-raw-yuv,format=\(fourcc\)I420 !  mfw_v4lsink
View full article
To use Android GDB for native code, take mediaserver as an example. Setup on board. adb push prebuilt/android-arm/gdbserver/gdbserver system/bin/ adb shell ps adb shell /system/bin/gdbserver :5039 --attach <PID> & Setup on host. source build/env.sh adb forward tcp:5039 tcp:5039 gdbclient mediaserver b createPlayer c
View full article
Question: In a single uImage to contain the compressed kernel and rootfs, if the uImage is greater than 16MB, the system will not boot and reports errors. Is there a size limitation on uImage?  If so, is there a work around? Answer: uImage should only contains kernel compressed. rootfs should be read through a linux partition after the kernel boots up. Regarding the uImage's size, there is no limitation. In the other hand, a single uImage with kernel and filesystem is needed; in other words, kernel (alias uImage) needs a filesystem to work, and these are two independent systems in that sense. If u-boot, kernel and filesystem are in a single device (SD Card), the filesystem must be mounted in the first partition (SD, eMMC, etc) starting somewhere > 16M/512 sectors. But in cases where: * A fast boot is needed with  very small rootfs * As a intermediate (temporal) rootfs  before switching  to the real rootfs. The usage (actually used when flashing with the MFG tool) of this intermediate system is to load heavy modules, keeping the uImage small. This mechanism is called initramfs and the uImage will contain the kernel and the this mini rootfs compressed as cpio archive. But there appears to be a 16MB limitation. See here:  http://www.isysop.com/unpacking-and-repacking-u-boot-uimage-files/ It seems to be related to alignment suggesting that 24-bit addressing is used instead of 32-bit.  I did notice Thumb mode is used, which seems odd to me.
View full article
Hi All, The i.MX6 Android R13.4-GA.03 patch release is now available on www.freescale.com ·         Files available # Name Description 1 IMX6_R13.4.03_ANDROID_PATCH This patch release is based on the i.MX 6 Android R13.4   release. The purpose of this patch release is correct the PFD workflow in   U-Boot, fix the miscalibration issue for the thermal sensor and corrects   ramp-up time of the internal LDOs
View full article
For default Android JB4.3 GA1.1.0 BSP, iMX6SL EVK board doesn't support BlueTooth, attached is the patch for the BSP to support AR3002 bluetooth.   The hardware information can be found at: https://community.freescale.com/docs/DOC-95016   iMX6SL_EVK_BlueTooth_Patch_for_JB4.3_1.1.0.tar.gz: these are the patch files. iMX6SL_EVK_BlueTooth_Support_for_JB4.3_1.1.0.tar.gz: these are the patched source code files. Please select one of above to use.
View full article
[中文翻译版] 见附件   原文链接: https://community.nxp.com/docs/DOC-344336 
View full article
Contents 1 创建 i.MX8QXP Linux 4.14.98_ga 板级开发包编译环境 2 1.1 下载板级开发包 ...................................................... 2 1.2 创建yocto编译环境: ................................................ 3 2 Device Tree ............................................................. 15 2.1 恩智浦的device Tree结构 ..................................... 15 2.2 device Tree的由来(no updates) ............................ 18 2.3 device Tree的基础与语法(no updates) ................. 20 2.4 device Tree的代码分析(no updates) .................... 42 3 恩智浦i.MX8XBSP 包文件目录结构 ......................... 75 4 恩智浦i.MX8XBSP的编译(no updates) .................... 77 4.1 需要编译哪些文件 ................................................ 77 4.2 如何编译这些文件 ................................................ 78 4.3 如何链接为目标文件及链接顺序 ........................... 79 4.4 kernel Kconfig ...................................................... 81 5 恩智浦BSP的内核初始化过程(no updates) .............. 81 5.1 初始化的汇编代码 ................................................ 83 5.2 初始化的C代码 ..................................................... 87 5.3 init_machine ....................................................... 100 6 恩智浦BSP的内核定制 ........................................... 103 6.1 DDR修改 ............................................................ 103 6.2 IO管脚配置与Pinctrl驱动 .................................... 105 6.3 新板bringup ........................................................ 120 6.4 更改调试串口 ...................................................... 128 6.5 uSDHC设备定制(eMMC flash,SDcard, SDIOcard) 135 6.6 LVDS LCD 驱动定制 .......................................... 144 6.7 GPIO_Key 驱动定制 .......................................... 147 6.8 GPIO_LED 驱动定制 ......................................... 151 6.9 Fuse nvram驱动 ................................................. 154 6.10 SPI与SPI Slave驱动 ........................................... 155 6.11 USB 3.0 TypeC 改成 USB 3.0 TypeA(未验证) ... 162 6.12 汽车级以太网驱动定制 ....................................... 162 6.13 i.MX8DX MEK支持 ............................................. 180 6.14 NAND Flash支持与烧录 ..................................... 181
View full article
[中文翻译版] 见附件   原文链接: https://community.nxp.com/docs/DOC-342059 
View full article
This example uses the touchscreen that comes with i.MX51 EVK's parallel LCD Download xserver-xorg-input-evtouch (xserver-xorg-input-evtouch_0.8.8-3build1_armel.deb) from https://launchpad.net/ubuntu/lucid/armel/xserver-xorg-input-evtouch/0.8.8-3build1 On i.MX51 EVK board, run “sudo dpkg –i xserver-xorg-input-evtouch_0.8.8-3build1_armel.deb” to install debian package. Remove evdev config file: sudo rm /usr/lib/X11/xorg.conf.d/05-evdev.conf Change the content of 10-evtouch.conf to: sudo vi /usr/lib/X11/xorg.conf.d/10-evtouch.conf Section "InputClass"            Identifier "touchscreen catchall"            MatchIsTouchscreen "on"            Driver "evtouch"            Option "SwapY" "1"            Option "MinX" "32"            Option "MinY" "46"            Option "MaxX" "1001"            Option "MaxY" "967" EndSection   The MinX, MinY, MaxX and MaxY values can be changed to match the exact configuration of your touchscreen Save above configuration and reboot the system.
View full article
Issue description: ZQ calibration issue with LPDDR2 memory with two chip selects    Micron has verified it on my customer's board with i.MX6Q. (ECT-SYT-1163 for FIC.pdf) The patch is made based on lp 5.1, see attachment.
View full article
In order to get USB cameras (web cams) working on i.MX 51 EVK board running Ubuntu, a few steps must be followed, and they are: Enable USB Camera's drivers on Kernel Test it using Gstreamer or another compatible software (as Cheese) Kernel Driver USB cameras (web cameras) on Linux work over GSPCA driver, to enable this driver you need to go to: ./ltib -c   [*] Configure the kernel     Device Drivers -->          Multimedia Devices -->               [*] Video Capture Adapters -->                    [*] V4L USB Devices -->                         <*> USB Video Class (UVC)                                      [*] UVC input events device support                         <*> GSPCA Based WebCams --> From this point, you need to choose your specific driver. If you don't know, you can select all of those options as a built-in module "<*>" that will work. GSPCA Drivers USB Camera Detection Connect your USB camera to the USB Host port on i.MX 51 EVK board and then type "dmesg", and also check if there is a video0 device using: ubuntu@ubuntu-desktop:~$ ls /dev/video0 /dev/video0 USB Camera Detection Gstreamer Command Line In order to test your USB camera using Gstreamer plugin, use the following command line to perform it: ubuntu@ubuntu-desktop:~$ gst-launch-0.10 v4l2src ! ffmpegcolorspace ! ximagesink and the results: Hi there !!! EOF !
View full article
[中文翻译版] 见附件   原文链接: https://community.nxp.com/docs/DOC-343344 
View full article
Sometimes we got CMA allocation error while there're still many free pages in CMA area.  This article analyze several cases/reason for this kind of failure.
View full article
The article has just been published by EDN website, under “Design Center” and “BBS” channels. Here is the coverage: 如何灵活使用飞思卡尔i.MX应用处理器的GPIO http://bbs.ednchina.com/FORUM_POST_30_529551_0.HTM http://www.ednchina.com/ART_8800518371_15_20034_AN_20f46fd3.HTM Title translation: How to easily use the GPIO of Freescale i.MX processors. If you are interested in the post and would like to have reply in English, please contact the owner of this post.
View full article