Rockchip · AI & Linux Hub

Rockchip Linux Software and System Test Guide

Rockchip Linux Software and System Test Guide — V2.0.2

· ArmSoM Editorial · Rockchip source documentation · 21 min read

Based on Chinese and English RK-SM-YF-352 V2.0.2 (2024-05-16), with Chinese as the technical baseline. All five chapters, commands, test parameters and screenshots are retained. This is an ArmSoM platform reference: verify the actual board, SoC, SDK/BSP and peripherals. No device tests were executed. Warning: the source dd writes overwrite partitions, SD creation/upgrading includes flash erasure, and the recovery menu includes wipe all. Back up data and verify targets; do not run these examples on devices containing valuable data. killall bash also terminates unrelated Bash processes.

1. Functions Test

1.1 Buildroot

1.1.1 Video

Video:

rkisp_demo --device=/dev/video1 --output=/tmp/isp.yuv --iqfile=/etc/iqfiles/OV5695.xml

Play video: Pull the file in the /tmp/cif.yuv directory to PC: adb pull /tmp/cif.yuv /tmp/cif.yuv , and play it through a YUV tool.

1.1.2 Recording

arecord -c channel -r sampling frequency -f sampling bits -d recording duration/recording storage path/recording file name . Channel ch_tbl=”2 4 6 8” Sampling frequency: fs_tbl=”8000 11025 16000 22050 32000 44100 48000 64000 88200 96000 176400 192000” Sampling bits: bits_tbl=”S16_LE S24_LE S32_LE” Package format “wmv, wav, mp3, etc.” For example: Time-limited recording- after recording for 10 seconds will exit and save automatically:

arecord -c 2 -r 44100 -f S16_LE –d 10 /tmp/record.wav

Unlimited time recording -ctrl+c: exit to save:

arecord -c 2 -r 44100 -f S16_LE /tmp/record.wav

Play recording files:

aplay /tmp/record.wav

1.1.3 Wi-Fi Connecting

Method 1: wifi_start.sh script If the sdk integrates the wifi_start.sh script, you can add ssid and password directly after the script.

wifi_start.sh WiFi-AP password

Method 2: Modify the configuration file

$ vi /data/cfg/wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant #It is not recommended to modify by default!
ap_scan=1
update_config=1 #This configuration enables the hotspots configured by the wpa_cli command to be saved in the
conf file (wpa_cli save_config)
#Encrypted wi-fi
network={
    ssid="WiFi-AP"   # Wi-Fi name
    psk="password"   # Wi-Fi password
    key_mgmt=WPA-PSK # Authentication method
}
#Unencrypted Wi-Fi:
network={
    ssid="WiFi-AP"  # Wi-Fi name
    key_mgmt=NONE   # Authentication method
}

#Let the wpa_supplicant process re-read the above configuration:
wpa_cli -i wlan0 -p /var/run/wpa_supplicant reconfigure
#Initiate connection:
wpa_cli -i wlan0 -p /var/run/wpa_supplicant reconnect

Method 3: wpa_cli tool

#EncryptedWi-Fi:
wpa_cli -i wlan0 -p /var/run/wpa_supplicant remove_network 0
wpa_cli -i wlan0 -p /var/run/wpa_supplicant ap_scan 1
wpa_cli -i wlan0 -p /var/run/wpa_supplicant add_network
wpa_cli -i wlan0 -p /var/run/wpa_supplicant set_network 0 ssid "WiFi-AP"
wpa_cli -i wlan0 -p /var/run/wpa_supplicant set_network 0 key_mgmt WPA-PSK
wpa_cli -i wlan0 -p /var/run/wpa_supplicant set_network 0 psk '"password"'
wpa_cli -i wlan0 -p /var/run/wpa_supplicant select_network 0
wpa_cli -i wlan0 -p /var/run/wpa_supplicant save_config #Save the above configuration to the conf file
#Unencrypted Wi-Fi:
wpa_cli -i wlan0 -p /var/run/wpa_supplicant remove_network 0
wpa_cli -i wlan0 -p /var/run/wpa_supplicant ap_scan 1
wpa_cli -i wlan0 -p /var/run/wpa_supplicant add_network
wpa_cli -i wlan0 -p /var/run/wpa_supplicant set_network 0 ssid "WiFi-AP"
wpa_cli -i wlan0 -p /var/run/wpa_supplicant set_network 0 key_mgmt NONE
wpa_cli -i wlan0 -p /var/run/wpa_supplicant select_network 0
wpa_cli -i wlan0 -p /var/run/wpa_supplicant save_config

Check connection status:

wpa_cli -i wlan0 -p /var/run/wpa_supplicant status

For details, please refer to Rockchip_Developer_Guide_Linux_WIFI_BT_CN.pdf

1.1.4 Music Player

aplay /media/usb0/musicdemo.wmv

1.1.5 System Time

date                               #check system time
date --set='2018-12-24 15:17:42'   #Set system time
hwclock --show                     #check hardware time
hwclock --systohc                  #synchronous display of hardware time and system time

1.1.6 RTC Clock

Check whether the time has changed in the current state or after restart.

cat /sys/class/rtc/rtc0/time

1.1.7 Video Playback

Video playback in single window:

gst-play-1.0 /oem/SampleVideo_1280x720_5mb.mp4

Video playback in multi-window:

sh /rockchip-test/video/test_gst_multivideo.sh

1.1.8 SD Card Upgrade and Boot

Insert the SD card into PC, execute the SD_Firmware_Tool.exe on PC, select firmware upgrade/SD boot, select firmware- update.img, and start creating. After the SDK enters the maskrom and erases the flash, power off. Insert the prepared SD card, power on the SDK, and it will automatically burn the firmware.

Rockchip Linux Software and System Test Guide — en 6

1.1.9 Search the File

find ./ -name ***

1.1.10 Check Memories

cat /proc/meminfo or free –h

1.1.11 Check Disk Usage (source heading: Check Memory Usage)

df -h

1.2 Debian

1.2.1 Terminal Position

Terminal position: start -> System Tools -> LXTerminal

1.2.2 Wi-Fi Connection

Enter the following command in the serial port:

nmcli r wifi on  #steps 1:turn on Wi-Fi
nmcli dev wifi   #steps 2:scan nearby AP
#steps 3:connect AP
nmcli dev wifi connect "DIR-803" password "839919060" ifname wlan0
nmcli r wifi off #steps 4:turn off Wi-Fi

1.2.3 Dual-screen with Different Display

Use xrandr to make sure how many display devices there are. For example, the following two devices, HDMI-1 and DP-1 can be detected:

root@linaro-alip:/# xrandr
Screen 0: minimum 320 x 200, current 1920 x 1920, maximum 16384 x 16384
HDMI-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1920x1080     60.00 +  60.00*   50.00    30.00    24.00
   1920x1080i    60.00    50.00    50.00
   1280x1024     60.02
   1280x720      60.00    50.00    50.00
   720x576       50.00    50.00
   720x576i      50.00
   720x480       59.94    59.94
   720x480i      59.94
HDMI-2 disconnected (normal left inverted right x axis y axis)
DSI-1 connected 1080x1920+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1080x1920     59.90*+
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)

xrandr is used to set the relationship between the two screens:

su linaro-c "DISPLAY=:0 xrandr--output HDMI-1--above DSI-1"

The –above can be replaced by right-of, left-of, below, same-as, preferred, off, etc. For more detals, please refer to Rockchip_Developer_Guide_Linux_Graphics_CN.pdf

1.2.4 Dual-screen with Different Audio

Method 1: Open the Sound&Video—->PulseAudio Volume Control in the bottom left corner:

Rockchip Linux Software and System Test Guide — en 7

Method 2: Use aplay to confirm the sound card and select the sound card to play:

root@linaro-alip:/# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: rockchipdp0 [rockchip,dp0], device 0: rockchip,dp0 spdif-hifi-0 [rockchip,dp0 spdif-hifi-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: rockchipes8388 [rockchip-es8388], device 0: dailink-multicodecs ES8323.7-0011-0 [dailink-multicodecs
ES8323.7-0011-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: rockchiphdmi0 [rockchip-hdmi0], device 0: rockchip-hdmi0 i2s-hifi-0 [rockchip-hdmi0 i2s-hifi-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

dp0: aplay-Dplughw:0,0/dev/urandom
es8388: aplay-Dplughw:1,0/dev/urandom
hdmi0: aplay-Dplughw:2,0/dev/urandom

Method 3: Open a song and drag it from the main screen to the secondary screen, and then select a sound card to play in the same way on the main screen to complete the dual-screen with different audio function. For more detals, please refer to Rockchip_Developer_Guide_Linux_Graphics_CN.pdf

1.2.5 Display Rotation

Rotation normal/left/right:

vi /etc/X11/xorg.conf.d/20-modesetting.conf

Change the normal to left/right/ and it will take effect after reboot.

2. Performance Test

2.1 Disk Read and Write Test

Check device nodes with fdisk -l first. The source uses the last partition, mmcblk0p8 (14.6G), as writable userdata for eMMC performance testing. This does not establish that every board’s last partition is writable; the following write test overwrites its data.

root@linaro-alip:~# fdisk -l
Disk /dev/mmcblk0: 29.1 GiB, 31268536320 bytes, 61071360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 1124E418-9008-41F8-9E3D-8D872216C8A1
Device           Start      End  Sectors  Size Type
/dev/mmcblk0p1    16384    24575     8192    4M unknown
/dev/mmcblk0p2    24576    32767     8192    4M unknown
/dev/mmcblk0p3    32768   163839   131072   64M unknown
/dev/mmcblk0p4   163840   425983   262144  128M unknown
/dev/mmcblk0p5   425984   491519    65536   32M unknown
/dev/mmcblk0p6   491520 29851647 29360128   14G unknown
/dev/mmcblk0p7 29851648 30113791   262144  128M unknown
/dev/mmcblk0p8 30507008 61071295 30564288 14.6G unknown

2.1.1 eMMC Read and Write

Write:

dd if=/dev/zero of=/dev/mmcblk0p8 bs=1M count=2000 oflag=direct,nonblock

Read:

dd if=/dev/mmcblk0p8 of=/dev/null bs=1M count=2000 iflag=direct,nonblock

2.1.2 U disk Read and Write

Write:

dd if=/dev/zero of=/dev/sda1 bs=1M count=2000 oflag=direct,nonblock

Read:

dd if=/dev/sda1 of=/dev/null bs=1M count=2000 iflag=direct,nonblock

2.2 Set Performance Mode

echo performance | tee $(find /sys/ -name *governor)

2.3 Check CPU DDR Frequency

cat /sys/kernel/debug/clk/clk_summary |grep -E "cpu|arm|ddr"

2.4 glmark2 Performance Score

Buildroot glmark2 Display screen performance score:

sh /rockchip-test/gpu/test_fullscreen_glmark2.sh

Do not display screen performance score:

sh /rockchip-test/gpu/test_offscreen_glmark2.sh

3. Hardware Stability Test

3.1 IO-DOMAINS

The hardware supply voltage of all GPIO power domains is required to match the software configuration. Please re-examine the correctness of the project voltage configuration before mass production, especially the configuration of Wi-Fi, FLASH, and Ethernet IO power supplies. Otherwise, the following problems will occur: If the software configuration is 1.8V, but the hardware power supply is 3.3V, it will cause the low withstand voltage circuit working in overvoltage state, and the chipset will be damaged after long time working. If the software configuration is 3.3V, but the hardware power supply is 1.8V, the circuit will work abnormally; For the configuration check method, please refer to the documentation under the corresponding chip platform. For example, for RK3568, please refer to: Rockchip_RK356X_Introduction_IO_Power_Domains_Configuration_CN.pdf

3.2 Power Supply

It is recommended that the power supply design for the project’s hardware use our reference design. If there are changes to the power supply solution or differences in component selection, especially when using discrete power supplies instead of our matched PMIC power supply solution, Necessary tests (includes testing the power-up sequence during cold starts and restarts, voltage, and ripple under high load conditions) need to be done on all core power supplies related to the chip booting, such as: VDD_LOGIC, VDD_ARM, VCC_PMU, VCC_DDR supplies, etc.

3.3 Signal

After the project’s hardware schematics are completed, it is recommended to submit them through the Redmine system for our engineers to review, especially the DDR section, which needs to strictly follow our template for design. At the same time, the selection of DDR, EMMC, and FLASH chips must be from our AVL, which can be obtained through Redmine.

3.4 High and Low Temperature Test

In addition to stability testing at room temperature, it is recommended that customers complete CPU stress, DDR stress, reboot stress, and cold boot tests in high and low temperature environments that are the actual working temperatures of the product to ensure the stability of the product in high and low temperature operating environments.

4. Software Stability Test

This section primarily introduces the basic tools utilized by the Rockchip test suite and And how to use the rockchip test suite to complete the software stability testing for products.

4.1 Basic Tools

4.1.1 stressapptest

4.1.1.1 Overview

Stressapptest will create threads to copy and directly read from and write to the disk. It tries to maximize the system’s memory load as much as possible to conduct more effective testing. Additionally, it aims to randomize data from the processor and I/O to memory, creating a simulated real-world environment to test the stability of current hardware devices. It has been used at Google for some time and now it is available under the apache 2.0 license. stressapptest may be used for the following purposes: Stress test: as described here. Hardware qualification and debugging. Memory interface test: see the Theory behind this. Disk testing.

4.1.1.2 Usage

To execute, a typical command would be:

stressapptest -s 20 -M 256 -m 8 -W    # Test 256MB, running 8 "warm copy" threads. Exit after 20 seconds.
stressapptest --help                  # list the available arguments.

Common arguments

Option Meaning / default
-M mbytes RAM megabytes to test; automatically detect available memory
-s seconds Seconds to run; 20
-m threads Memory-copy threads; automatically detect CPU count
-W More CPU-intensive copying; false
-n ipaddr Network thread connecting to ipaddr; none
--listen Listen and respond to network threads; 0
-f filename Disk thread using temporary filename; none
-F Do not check every transaction; use libc memcpy; false
-l logfile Log output file; none
-v level Verbosity 0–20; default 8

4.1.2 memtester

4.1.2.1 Overview

A userspace utility for testing the memory subsystem for faults. It’s portable and should compile and work on any 32- or 64-bit Unix-like system. (Yes, even weird, proprietary Unices, and even Mac OS X.) For embedded system developers, memtester can be told to test memory starting at a particular physical address as of memtester version 4.1.0.

4.1.2.2 Usage
memtester [-p physaddrbase [-d device]] <mem>[B|K|M|G] [loops]

Detailed test items within the loop:

Stuck Address
Random Value
Compare XOR
Compare SUB
Compare MUL
Compare DIV
Compare OR
Compare AND
Sequential Increment
Solid Bits
Block Sequential
Checkerboard
Bit Spread
Bit Flip
Walking Ones
Walking Zeroes
8-bit Writes
16-bit Writes

4.2 Rockchip Test

The log output path for Rockchip test stress testing is /userdata/rockchip-test, so please ensure that the directory has read and write permissions before testing. A complete serial port log is helpful for better analysis and problem location. Therefore, during testing, the product needs to be connected with a serial port, and the serial port host machine should have the capability to save all logs.

4.2.1 Configuration Enablement

In the buildroot, to enable the Rockchip-test package, the following configurations need to be enabled:

#  - stress test on cpu and memory
BR2_PACKAGE_STRESSAPPTEST=y
#  - memtest used to testing the memory subsystem for faults
BR2_PACKAGE_MEMTESTER=y
#  - audio, reboot, bluetooth, ddr, dvfs, flash, suspend/resume, wifi
BR2_PACKAGE_ROCKCHIP_TEST=y

4.2.2 Test List

The currently supported stress test list is as follows:

# bash /rockchip-test/rockchip_test.sh
"******************************************************"
"***                                                ***"
"***          *****************************         ***"
"***          *     ROCKCHIP TEST TOOLS    *         ***"
"***          *  V2.0 updated on 20220928  *         ***"
"***          *****************************         ***"
"***                                                ***"
"*****************************************************"

"*****************************************************"
"ddr test:              1 (ddr stress test)"
"cpu test:              2 (cpu stress test)"
"gpu test:              3 (gpu stress test)"
"npu test:              4 (npu stress test)"
"suspend_resume test:   5 (suspend resume test)"
"reboot test:           6 (auto reboot test)"
"power lost test:       7 (power lost test)"
"flash stress test:     8 (flash stress test)"
"recovery test:         9 (recovery wipe all test)"
"audio test:           10 (audio test)"
"camera test:          11 (camera test)"
"video test:           12 (video test)"
"bluetooth test:       13 (bluetooth on off test)"
"wifi test:            14 (wifi on off test)"
"chromium test:        15 (chromium with video test)"
"*****************************************************"

4.2.3 Testing Scale

It is recommended that each test project is deployed for 10 units * 24 hours or more, with adjustments made according to the degree of stability required by the project.

4.2.4 Testing Methods

Below is an example of the testing methods for each unit in the DDR stress test using memtester . Unit testing can be executed from the rockchip_test script or by directly running the corresponding script.

4.2.4.1 Rockchip Test
bash rockchip-test/rockchip_test.sh

Enter the corresponding number 1 for DDR Test in the input stress test list

"*****************************************************"
"***                                               ***"
"***            DDR TEST                           ***"
"***                                               ***"
"*****************************************************"
"*****************************************************"
"memtester:                                      1"
"stressapptest:                                  2"
"stressapptest + memtester:                      3"
"ddr auto scaling:                               4"
"stressapptest + memtester + ddr auto scaling:   5"
"*****************************************************"

Then enter the number 1 corresponding to the test item memtester to start the test.

4.2.4.2 Execute Directly
bash /rockchip-test/ddr/memtester_test.sh

4.2.5 Test Details

4.2.5.1 DDR Testing

DDR stress testing supports the following five test scenarios:

"memtester:                                      1"
"stressapptest:                                  2"
"stressapptest + memtester:                      3"
"DDR auto scaling:                               4"
"stressapptest + memtester + DDR auto scaling:   5"

If the product does not support frequency scaling, you can choose option 3, which is to use the stressapptest + memtester scaling for testing. If the product supports frequency scaling, you can choose option 5, which is to use the stressapptest + memtester + DDR automatic frequency variation scenario for testing. CPU stress testing consists of the entry script ddr_test.sh and the following three scripts:

/rockchip-test/ddr/ddr_freq_scaling.sh
/rockchip-test/ddr/memtester_test.sh
/rockchip-test/ddr/stressapptest_test.sh
4.2.5.1.1 DDR Frequency Scaling

Without arguments, the DDR frequency-scaling script automatically changes frequency.

bash /rockchip-test/ddr/ddr_freq_scaling.sh
cnt: 0, ddr freq: success change to 528000000 Hz
..
cnt:100, ddr freq: success change to 324000000 Hz

When the script is executed with a frequency argument that is within the supported frequencies, it will scale to the corresponding frequency.

bash /rockchip-test/ddr/ddr_freq_scaling.sh 528000000
ddr freq: success change to 528000000 Hz

If the script is executed with a frequency argument that is not within the supported frequencies, it will print the available frequencies and the current frequency.

bash /rockchip-test/ddr/ddr_freq_scaling.sh 1
ddr freq: 1 is not in available frequencies: 324000000 528000000
ddr freq: now 528000000 Hz

Stop the test

killall bash
4.2.5.1.2 stressapptest_test

By default, stressapptest uses half the available memory and stops after 24 hours. Stop the test:

killall stressapptest
4.2.5.1.3 memtester_test

By default, memtester uses half the available memory. Stop the test:

killall memtester

Note: Memtester will not automatically stop the test if an error occurs; it is necessary to monitor the log of the program’s running process.

4.2.5.2 CPU Testing

CPU stress testing supports the following three test scenarios:

"stressapptest test:                               1"
"cpu auto scaling:                                 2"
"stressapptest + cpu auto scaling:                 3"

If the product does not support frequency variation, you can choose option 2, which is to use the stressapptest scenario for testing. If the product supports frequency variation, you can choose option 3, which is to use the stressapptest combined with CPU automatic frequency scaling for testing. The CPU stress test consists of the entry scripts cpu_test.sh and cpu_freq_scaling.sh .

4.2.5.2.1 CPU Frequency Scaling

Without arguments, the script automatically changes frequency.

bash /rockchip-test/cpu/cpu_freq_scaling.sh
cnt: 0, cpu freq policy:0 success change to 816000 KHz
...
cnt: 100, cpu freq policy:0 success change to 1104000 KHz

If the script is executed with a frequency argument that is within the supported frequencies, it will scale to the corresponding frequency.

bash /rockchip-test/cpu/cpu_freq_scaling.sh 1104000
cpu freq policy:0 success change to 1104000 KHz

If the script is executed with a frequency argument that is not within the supported frequencies, it will print the supported frequency points as well as the current frequency.

bash /rockchip-test/cpu/cpu_freq_scaling.sh 1
cpu freq: 1 is not in available frequencies: 600000 816000 1008000 1104000 1416000
cpu freq: now 1104000 Hz

Stop the test:

killall bash
4.2.5.3 Flash Testing

Generate 7 random source data files within 5MB in $test_dir/src_test_data , copy them into the five subdirectories of $test_dir/des_test_data , and compare the md5 values, looping for 200 times.

4.2.5.4 Standby&Wake-up Test

Enabling automatic standby&wake-up requires the presence of an RTC (Real-Time Clock) in the system, which must be functioning properly. By default, the system will execute the standby&wake-up process 10,000 times before exiting, with each wake-up period being a random number between 3 and 6 seconds.

4.2.5.5 Reboot Testing

Default behavior is to stop testing after 10,000 reboots, with the system automatically shutting down 8 seconds after each startup. Stop of testing in advance

echo off > /userdata/rockchip_test/reboot_cnt

If the system has CONFIG_PSTORE_RAM enabled, the script will check for logs of crashes or other abnormalities during the shutdown process after each booting, and will automatically stop the test if any are found.

4.2.5.6 GPU Testing

The GPU stress test is based on glmark-es2, utilizing the test_stress_glmark2.sh script, which primarily executes glmark- es2 with the run-forever parameter. glmark-es2 is a benchmark for OpenGL ES 2.0. It only employs the subset of the OpenGL 2.0 API that is compatible with OpenGL ES 2.0.

4.2.5.7 Camera Testing

Camera stress testing can be performed using either of the following two methods:

  1. camera_stresstest_rkisp_demo.sh Ensure that the buildroot has the following configuration enabled:
BR2_PACKAGE_CAMERA_ENGINE_RKAIQ_RKISP_DEMO=y

Using rkisp_demo does not require configuring the ISP pipeline through media-ctl . This method does not perform stress testing on the USB camera. The testing process involves a loop that captures camera data from the ISP CIF interface for 100 frames each, but does not verify the file size.

  1. camera_stresstest_v4l2.sh Ensure that the buildroot has the following configuration enabled:
BR2_PACKAGE_LIBV4L_UTILS=y

Using v4l2-ctl may require configuring the ISP pipeline through media-ctl . This method performs stress testing on the USB camera. The testing process captures camera data from the USB ISP CIF interface in a loop at a resolution of 640x480 for 5 frames each and verifies the file size. Choose either of the above methods based on the actual application scenario.

4.2.5.8 Video Testing

Video stress testing involves continuously playing video files located in either the /mnt/udisk/videos or /userdata/videos directory. Before testing, place the video file to be tested in either of the directories mentioned above. The /userdata/videos directory is checked first. If neither of the two directories exists, the test will prompt a message and exit.

4.2.5.9 Wi-Fi BT Testing

Wi-Fi BT testing involves automatic on and off testing.

4.3 User Scenario Testing

In addition to the aforementioned unit tests for system functionality, we can also simulate realistic scenarios to perform stress tests, serving as a supplement to system stability testing. For example, for the product form of a dictionary pen, a typical user scenario might be:

Power on → scan and recognize → play the translation → leave idle until second-level standby → wake and use again, with random Wi-Fi/BT toggles.

We can use the commands from the basic script mentioned above to construct this realistic scenario:

Power on → loop (v4l2 capture → aplay playback → pm-suspend → RTC wake), with random Wi-Fi/BT toggles while awake.

5. TO DO

5.1 Adding Common Problem Analysis Methods

5.2 Adding NPU, Recovery, Audio, Browser, Power-off Test Instructions

Source differences, source defects and execution limits

  • Both sources are V2.0.2: Chinese 20 pages, English 14. English uniquely adds file search in 1.1.9, shifting the memory/disk subsections by one. Its df -h heading incorrectly says memory usage; Chinese correctly says disk space.
  • The two scenario sequences on English page 14 overflow the layout and are absent from extracted text. They are restored from Chinese page 20 and treated as prose, not code. Chapter 5 is a source TODO, not completed instructions for NPU, recovery, audio, browser or power-loss testing.
  • Recording writes /tmp/isp.yuv but playback pulls /tmp/cif.yuv: reconcile filenames before use. The printed –d in arecord and –h in free require ASCII -d and -h; “or” is not a shell operator. The wmv/mp3 container list and aplay musicdemo.wmv are source examples, not guarantees of format support.
  • Chinese text and the actual xrandr output identify HDMI-1 and DSI-1; English prose incorrectly says DP-1. English xrandr and aplay-Dplughw examples omit spaces. Chinese provides su linaro -c “DISPLAY=:0 xrandr –output HDMI-1 –above DSI-1” and aplay -Dplughw:0,0 /dev/urandom (use card 1 or 2 as applicable). –preferred/–off are not position options and cannot be substituted mechanically.
  • The DDR paragraph incorrectly says CPU stress. The CPU menu maps 1=stressapptest, 2=cpu auto scaling, 3=combined, but both prose versions recommend 2 without frequency scaling. Check the actual script menu. CPU examples generally use KHz, while the final invalid-frequency output says Hz; DDR uses Hz. Do not conflate units.
  • stressapptest -W and -F default to false; Chinese mistranslates false as “wrong.” The parameter table clarifies the disabled default. /userdata/rockchip-test logs and /userdata/rockchip_test/reboot_cnt use different separators: check the actual scripts. Original code comments, diagnostic output, SSIDs and passwords are source examples only; none were executed or used.

Explore this topic → · Learning paths →