S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Table of Contents Preface..........................10 1.1 About this manual......................10 Copyrights/Trademarks....................10 Standards........................10 Disclaimers........................10 Warranty........................10 Related documents......................12 Conventions, Abbreviations, Acronyms...............12 Introduction.........................14 Product Highlights......................15 Block Diagram......................16 Feature Summary......................17...
Page 4
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.4.1.1 Linux messages at cable connection: ............36 5.4.1.2 Check interface status with ifconfig ..............36 5.4.1.3 Test with iperf: ....................36 CAN –...
Page 5
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.14.2.2 Linux messages at boot time: ..............58 5.15 RTC..........................59 5.15.1 Accesssing the peripheral ................59 5.16 DWM – J24........................60 5.16.1 DWM features: ....................
Page 6
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.3.2.2 Bootloader ......................84 7.3.2.3 Kernel ......................85 7.3.2.4 Linux Device Tree ..................85 7.3.2.5 Target root file system ..................85 7.3.2.6 Yocto .......................85 7.3.2.7 Git repositories ....................86 7.3.2.8 RSA key generation ..................87 7.3.3...
Page 7
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.7.2.3 Network setup ....................115 7.7.3 Running the Android Debug Bridge (ADB) ............116 7.7.3.1 ADB over USB ....................116 7.7.3.2 ADB over Ethernet ..................116 7.7.3.3 Connecting via ADB ..................116 7.7.4...
Page 8
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Illustration Index Fig. 1: SBCX..........................14 Fig. 2: SBCX block diagram......................16 Fig. 3: Assembly view: top......................18 Fig. 4: Assembly view: bottom....................19 Fig.
Page 9
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Fig. 42: Pre-built root file systems.....................96 Fig. 43: Launching QtCreator....................102 Fig. 44: QtQuick "Hello World!"....................106 Fig. 45: Launch the Qt application on the SBCX..............107 Fig.
DAVE Embedded Systems is guaranteed against defects in material and workmanship for the warranty period from the shipment date. During the warranty period, DAVE Embedded Systems will at its discretion decide to repair or replace defective products. Within the warranty period, the repair of products is free of charge provided that warranty conditions are observed.
Page 11
DAVE Embedded Systems will not be responsible for any defects or damages to other products not supplied by DAVE Embedded Systems that are caused by a faulty SBCX board.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Related documents Document Location Dave Developers Wiki http://wiki.dave.eu/index.php/Main_Page Tab. 1: Related documents Conventions, Abbreviations, Acronyms Abbreviation Definition Button EMAC Ethernet Media Access Controller General purpose input...
Page 13
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Revision History Version Date Notes 0.9.0 November 2015 First draft 1.0.0 March 2016 First release 1.0.1 December 2019 Second release December, 2019 13/139...
IEC-61131 SW language environment and/or other plug-ins like QT environment or multimedia GStreamer video applications. This hardware proposal by DAVE Embedded Systems is completed with SW solutions (SoftPLC, QT, RTOS) which permit to reduce overall system cost, and making SBCs ideally suited for deployment into a wide...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Product Highlights ● EASY HARDWARE ◾ CPU: based on NXP / Freescale i.MX6 Solo/Dual/Quad core ◾ USB Host and Device ◾...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Feature Summary The following table summarizes the features available with SBCX: Feature Specifications Options Supported SOM AXEL LITE Serial ports 1x UART RS232/RS422/RS485 1x UART RS232 on PMOD module...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 On-board connectors The table below lists all available connectors on the SBCX board. Please refer to Fig. 3: Assembly view: top for connectors' positions and refer to section 5 for detailed description and the pin out of each connector.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Ref. Symbol Function Type Part number vertical header Battery holder ML2020 battery holder ML-2020/G1AN PANASONIC UART3 Header 5x2x2.54mm RS232 Touch screen 4-pins, 1mm pitch...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Mechanical specifications This chapter describes the mechanical characteristics of the SBCX board. Mechanical drawings are available in DXF format on request. Board Layout The following figures shows the physical dimensions of the SBCX board.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 3.1.3 Side view Fig. 7: Side view Mechanical data table All dimensions on the following table are in millimeters. Dimension Value Width...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 System components Power Supply Unit (PSU) The SBCX supports a power input in the +[12-24 V] range. The supply voltage is applied through the J2 power connector.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 On-board buttons 4.2.1 S3 - Reset button Fig. 9: Reset button S3 is the hardware reset button. December, 2019 26/139...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Interfaces and connectors The following paragraphs describe the interfaces available on SBCX, providing the pinout tables for each connector. For each interface, a brief note on how to use the peripheral on Linux is provided.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 UARTs Three UART ports are available on SBCX. 5.3.1 UART3 – J22 Fig. 13: Debug console connector J22 is a 10 pin (5x2x2.54mm) header connector for the RS232 two-wires UART3 port, used for debug purposes (bootloader and operating system serial console).
Page 30
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 start your favorite terminal emulator software on PC (eg: PuTTY); communication parameters are: Parameter Value Baud rate 115200 bps Data bits Stop bits Parity...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.3.2 UART4 – J25 Fig. 14: UART4 connector J25 is a is a 6x1x2.54 pitch vertical header for the UART4 port. This is a Digilent Pmod™...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 at tldp.org/HOWTO/Serial-Programming-HOWTO/index.html. A simple loopback test is the following: root@axel-lite:~# stty -F /dev/ttymxc3 115200 -echo root@axel-lite:~# cat /dev/ttymxc3 & [1] 741 root@axel-lite:~# echo "Test loopback"...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Pin name RS232 mode RS422 mode RS485 mode pin # J10.107 UART5_B UART2 Clear To UART5_B UART5_B Send Not connected Not connected Not connected...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.3.3.2 Accessing the peripheral UART4 is mapped to /dev/ttymxc4 device in Linux: root@axel-lite:~# dmesg | grep ttymxc4 1.453534] 21f4000.serial: ttymxc4 at MMIO 0x21f4000 (irq = 62) is a IMX Serial ports can be used through the standard serial programming API.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Ethernet port – J16 Fig. 17: Ethernet connector J16 is a standard RJ45 connectors connected to the SOM integrated ethernet controller and PHY.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Pin # SOM pin Pin name Function Notes 18, 19 +3V3 5.4.1 Using the peripheral AXEL LITE SOM provides the network interface mapped at eth0. Default IP address is 192.168.1.1.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 [ ID] Interval Transfer Bandwidth 0.0-10.0 sec 297 MBytes 249 Mbits/sec CAN – J23 Fig. 18: CAN connector J23 is a 3x2x2.54mm header that provides the CAN bus port compatible with the CAN 2.0B protocol.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Fig. 19: CAN electrical connections 5.5.1 Accessing the peripheral 5.5.1.1 Linux messages at boot time: root@axel-lite:~# dmesg | grep can 1.470492] Scanning device for bad blocks 2.053585] imx6q-pinctrl 20e0000.iomuxc: pin MX6Q_PAD_EIM_D25 already requested by 21ec000.serial;...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 UP RUNNING NOARP MTU:16 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:10 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Interrupt:142...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 LVDS SBCX provides two LVDS interfaces, LVDS0 and LVDS1. Fig. 20: LVDS connectors 5.6.1 LCD LVDS0 connector – J8 J8 is a Hirose (cod.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Pin # SOM pin # Pin name Function Notes 21, 22 LVDS_SHIELD LVDS shield 5.6.2 LCD LVDS1 connector - J9 J9 is a Hirose (cod.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.6.3.3 Linux messages at boot time: root@axel-lite:~# dmesg | grep ldb 0.489604] mxc_sdc_fb fb.23: register mxc display driver ldb HDMI –...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Pin # SOM pin Pin name Function Notes 2, 5, 8, DGND Ground 11, 17 Not connected 20, 21, SH_HDMI Shield 22, 23...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 WIDE™ connector – J33 Fig. 22: WIDE™ connector J33 is the WIDE™ (Wise Interface Display Expander ) connector. It is a 20x1.00 mm One Piece Interface for connecting add-on modules that extend the SBCX features, implementing additional interfaces as SPI, I2C, RGB displays, PWMs, GPIOs.
Page 45
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Pin # SOM pin # Pin name Function Notes J10.152 LCD_G0 J10.38 I2C_SCL_R I2C3 J10.154 LCD_G1 J10.48 I2C_SDA_R I2C3 J10.156 LCD_G2...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Pin # SOM pin # Pin name Function Notes J10.128 LCD_VSYNC AUX_BL_LVDS0 J10.130 LCD_HSYNC 56, 58 J10.132 LCD_PIXEL_CLO 2, 16, 22, DGND Ground...
Page 47
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Pin # SOM pin # Pin name Function Notes 5V_IN J10.64 PCIE_WAKE_B AUX_PWR_EN J10.76 PCIE_RST_B J10.74 PCIE_DIS_B J10.84 PCIE_CLKN J10.86 PCIE_CLKP...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.9.1 Accessing the peripheral The interface can be used connecting a dedicated add-on. For additional information, please contact sales@dave.eu. December, 2019 48/139...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.10 Touch screen connector – J50 Fig. 23: Touch screen connector The 4-wire resistive touch controller signals are routed to J50, a 4-pins, 1mm pitch vertical ZIF.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.10.1.2 Linux messages at boot time: root@axel-lite:~# dmesg | grep -i tsc 2.272820] input: TSC2007 Touchscreen as /devices/virtual/input/input0 5.11 MicroSD slot –...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.11.1 Accessing the peripheral The microSD card is mapped to /dev/mmcblk0. The available partitions are available as /dev/mmcblk0p1, /dev/mmcblk0p2, … When the microSD is inserted, the kernel prints the following messages: root@axel-lite:~# [ 26.729497] mmc0: host does not support...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.12.1.2 Accessing the peripheral USB controllers are detected at runtime: root@axel-lite:~# dmesg | grep usb 0.417436] usb_otg_vbus: 5000 mV 0.417654] usb_h1_vbus: 5000 mV 0.419310] usbcore: registered new interface driver usbfs 0.419366] usbcore: registered new interface driver hub...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 blocks: (31.6 GB/29.4 GiB) 830.917953] sd 3:0:0:0: [sda] Write Protect is off 830.923356] sd 3:0:0:0: [sda] Write cache: disabled, read cache: disabled, doesn't support DPO or FUA 830.951115] sda: sda1...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Pin # SOM pin Pin name Function Notes J10.198 USB_OTG_DP USB OTG Data + J10.192 ENET_RX_ER USB OTG ID Ground 5.12.2.1 Accessing the peripheral...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 gadget: high-speed config #1: Linux File-Backed Storage 5.13 GPIOs i.MX6 can handle external pins in many different ways and most of them can be configured as GPIOs.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 echo in > /sys/class/gpio/gpioXX/direction It is possible to do the same for values read or written on the pin. To read a pin (the value read will be correct only if pin’...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Pin # Pin name Function Notes AUX_RES Analog ground MIC_IN Microphone Input HSOL Audio Headset left AUD_HP_VGND Analog ground HSOR Audio Headset right 5.14.1...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 3.426627] imx-sgtl5000 sound.28: sgtl5000 <-> 2028000.ssi mapping ok 6.636379] #0: imx51-babbage-sgtl5000 5.15 SBCX uses the RTC device provided by AXEL LITE. root@axel-lite:~# dmesg | grep snvs 2.142386] snvs_rtc 20cc034.snvs-rtc-lp: rtc core: registered 20cc034.snvs-rtc-lp as rtc0...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.16 DWM – J24 Fig. 28: DWM connector J24 is a 30-pins 0.50mm Pitch SlimStack™ Receptacle. This connector is dedicated to the DWM add-on module.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.16.2 DWM conceptual block diagram The following picture shows the conceptual block diagram of the application where the host is the SBCX. 3.3V SBCX UART...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Pin # SOM pin Pin name Function Notes J10.49 UART2_TX J10.41 TIWI_BT_F2 J10.59 UART2_RTS J10.43 TIWI_IRQ J10.99 TIWI_BT_EN J10.45 TIWI_EN 12, 14, 16,...
Page 63
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 root@axel-lite:~/axel-sbc/dwm# rfkill list 0: phy1: wlan Soft blocked: yes Hard blocked: no root@axel-lite:~/axel-sbc/dwm# rfkill unblock 0 root@axel-lite:~/axel-sbc/dwm# [ 196.038880] wlcore: firmware booted (Rev 6.3.10.0.133) 196.073419] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 IE: Unknown: DD090010180202F0000000 IE: Unknown: DD180050F2020101800003A4000027A4000042435E0062322F00 5.16.4.3 WiFi calibration For detailed information, please refer to the Calibration Getting Started Guide (http://processors.wiki.ti.com/index.php/WL12xx_NLCP_Calibration_Proc cess#Calibration_Getting_Started).
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 ap_scan=0 fast_reauth=1 # Only WPA-PSK is used. Any valid cipher combination is accepted. network={ ssid="INTELLINET_AP" proto=WPA2 key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP psk="davedavedave"...
Page 66
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Device setup complete root@axel-lite:~/axel-sbc/dwm# hciconfig hci0: Type: BR/EDR Bus: UART BD Address: 88:33:14:5E:05:6F ACL MTU: 1021:4 SCO MTU: 180:4 DOWN RX bytes:598 acl:0 sco:0 events:30 errors:0...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 5.17 JTAG – JD1 Fig. 29: JTAG connector JD1 is a 10x2.54 mm pin strip connector (the pin holes are on the SBCX carrier located under the SOM module).
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Getting started This chapter describes how to quickly start working with the development kit. The following paragraphs will guide you through the setup and installation procedures.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 6.1.1 SBCX kit contents The following table lists the kit components Component Description SBCX with AXEL LITE SOM Ampire AM-800480SETMQW 7”...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Hardware setup This section describes how to quick start the SBCX The system is programmed to automatically boot Linux at power up, loading the bootloaded, the kernel image and the root file system from the internal flash memory.
Page 71
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 start your favorite terminal emulator software on PC (eg: PuTTY, Minicom, ...); communication parameters are: Parameter Value Baud rate 115200 bps Data bits Stop bits...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 6.3.2 Connecting to the SBC through SSH 6.3.2.1 From Windows ● Download and install PuTTY from http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html ● Double-click on the putty.exe icon to launch PuTTY ●...
Page 73
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 ssh root@192.168.1.1 ● Answer “yes” to the “Are you sure you want to continue connecting (yes/no)?” question You are now logged in and you have access to the SBCX system shell: December, 2019 73/139...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Running different operating systems SBCX supports several operating systems, in the form of different Linux distributions and Android. All the available binary images, stored in the RESERVED AREA of our website, can be downloaded (upon registration) from the following URL: http://www.dave.eu/reserved-area...
Page 75
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 The customer can then access the RESERVED AREA from the DAVE Embedded Systems' web site home page, clicking on the “SUPPORT- >Reserved Area”...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 6.4.4 Creating a bootable SD with a new operating system 6.4.4.1 From Windows Windows doesn't provide a tool for writing raw images to SD cards, so an external tool is required.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 ● click on the “Write” button and confirm the operation ● From Linux From Linux, the dd (http://linux.die.net/man/1/dd) command can be used to write the raw image to the SD card.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Development tools Embedded Linux When we talk in general about Embedded Linux , we refer to an embedded system running Linux operating system. As the reader probably knows, Linux was first developed on the PC platform, based on the famous x86 architecture.
L<Kernel_version>_<x.y.z> BSP versions. Hence XELK documentation often refers to L<Kernel_version>_<x.y.z> resources. DAVE Embedded Systems adds to the latest BSP from NXP / Freescale the customization required to support the AXEL/SBCX platform. For this reason most of the documentation provided by NXP / Freescale remains valid for the XELK development kit.
OpenEmbedded, but it provides a less steep learning curve, a graphical interface for Bitbake and very good documentation. DAVE Embedded Systems provides the so-called recipes/meta- repositories required to build all the software components (bootloader, kernel and root file system) with the Yocto build system. For further details, please refer to https://wiki.yoctoproject.org/wiki/FAQ.
. 1 . 0 . 1 7.2.2 DVDK DAVE Embedded Systems Virtual Development Kit is a virtual machine, based on Oracle VirtualBox that allows developers to start using DAVE Embedded Systems platform without wasting time in manually installing the development environment. The Virtual Machine comes with all the...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 sw/dvdk contained in the folder of the kit distribution) 7.2.2.2 MicroSD contents The microSD provided with the development kit provides: ●...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Development environment 7.3.1 Introduction The following figure show the typical development environment for an Embedded Linux system: it is composed of a host machine and a target machine.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 is able to mount the root file system from different physical media, for example from a directory exported via Network File System (NFS) by the host.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 commands. U-Boot manages an environment space where several variables can be stored. These variables are extremely useful to permanently save system settings (such as ethernet MAC address) and to automate boot procedures.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 their own custom Linux distributions for any hardware architecture and across multiple market segments. The Yocto Project is intended to simplify the work of the developers, providing a set of tools and components, including a highly configurable build system, that enables users to construct their own custom distributions, targeted for specific...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Please note that git fetch doesn't merge the commits on the current branch. To do that, the developer should run git merge origin/axel or replace the ''fetch-merge'' process with a single git pull command.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.3.3 Working with SBCX 7.3.3.1 The build system A build system is a set of source trees, Makefiles, patches, configuration files, tools and scripts that makes it easy to generate all the components of a complete embedded Linux system.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.3.3.3 Importing the DVDK virtual machine XELK provides a virtual machine image as a .OVA file, which is a virtual application exported in Open Virtualization Format (OVF).
Page 90
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Navigate your file system and select the .ova file provided with the XELK Fig. 35: Selecting the OVA file Click "Next"...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.3.3.4 Launching the DVDK virtual machine Launch the new Virtual Machine by double clicking on the XELK x.y.z entry on the left menù: Fig.
Page 92
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 At the end of the boot process, the Lubuntu desktop will be available (autologin is enabled for the user “dvdk”). Please note that the user account credentials are provided with the development kit (you can find them into the '''README''' file contained in the '''dvdk''' folder of the kit...
Page 93
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Fig. 39: Mounting the virtual disk Once logged in, the system could suggest to update the Virtualbox Guest Additions package. You can follow the on-screen instructions to easily install the updated package.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Check if your keyboard layout matches the Ubuntu keyboard settings. You can change the keyboard layout selecting System->Preferences->Keyboard from the top panel menù.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 u-boot-am33x ● : the U-Boot source tree yocto ● : the Yocto SDK installation directory qtcreator-x.y.z ● : pre-installed and pre-configured QtCreator IDE for Qt application development ●...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.3.3.7 NFS Server One of the most important components of a Linux system is the root file system. A good development root file system provides the developer with all the useful tools that can help developers on their work.
Page 97
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Fig. 42: Pre-built root file systems For more information on the Linux filesystem, please refer to http://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/. XELK provides pre-built root file systems, that can be used during the evaluation/development phase, since they contains the software packages for working with the AXEL platform.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Building the software components with Yocto The build process creates an entire Linux distribution from source. The build process can be summarized as follows: ●...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 ● python-m2crypto These packages can be installed with the following command: sudo apt-get install git build-essential diffstat texinfo gawk chrpath ia32-libs python-m2crypto It is also recommended to switch the system shell from Ubuntu's standard dash to more universal bash: $ sudo dpkg-reconfigure dash...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 $ source source axel-bsp-init-env.sh build $ bitbake axel-fsl-image-gui Please note that three different images are available: ● axel-fsl-image-gui (includes the gui application from NXP / Freescale) ●...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 code published in the git repositories, using the git fetch/merge or the git pull commands. For further details, please refer to section 7.3.2.7.
Page 102
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 toolchain provided with the XELK is required. Assuming that you've configured the environment variables sourcing the env.sh script, developers can write a simple "Hello world" application, called for example hello.c: #include <stdio.h>...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Building Qt applications Qt Creator is pre-installed and pre-configured in the DVDK. This means that developers can quickly build 7.6.1 Launching Qt Creator To launch QtCreator, simply open the main menù...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.6.2 Building a QtQuick “Hello World!” Follow the wizard to create a simple “Hello World!” application using the QtQuick 2 library: December, 2019 104/139...
Page 105
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 December, 2019 105/139...
Page 106
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 December, 2019 106/139...
Page 107
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Fig. 44: QtQuick "Hello World!" December, 2019 107/139...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.6.3 Running (and debugging) a Qt application on the SBCX 7.6.3.1 Launch the application To launch the application, select the Build option on the top menù and then click “Run”.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.6.3.2 Debug the application To debug the application, select the Debug option on the top menù and then click “Start debugging”. The application binary will be deployed and executed on the target, with a debug session attached: Fig.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.6.3.3 Using breakpoints Breakpoints can set by right-clicking on the corresponding line in the source code. In the next debug session, the application execution will stop at the breakpoint: Fig.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Building Android applications 7.7.1 Android development model 7.7.1.1 Introduction To develop apps for Android devices, you need a set of tools that are included in the Android SDK.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.7.1.2 Development tools A lot of information on how to start programming can be found here: http://developer.android.com/sdk/index.html. Before starting, make sure you can match the prerequisites: http://developer.android.com/sdk/index.html#Requirements In order to start development of your Android “Apps”, you need to install the following components:...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 information on how the emulator provided with the Android SDK works. In particular, check the Keymapping table to know how to navigate the Android GUI on the emulator.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 ● patching the AOSP project tree to support the i.MX6 platform according with the Android BSP provided by NXP / Freescale ●...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 SF: Detected S25FL256S with page size 64 KiB, total 32 MiB serial Out: serial Err: serial Power: found PFUZE100 (devid=10, revid=21) HW ver#: 0x1 (module_id) HW ver#: 0x0 (sbc_id) Net:...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.7.3 Running the Android Debug Bridge (ADB) ADB (http://developer.android.com/tools/help/adb.html) is a fundamental development tool and enables remote access to the Android device. ADB is provided with the Android SDK, so before using it you must install the SDK.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 commmand: $ adb install <path to apk> 7.7.4 Step By Step Guide to your First Android App This tutorial shows you how to develop your first Android application and run it on the SBCX platform.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.7.4.2 Creating applications with Android Studio Follow the instructions provided on the Creating an Android Project page (http://developer.android.com/training/basics/firstapp/creating- project.html) to create a new project.
Page 119
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 December, 2019 119/139...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.7.4.3 Deploy and launch the application on the SBCX To launch the application on the SBCX: ● make sure that ADB connection to the SBCX is active ●...
Page 121
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 December, 2019 121/139...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Programming the flash memory 7.8.1 Flashing binary images in NOR flash 7.8.1.1 U-Boot run load run spi_update 7.8.1.2 Linux kernel run loadk run spi_updatek...
Page 123
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 ● transfer the root file system on the mounted partition (typically by uncompressing a tar.gz archive) Please find below an example of the command sequence that can be used for an UBIFS file system (after booting the board via nfs).
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Customizing the splash screen SBCX provides support for a customizable splash screen. The following sections describe how to use this feature. 7.9.1 Customizing the splash screen The splash screen image can be downloaded via tftp to a specific RAM...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 7.9.3.2 Commands The following commands are used to store in NOR SPI flash a BMP image loaded via tftp: run loadsplashfile run spi_updatesplash 7.9.4...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Frequently Asked Questions Q: Where can I found AXEL SOM information? A: please refer to the following table: Document Location AXEL main page on...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Embedded Systems Developer's Wiki: http://wiki.dave.eu/index.php/Software_Manual_%28Axel %29#XELK_Updates Q: How can I work with the XYZ peripheral/interface? A: please refer to the “i.MX 6Dual/6Quad Linux Reference Manual”...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Parameter Description Default exported directory bootfile Path to the kernel binary xelk/uImage image on the tftp server fdtfile Path to the device tree xelk/imx6q-sbcx.dtb binary image on the tftp...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Please also note that the imx6q-cpufreq driver (http://lxr.free- electrons.com/source/drivers/cpufreq/imx6q-cpufreq.c? v=3.10 ) works on a per-SOC policy (and not on a per-core one), so the cpufreq governor changes the clock speed for all the ARM cores simultaneously.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 iface eth0 inet static pre-up ifconfig eth0 hw ether $(cat /proc/cmdline | sed 's/.*eth=\([^ ]*\).*/\1/') address 192.168.1.1 netmask 255.255.255.0 Q: How can I reduce the boot time? A: Reducing the boot time is a fine tuning task that is usually performed when the development of all the system components is complete.
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 Appendices U-Boot startup messages The following messages will be printed on the serial console during U- Boot startup (please note that messages may vary for different U-Boot releases): U-Boot 2013.04 (Jan 12 2016 - 15:51:23)-xelk-2.2.0 CPU: Freescale i.MX6Q rev1.5 at 792 MHz...
Page 132
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 bootdelay=3 bootfile=axel/uImage bootscript=echo Running bootscript from ${recoverydev} ...; source configid_fixupfdt=if configid checkfdt ${fdtaddr} som_configid ${som_configid#}; then if configid checkfdt ${fdtaddr} cb_configid ${cb_configid#};...
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 uboot=axel/u-boot.imx usbrecovery=usb start; usb dev 0; setenv recoverydev usb; run recovery Boot messages on the serial console The following messages will be printed on serial console during the Linux boot process (please note that messages may vary for different Linux releases): U-Boot >...
Page 134
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 0.000000] Kernel command line: root=/dev/nfs rw nfsroot=192.168.0.13:/opt/nfsroot/axel/xelk-2.1.0-qt5,v3,tcp ip=192.168.0.123:192.168.0.13::255.255.255.0:xelk:eth0:off panic=1 fec_mac=00:50:c2:1e:af:e3) 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes) 0.000000] Dentry cache hash table entries: 262144 (order: 8, 1048576 bytes) 0.000000] Inode-cache hash table entries: 131072 (order: 7, 524288 bytes) 0.000000] Memory: 2038MB 8MB = 2046MB total...
Page 135
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 0.473248] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it> 0.473272] PTP clock support registered 0.489025] imx-ipuv3 2400000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) 0.509018] imx-ipuv3 2800000.ipu: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7) 0.509846] imx6q-pinctrl 20e0000.iomuxc: pin MX6Q_PAD_GPIO_19 already requested by 20e0000.iomuxc;...
Page 136
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 0.838453] SW2: 800 <--> 3300 mV at 3300 mV 0.840367] SW3A: 400 <--> 1975 mV at 1500 mV 0.842278] SW3B: 400 <-->...
Page 137
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 2.606609] input: TSC2007 Touchscreen as /devices/soc0/soc.1/2100000.aips-bus/21a8000.i2c/i2c-1/1-0048/input/input0 2.618038] snvs_rtc 20cc034.snvs-rtc-lp: rtc core: registered 20cc034.snvs-rtc-lp as rtc0 2.626453] i2c /dev entries driver 2.632415] VGEN4: operation not allowed 2.639407] VGEN3: operation not allowed 2.742480] ov5640_read_reg:write reg error:reg=300a...
Page 138
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 4.040466] TCP: cubic registered 4.044318] NET: Registered protocol family 10 4.049740] sit: IPv6 over IPv4 tunneling driver 4.055026] NET: Registered protocol family 17 4.059520] can: controller area network core (rev 20120528 abi 9) 4.065827] NET: Registered protocol family 29 4.070341] can: raw protocol (rev 20120528)
Page 139
S B C X U s e r ' s G u i d e v . 1 . 0 . 1 December, 2019 139/139...