content - voipac...2. test description the goal of this test was to check radiated and conducted...

16
iMX6 Rex EMC testing (including the script examples) Here you can find the setup, scripts and results of iMX6 Rex EMC testing. Content 1. Hardware configuration 2. Test description 3. Test results – Radiated emission 4. Test results – Conducted emission APPENDIX 5. How to prepare the test outline 6. Standard test 7. Heavy test 1. Hardware configuration

Upload: others

Post on 01-Mar-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

iMX6 Rex EMC testing (including the script examples)

Here you can find the setup, scripts and results of iMX6 Rex EMC testing.

Content

• 1. Hardware configuration• 2. Test description • 3. Test results – Radiated emission • 4. Test results – Conducted emission

APPENDIX• 5. How to prepare the test outline• 6. Standard test • 7. Heavy test

1. Hardware configuration

Page 2: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

Connected cables/devices

• Power jack: +12V from an isolated source • SD card 1 (the one on the PCB edge): preloaded with Filesystem and used for booting • SD card 2 (the one under heatsink): used for read/write testing • RTC Battery: inserted in the holder • Ethernet: Ethernet loopback cable connected. Forced to 100Mb and used for ping test. • HDMI monitor: during the test, the monitor is connected but turned off. • 2x USB memory stick: each connected through an extension cable. Both used during

read/write test. • RS232: a null modem cable connected. During the test, the cable was terminated with an

RS232 to USB converter. • SATA CFAST card (without the metal card holder): used for read/write testing • Headphones & Microphone: standard headphones connected to the headphones and

microphone jack • Audio loopback: a cable connected between Line in and Line out • Wifi PCIE mini card: inserted, but not actively used. No antennas connected. • Modem: inserted, but not actively used. No antennas connected, no SIM card inserted.

back to top

Page 3: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

2. Test description

The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running:

• CPU stress test • Memory stress test • GPU stress test (running a Full HD graphics test at rate 150 frames per second) • Linux GUI • Playing a video file • Playing an audio file • SD card test (SD card read & write stress test) • 2x USB test (USB memory stick read & write stress test) • SATA test (CFAST SSD card read & write stress test) • Ethernet ping

back to top

3. Test Results - Radiated emission*Note: Tested for EN55022B

Vertical polarization – Running Linux Only

Page 4: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

Vertical polarization – Heavy Testing

Page 5: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

Horizontal polarization – Running Linux Only

Page 6: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

Horizontal polarization – Heavy Testing

back to top

Page 7: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

4. Test Results - Conducted emission*Note: tested with VEP36US12 AC Adaptor

Power cable L1 – Heavy Testing (page 1)

Page 8: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

Power cable L1 – Heavy Testing (page 2)

Page 9: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

Power cable N – Heavy Testing (page 1)

Page 10: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

Power cable N – Heavy Testing (page 2)

back to top

Page 11: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

Appendix

5. How to prepare the test

1. Download this file system (created based on Jasbirs blog), download this kernel and follow these steps to prepare SD card.

2. Insert the SD card to the edge SD card slot.

3. Update the u-boot to boot up from SD card and set few other parameters:

> setenv bootargs_mmc 'setenv bootargs ${bootargs} ip=192.168.10.91:::255.255.255.0 root=/dev/mmcblk1p1 rootwait video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB666 vmalloc=400M fbmem=28M fbcon=28M'

> setenv bootcmd_mmc 'run bootargs_mmc ; mmc dev 1; ext2load mmc 1 0x10800000 imx6rex-uImage-gpu-en-audio-fix-03-APR-2014 3915972; bootm 0x10800000'

> saveenv

4. Run test scripts (they are included in the file system, or you can download them here: Download Standard Test or Download Heavy Test). As scriptparameters use the directories where the devices are mapped (without /dev/) “./name-of-the-test.sh SATA_DIR USB0_DIR USB1_DIR MMC0_DIR”

Here are examples how to run the scripts (in this example /dev/mmcblk1p1 is a filesystem device):

# ./emc-test1.sh sda1 sdb1 sdc1 mmcblk0p1

and the heavy test

# ./emc-test-all.sh sda1 sdb1 sdc1 mmcblk0p1

Page 12: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

*Note: you may need to check where your devices are mounted. Use “fdisk -l”. Here is an example:

# fdisk -l Disk /dev/sda: 7998 MB, 7998455808 bytes108 heads, 63 sectors/track, 2296 cylinders, total 15621984 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x001c2022 Device Boot Start End Blocks Id System/dev/sda1 2048 15621983 7809968 83 Linux

Disk /dev/mmcblk0: 3904 MB, 3904897024 bytes4 heads, 16 sectors/track, 119168 cylinders, total 7626752 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0xc44e7f69 Device Boot Start End Blocks Id System/dev/mmcblk0p1 2048 7626751 3812352 83 Linux Disk /dev/mmcblk1: 1977 MB, 1977614336 bytes61 heads, 62 sectors/track, 1021 cylinders, total 3862528 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x00000000 Device Boot Start End Blocks Id System/dev/mmcblk1p1 62 3861421 1930680 83 Linux Disk /dev/sdb: 16.2 GB, 16219373568 bytes256 heads, 48 sectors/track, 2578 cylinders, total 31678464 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0xc3072e18 Device Boot Start End Blocks Id System/dev/sdb1 48 7372799 3686376 6 FAT16

Page 13: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

Disk /dev/sdc: 16.0 GB, 16008609792 bytes255 heads, 63 sectors/track, 1946 cylinders, total 31266816 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x00000000 Device Boot Start End Blocks Id System/dev/sdc1 32 31266815 15633392 c W95 FAT32 (LBA)

back to top

6. The Standard test script

#!/bin/sh mountDevice() { mount /dev/$1 /media/$2 cat /etc/mtab | grep -F "/dev/$1 /media/$2" if [ "$?" -eq "0" ]; then echo "$2 mounted" else echo "$2 not mounted"; exit 2 fi} # mount devices a test a statusmountDevice $1 satamountDevice $2 usb0mountDevice $3 usb1mountDevice $4 mmc0 # tell the X applications where they should runexport DISPLAY=:0 # run X window - wait for the proccesservice lightdm start # connect ethernet loopback and force the ethernet to 100Mbitmii-tool -F 100baseTx-HD # play a video file in an infinite loop

Page 14: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

echo 0 > /sys/class/graphics/fb2/blank

sudo -u "ubuntu" xfce4-terminal --geometry=70x20+100+10 -x mplayer -vo fbdev2:/dev/fb2 -vf scale -zoom -loop 0 -xy 1024 /home/ubuntu/Clou$ # pingsudo -u "ubuntu" xfce4-terminal --geometry=70x25+100+600 -x ping 192.168.10.1 & # topsudo -u "ubuntu" xfce4-terminal --geometry=90x50+900+10 -x top & proceed=1file1="blackbird.wav" while [ $proceed -eq 1 ]do cp1_done=`ps cax | grep $cp1_pid | grep cp` if [ -z "$cp1_done" ]; then # run cp only if previous cp is done cp /media/usb0/$file1 /media/sata & cp1_pid=$! echo "started cp from usb0 to sata" fi cp2_done=`ps cax | grep $cp2_pid | grep cp` if [ -z "$cp2_done" ]; then # run cp only if previous cp is done cp /media/usb1/$file1 /media/mmc0 & cp2_pid=$! echo "started cp from usb1 to mmc0" fi aud_done=`ps cax | grep $aud_pid | grep aplay` if [ -z "$aud_done" ]; then aplay -D hw:0,0 /home/ubuntu/blackbird.wav & aud_pid=$! echo "started play audio" fi done # kill all procceses if Ctrl+C detectedtrap '$precced=0; kill $cp1_pid $cp2_pid &aud_pid;' 2sleep 10000

back to top

Page 15: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

7. The Heavy test script

#!/bin/sh mountDevice() { mount /dev/$1 /media/$2 cat /etc/mtab | grep -F "/dev/$1 /media/$2" if [ "$?" -eq "0" ]; then echo "$2 mounted" else echo "$2 not mounted"; exit 2 fi} # mount devices a test a statusmountDevice $1 satamountDevice $2 usb0mountDevice $3 usb1mountDevice $4 mmc0 # tell the X applications where they should runexport DISPLAY=:0 # run X windows - wait for the proccesservice lightdm start # connect Ethernet loopback and force the ethernet to 100Mbitmii-tool -F 100baseTx-HD # gpu testcd /root/gpu-viv-bin-mx6q-3.10.9-1.0.0-hfp/opt/viv_samples/vdk./tutorial7 &gpu_pid=$!cd # play a video file on the lvds displayecho 0 > /sys/class/graphics/fb2/blankmplayer -vo fbdev2:/dev/fb2 -vf scale -zoom -loop 0 -xy 1024 -really-quiet /home/ubuntu/Clouds.avi &vid_pid=$! # stressapptest - testing sata, 2x usb, sd card, 1 thread CPU, 1 thread memory

stressapptest -f /media/sata/tmp-file1 -f /media/usb0/tmp-file1 -f /media/usb1/tmp-file1 -f /media/mmc0/tmp-file1 -s 600000 -M 50

Page 16: Content - VOIPAC...2. Test description The goal of this test was to check Radiated and Conducted emission of iMX6 Rex board while running at very high load. What was running: • CPU

-m 1 $str_pid=$!

echo "Stressapptest: " $str_pid # play a audio filemplayer -loop 0 -really-quiet /home/ubuntu/blackbird.wav &aud_pid=$! # pingping 192.168.10.1 &ping_pid=$! # toptoptop_pid=$! # kill all procceses if Ctrl+C detectedtrap '$procced=0; kill $gpu_pid $vid_pid $aud_pid $str_pid $ping_pid;' 2sleep 10000

Note: If the LVDS monitor is not included in the setup comment out these lines:

#echo 0 > /sys/class/graphics/fb2/blank#mplayer -vo fbdev2:/dev/fb2 -vf scale -zoom -loop 0 -xy 1024 -really-quiet /home/ubuntu/Clouds.avi &

Add this line (to disable LVDS):

# echo 1 > /sys/class/graphics/fb2/blank

back to top