Thundercomm TurboX C610 Open Kit User Manual

Thundercomm TurboX C610 Open Kit User Manual

Hide thumbs Also See for TurboX C610 Open Kit:

Advertisement

Quick Links

Thundercomm TurboX C610 Open Kit
User Manual
Rev. 1.0
July 30, 2020
© 2020 Thundercomm Technology Co., Ltd. and/or its subsidiaries. All rights reserved.

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the TurboX C610 Open Kit and is the answer not in the manual?

Questions and answers

Summary of Contents for Thundercomm TurboX C610 Open Kit

  • Page 1 Thundercomm TurboX C610 Open Kit User Manual Rev. 1.0 July 30, 2020 © 2020 Thundercomm Technology Co., Ltd. and/or its subsidiaries. All rights reserved.
  • Page 2 Revision history Revision Date Description March 2020 Initial release April 2020 version with feature validation on C610 Dev kit July 2020 version with feature validation on C610 Open Kit Rev. 1.0 MAY CONTAIN U.S. AND INTERNATIONAL EXPORT CONTROLLED INFORMATION...
  • Page 3: Table Of Contents

    Contents 1 OVERVIEW: ..............................5 2 PROGRAM THE FIRMWARE ........................8 2.1 P ROGRAM SYSTEM IMAGES USING ASTBOOT ....................8 3 C610 FEATURES AND USE CASES ......................10 3.1 D EBUG PORT ............................... 10 3.2 SD CARD ..............................10 3.3 D ISPLAY ..............................
  • Page 4 Thundercomm TurboX C610 Open Kit 3.10 C : ..............................31 AMERA Environment configuration 3.10.1 ......................32 Push video stream to PC via adb tool. 3.10.2 ..................33 Push video stream to PC via network. 3.10.3 ..................33 3.10.4 Video record ............................34 3.10.5 Live snapshot.............................
  • Page 5: Overview

    1 Overview: The TurboX C610 Open Kit is a cost-effective solution to evaluate the performance and build the prototype of the smart cameras and intelligent IoT devices quickly. The Open Kit features rich interfaces, including USB Type A, HDMI in, Ethernet, and camera mezzanine-board expansions enabling the Kit “open”...
  • Page 6 Operation Humidity: 5%~95%, non-condensing Dimension 120 x 250 mm OS Support Linux, Android Turbox C610 Open Kit Block Diagram Turbox C610 Open Kit Camera Mezzanine Board, Camera Module and TFT-LCD are accessories to the Open Kit. Rev. 1.0 MAY CONTAIN U.S. AND INTERNATIONAL EXPORT CONTROLLED INFORMATION...
  • Page 7 Thundercomm TurboX C610 Open Kit Open Kit TOP View Open Kit Bottom View Rev. 1.0 MAY CONTAIN U.S. AND INTERNATIONAL EXPORT CONTROLLED INFORMATION...
  • Page 8: Program The Firmware

    NOTE: must be detected on your host machine. To install Linux from a host PC complete the following steps: Download the C610 fastboot images package from the Thundercomm website and unzip it. 2. Entering to Fastboot a. Press and hold ‘VOL-’ then press Power once quickly to force the device to enter Fastboot mode b.
  • Page 9 Thundercomm TurboX C610 Open Kit 5. Flash images: a. From the Windows command shell, run: fastboot_all.bat b. From Linux, go to the folder and run: $chmod 777 turbox_flash.sh $sudo ./turbox_flash.sh --all -r After the script is executed, the board will reboot automatically.
  • Page 10: C610 Features And Use Cases

    Thundercomm TurboX C610 Open Kit 3 C610 Features and Use Cases This chapter presents C610 Platform features and use cases. 3.1 Debug port 1. Connect UART Port debug port: 2. Log in using the following account credentials: … … [ OK ] Started start dsp variants.
  • Page 11: Display

    Thundercomm TurboX C610 Open Kit 62914560 bytes (60.0MB) copied, 6.366916 seconds, 9.4MB/s #echo 3 >/proc/sys/vm/drop_caches #dd if=/sdcard/test.txt of=/dev/null dd if=/sdcard/test.txt of=/dev/null 122880+0 records in 122880+0 records out 62914560 bytes (60.0MB) copied, 0.092965 seconds, 645.4MB/s 3.3 Display 3.3.1 DSI LCD 1. Preparation for LCD test. Make sure the LCD panel (accessory) connected to the carry board.
  • Page 12 Thundercomm TurboX C610 Open Kit Figure 1 DSI LCD Module 2. Testing LCD panel through weston. $ adb shell # mount -o remount,rw / # killall weston # mkdir /usr/bin/weston_socket # export XDG_RUNTIME_DIR=/usr/bin/weston_socket # mkdir --parents XDG_RUNTIME_DIR # chmod 0700 XDG_RUNTIME_DIR # cd /usr/bin /usr/bin # ./weston --tty=1 --device=msm_drm...
  • Page 13 Thundercomm TurboX C610 Open Kit Date: 2020-07-28 UTC [02:49:52.047] weston 1.9.0 http://wayland.freedesktop.org Bug reports to: https://bugs.freedesktop.org/enter_bug.cgi?product=Wayland&component=weston&version =1.9.0 Build: unknown (not built from git or tarball) [02:49:52.048] OS: Linux, 4.14.163, #1 SMP PREEMPT Wed Jul 29 07:09:28 UTC 2020, aarch64 [02:49:52.049] Starting with no config file.
  • Page 14 Thundercomm TurboX C610 Open Kit DRMPPManager::Init: Init: Gamut version 4 [02:49:52.139] DRMPPManager::Init: Init: Gamut version 4[02:49:52.139] DRMPlane::GetTypeInfo: info->master_plane_id: detected master_plane=79 [02:49:52.145] DRMPlane::GetTypeInfo: info->master_plane_id: detected master_plane=79[02:49:52.145] DRMPlane::GetTypeInfo: info->master_plane_id: detected master_plane=82 [02:49:52.147] DRMPlane::GetTypeInfo: info->master_plane_id: detected master_plane=82[02:49:52.147] DRMPlane::GetTypeInfo: info->master_plane_id: detected master_plane=85 [02:49:52.148] DRMPlane::GetTypeInfo: info->master_plane_id: detected master_plane=85[02:49:52.148]...
  • Page 15 Thundercomm TurboX C610 Open Kit HWInfoDRM::GetHWResourceInfo: Max plane width = 2160 [02:49:52.155] HWInfoDRM::GetHWResourceInfo: Max plane width = 2160[02:49:52.155] HWInfoDRM::GetHWResourceInfo: Max cursor width = 128 [02:49:52.155] HWInfoDRM::GetHWResourceInfo: Max cursor width = 128[02:49:52.156] HWInfoDRM::GetHWResourceInfo: Max plane upscale = 20 [02:49:52.156] HWInfoDRM::GetHWResourceInfo: Max plane upscale = 20[02:49:52.156] HWInfoDRM::GetHWResourceInfo: Max plane downscale = 4 [02:49:52.156] HWInfoDRM::GetHWResourceInfo: Max plane downscale = 4[02:49:52.156]...
  • Page 16 Thundercomm TurboX C610 Open Kit GL_EXT_texture_format_BGRA8888 GL_OES_texture_3D GL_EXT_color_buffer_float GL_EXT_color_buffer_half_float GL_QCOM_alpha_test GL_OES_depth24 GL_OES_packed_depth_stencil GL_OES_depth_texture GL_OES_depth_texture_cube_map GL_EXT_sRGB GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_EXT_texture_type_2_10_10_10_REV GL_EXT_texture_sRGB_decode GL_EXT_texture_format_sRGB_override GL_OES_element_index_uint GL_EXT_copy_image GL_EXT_geometry_shader GL_EXT_tessellation_shader GL_OES_texture_stencil8 GL_EXT_shader_io_blocks GL_OES_shader_image_atomic GL_OES_sample_variables GL_EXT_texture_border_clamp GL_EXT_EGL_image_external_wrap_modes GL_EXT_multisampled_render_to_texture GL_EXT_multisampled_render_to_texture2 GL_OES_shader_multisample_interpolation GL_EXT_texture_cube_map_array GL_EXT_draw_buffers_indexed GL_EXT_gpu_shader5 GL_EXT_robustness GL_EXT_texture_buffer...
  • Page 17 Thundercomm TurboX C610 Open Kit GL_QCOM_texture_foveated GL_QCOM_shader_framebuffer_fetch_noncoherent GL_EXT_memory_object GL_EXT_memory_object_fd GL_EXT_EGL_image_array GL_NV_shader_noperspective_interpolation GL_KHR_robust_buffer_access_behavior GL_EXT_EGL_image_storage GL_EXT_blend_func_extended GL_EXT_clip_control GL_QCOM_validate_shader_binary [02:49:52.861] GL ES 2 renderer features: read-back format: RGBA wl_shm sub-image to texture: no EGL Wayland extension: yes [02:49:52.861] Chosen EGL config details: RGBA bits: 8 8 8 8...
  • Page 18 Thundercomm TurboX C610 Open Kit DPMST 0x00000007 0x00000000 Connectors: encoder status name size (mm) modes encoders connected DSI-1 62x110 modes: name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot) 720x1280x60x66946 60 720 780 784 844 1280 1300 1302 1322 flags: ; type: preferred...
  • Page 19: Display Port

    Thundercomm TurboX C610 Open Kit b. Using modetest display example. # modetest -M msm_drm -s 28:720x1280x60x66946 setting mode 720x1280x60x66946-60Hz@XR24 on connectors 28, crtc 107 3.3.2 Display Port 1. Preparation for Display Port test. Make sure the external display monitor connected to the carry board.
  • Page 20 Thundercomm TurboX C610 Open Kit 640x480 60 640 656 752 800 480 490 492 525 flags: nhsync, nvsync; type: driver 720x400 70 720 738 846 900 400 412 414 449 flags: nhsync, pvsync; type: driver props: 1 EDID: flags: immutable blob...
  • Page 21: Touchpanel

    Thundercomm TurboX C610 Open Kit b. Using modetest display example. / # modetest -M msm_drm -s 53:1920x1080 setting mode 1920x1080-60Hz@XR24 on connectors 53, crtc 107 3.4 Touchpanel It is not supported yet. 3.5 USB Type A 1. Connecting a mouse to the OpenKit USB Type A interface and check the input device.
  • Page 22: Led Control

    Thundercomm TurboX C610 Open Kit 0000040 8b0c 5f1f 883d 000c 0002 0000 fff5 ffff 0000050 8b0c 5f1f 883d 000c 0002 0001 0002 0000 0000060 8b0c 5f1f 883d 000c 0000 0000 0000 0000 0000070 8b0c 5f1f a781 000c 0002 0000 fffd ffff 0000080 8b0c 5f1f a781 000c 0002 0001 0001 0000 2.
  • Page 23: Button Events

    Thundercomm TurboX C610 Open Kit # echo 255 > /sys/class/leds/green/brightness //Turn on # echo 0 > /sys/class/leds/green/brightness //Turn off # echo 255 > /sys/class/leds/blue/brightness //Turn on # echo 0 > /sys/class/leds/blue/brightness //Turn off 3.7 Button events The following figure shows the button positions.
  • Page 24: Wi-Fi & Bluetooth

    Thundercomm TurboX C610 Open Kit 3.8 Wi-Fi & Bluetooth The following figure shows the WLAN and BT connectivity. 3.8.1 Set up Wi-Fi STA mode Confirm the antenna is properly connected. To verify connectivity while the device is in Station mode, execute the...
  • Page 25: Set Up Wi-Fi Ap Mode

    Thundercomm TurboX C610 Open Kit Run the following command to confirm that the device is connected to wifi.The log of IP address acknowledgement proves the connection issuccessful: #ifconfig wlan0 wlan0 Link encap:Ethernet HWaddr 00:0A:F5:83:66:EF inet addr:192.168.43.92 Bcast:192.168.43.255 Mask:255.255.255.0 inet6 addr: fe80::20a:f5ff:fe83:66ef%1736140884/64 Scope:Link...
  • Page 26: Bluetooth Generic Access Profile (Gap)

    Thundercomm TurboX C610 Open Kit # ps | grep hostapd 2345 /etc/misc/wifi/hostapd.conf use your phone to connect this wifi named: AndroidAP-sdmsteppe-WPA2,the connection password is: 123456789. 3.8.3 Bluetooth Generic Access Profile (GAP) 6. Before running btapp, run the btproperty in the background (run only once at...
  • Page 27: Enable Bluetooth

    Thundercomm TurboX C610 Open Kit 3.8.4 Enable Bluetooth After running btapp, input “enable” and press “Enter”enable enable killall: wcnssfilter: no process killed killall: btsnoop: no process killed killall: qcbtdaemon: no process killed /bin/sh: qcbtdaemon: not found Load Audio HAL competed BT State is ON 3.8.5 Start inquiry...
  • Page 28: Pair Outgoing Ssp

    Thundercomm TurboX C610 Open Kit inquiry_list **************************** Inquiry List******************************* LE-Bose SoundSport 28:11:a5:01:00:a2 360FLY4K_00C8 e4:ba:d9:10:00:c9 LE-reserved_N 28:11:a5:24:01:05 **************************** End of List ******************************* 3.8.7 Pair outgoing SSP Use the following command to pair outgoing SSP:  pair<bd_address> To accept or reject the outgoing pairing for the following example (pair ...
  • Page 29: Ethernet

    Thundercomm TurboX C610 Open Kit BT State is OFF 3. To exit from btapp, navigate to the main menu and enter the following command: exit 3.9 Ethernet Follwed show ETH port LAN mode and WAN mode connectivity 3.9.1 WAN mode connectivity 1.
  • Page 30: Lan Mode Connectivity

    Thundercomm TurboX C610 Open Kit collisions:0 txqueuelen:1000 RX bytes:13662 (13.3 KiB) TX bytes:9924 (9.6 KiB) Interrupt:86 4. Do ping testing : # ping www.baidu.com PING www.baidu.com (220.181.38.149): 56 data bytes 64 bytes from 220.181.38.149: seq=0 ttl=48 time=8.708 ms 64 bytes from 220.181.38.149: seq=1 ttl=48 time=9.975 ms 64 bytes from 220.181.38.149: seq=2 ttl=48 time=9.404 ms...
  • Page 31: Camera

    Thundercomm TurboX C610 Open Kit eth0 Link encap:Ethernet HWaddr 00:55:7B:B5:7D:F7 inet addr:169.254.4.1 Bcast:169.254.4.255 Mask:255.255.255.0 inet6 addr: fe80::255:7bff:feb5:7df7/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:158 errors:0 dropped:0 overruns:0 frame:0 TX packets:32 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:19196 (18.7 KiB) TX bytes:2844 (2.7 KiB) Interrupt:86 4.
  • Page 32: Environment Configuration

    Thundercomm TurboX C610 Open Kit For more information on the gst-launch tool, see the official documentation page https://gstreamer.freedesktop.org/documentation/tools/gst-launch.html?gi- language=c 3.10.1 Environment configuration 1.Disable roortfs write-protect: $ adb root $ adb disable-verity $ adb reboot 2.Pre-configruration for camera working properly Follow these steps to prepare the device for running multimedia use cases. The following steps must be performed only once after flashing the device.
  • Page 33: Push Video Stream To Pc Via Adb Tool

    Thundercomm TurboX C610 Open Kit 3.10.2 Push video stream to PC via adb tool. 1.Start gst-launch-1.0 on device end $ adb remount $ adb shell mount -o remount,rw / $ adb forward tcp:8900 tcp:8900 $ adb shell # gst-launch-1.0 -e qtiqmmfsrc name=qmmf ! video/x-...
  • Page 34: Video Record

    Thundercomm TurboX C610 Open Kit 1.Start gst-launch-1.0 on device end $ adb remount $ adb shell mount -o remount,rw / $ adb shell # gst-launch-1.0 -e qtiqmmfsrc name=qmmf ! video/x- h264,format=NV12,width=3840,height=2160,framerate=30/1 ! h264parse config- interval=1 ! mpegtsmux name=muxer ! queue ! tcpserversink port=8900 host=x.x.x.x "host=x.x.x.x",the IP address must be the same as configurated for the...
  • Page 35: Live Snapshot

    Thundercomm TurboX C610 Open Kit Press CTRL+C to stop the recording. 3.10.5 Live snapshot Snapshot can be taken along with video capture. The following command is used to take a 4K snapshot while 1080p streaming is running. # gst-pipeline-app -e qtiqmmfsrc name=qmmf ! video/x- h264,width=1920,height=1080,framerate=30/1 ! h264parse ! mp4mux ! queue ! filesink location="/data/mux.mp4"...
  • Page 36: Audio

    Thundercomm TurboX C610 Open Kit 3.11 Audio 3.11.1 Playback WAV 1.Make sure connected Speaker Please download the test file from below URL URL: https://thundercomm.s3.ap-northeast-1.amazonaws.com/shop/doc/1582852506026401/audiotest.wav 2.Playback by tinyalsa vis speaker (1) Push contents # adb push audiotest.wav /data/ (2) Playback # adb shell $ systemctl stop pulseaudio $ tinymix set "SLIM RX0 MUX"...
  • Page 37 Thundercomm TurboX C610 Open Kit $ tinymix set "SLIM_0_RX Channels" "Two" $ tinymix set "RX INT7_1 MIX1 INP0" "RX0" $ tinymix set "RX INT8_1 MIX1 INP0" "RX1" $ tinymix set "COMP7 Switch" "1" $ tinymix set "COMP8 Switch" "1" $ tinymix set "SpkrLeft COMP Switch" "1"...
  • Page 38 Thundercomm TurboX C610 Open Kit 3.Playback by hal_play_test via speaker (1) Push contents # adb push audiotest.wav /data/ (2) Playback # adb shell $ setenforce 0 $ systemctl stop pulseaudio $ hal_play_test -f /data/audiotest.wav -t 1 -d 2 -v 0.3 -r 48000 -c 2 4.Playback by tinyalsa via headphones...
  • Page 39: Capture With Dmics

    Thundercomm TurboX C610 Open Kit $ tinymix set "SLIM_6_RX Channels" "Two" $ tinymix set "RX INT1_2 MUX" "RX2" $ tinymix set "RX INT2_2 MUX" "RX3" $ tinymix set "SLIMBUS_6_RX Audio Mixer MultiMedia1" "1" $ tinyplay /data/audiotest.wav (3) Disable audio path...
  • Page 40 Thundercomm TurboX C610 Open Kit $ tinymix set 'ADC MUX0' DMIC $ tinymix set 'DMIC MUX0' DMIC1 $ tinymix set 'SLIM_0_TX Channels' One $ tinymix set 'MultiMedia1 Mixer SLIM_0_TX' 1 $ tinycap /data/dmic1.wav -D 0 -d 0 -t 10 -r 48000 -c 1...
  • Page 41 Thundercomm TurboX C610 Open Kit $ tinymix set 'ADC MUX4' DMIC $ tinymix set 'DMIC MUX4' DMIC4 $ tinymix set 'AIF1_CAP Mixer SLIM TX5' 1 $ tinymix set 'CDC_IF TX5 MUX' DEC5 $ tinymix set 'ADC MUX5' DMIC $ tinymix set 'DMIC MUX5' DMIC5...
  • Page 42: Tflite

    Thundercomm TurboX C610 Open Kit 3.Play the wav file # adb pull /data/dmic0.wav . # adb pull /data/dmic1.wav . # adb pull /data/6mics.wav . Play the *.wav , you can hear what your said before. 3.12 TFLite 1. For testing tensorflow lite using label image: $ adb shell mkdir /data/tf 2.
  • Page 43: Snpe

    Thundercomm TurboX C610 Open Kit Loaded model mobilenet_quant_v1_224.tflite resolved reporter INFO: Initialized TensorFlow Lite runtime. Input file: ./grace_hopper.bmp Input file size: 2400138 Input file width, height, channels: 800, 1000, 3 INFO: Created TensorFlow Lite delegate for NNAPI. [/home/turbox/lxf/project/qcs610_2/apps_proc/build-qti-distro-fullstack-debug/tmp- glibc/work/armv7ahf-neon-oe-linux-gnueabi/nn-framework/1.0- r0/nn/runtime/Manager.cpp(468):(2)]DeviceManager::DeviceManager [/local/mnt/workspace/lnxbuild/project/trees_in_use/free_tree_dir/checkout/build-qti-distro- fullstack-perf/tmp-glibc/work/armv7ahf-neon-oe-linux-gnueabi/nnhal/1.0-...
  • Page 44: Test The Snpe Example

    Thundercomm TurboX C610 Open Kit Validate SNPE Runtime : 1. Run this command: $ adb shell # snpe-platform-validator --runtime all Expected Output show SNPE DSP runtime is ready for use: # PF_VALIDATOR: DEBUG: starting calculator test # PF_VALIDATOR: DEBUG: Successfully loaded DSP library - #'libcalculator_domains.so'. Setting up pointers.
  • Page 45 Thundercomm TurboX C610 Open Kit $ wget https://thundercomm.s3.ap-northeast- 1.amazonaws.com/shop/doc/1582852506026401/snpe.zip $ unzip snpe.zip 2. Run the script for SNPE $ cd snpe $ chmod 777 snpe.sh $ ./snpe.sh 3. When the script for running SNPE is finished, start the test $ adb shell # cd data # snpe-net-run --container bvlc_alexnet.dlc --input_list target_raw_list.txt --perf_profile...

Table of Contents