Difference between revisions of "RSB-3810 user guide Android11"
Jems.cheng (talk | contribs) |
Jems.cheng (talk | contribs) (→UIO-4030使用方法(UIO-4030 Testing Method):) |
||
(43 intermediate revisions by the same user not shown) | |||
Line 18: | Line 18: | ||
[https://www.advantech.com/zh-tw/products/5912096e-f242-4b17-993a-1acdcaada6f6/rsb-3810/mod_5e027854-f47d-45e5-bac2-0413929f345d '''RSB-3810'''] | [https://www.advantech.com/zh-tw/products/5912096e-f242-4b17-993a-1acdcaada6f6/rsb-3810/mod_5e027854-f47d-45e5-bac2-0413929f345d '''RSB-3810'''] | ||
− | + | | |
== '''硬件接口說明(Hardware interface introduction)''' == | == '''硬件接口說明(Hardware interface introduction)''' == | ||
=== '''接口布局和尺寸(Layout and Sizes)''' === | === '''接口布局和尺寸(Layout and Sizes)''' === | ||
− | |||
=== '''RSB-3810 接口布局圖 Board Dimension Layout''' === | === '''RSB-3810 接口布局圖 Board Dimension Layout''' === | ||
Line 109: | Line 108: | ||
|} | |} | ||
− | + | | |
=== '''接口引脚定義 (Pin definitions)''' === | === '''接口引脚定義 (Pin definitions)''' === | ||
Line 136: | Line 135: | ||
*[http://ess-wiki.advantech.com.tw/view/File:RSB-3810-USB1.png USB 1 (USB 3.2 Gen 1 on TOP + USB 2.0 on BOT)] | *[http://ess-wiki.advantech.com.tw/view/File:RSB-3810-USB1.png USB 1 (USB 3.2 Gen 1 on TOP + USB 2.0 on BOT)] | ||
*[http://ess-wiki.advantech.com.tw/view/File:RSB-3810-DL_KEY.png DL_KEY(Download Key)] | *[http://ess-wiki.advantech.com.tw/view/File:RSB-3810-DL_KEY.png DL_KEY(Download Key)] | ||
− | *[http://ess-wiki.advantech.com.tw/view/File:RSB-3810-LED.png LED] | + | *[http://ess-wiki.advantech.com.tw/view/File:RSB-3810-LED.png LED] |
=== '''机械尺寸 ('''Mechanical Characteristics) === | === '''机械尺寸 ('''Mechanical Characteristics) === | ||
Line 149: | Line 148: | ||
== '''快速入门 (Quick Start)''' == | == '''快速入门 (Quick Start)''' == | ||
− | |||
− | |||
=== '''系统下载 (OS Download)''' === | === '''系统下载 (OS Download)''' === | ||
Line 156: | Line 153: | ||
[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Android/MT8395_OS_Support_List_for_android11 Android 11 OS download] | [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Android/MT8395_OS_Support_List_for_android11 Android 11 OS download] | ||
+ | | ||
=== '''Debug port 連接與設定(Debug Port Connection and Setting)''' === | === '''Debug port 連接與設定(Debug Port Connection and Setting)''' === | ||
Line 165: | Line 163: | ||
2. RSB-3810 can communicate with a host server using serial cables. Common serial communication programs such as HyperTerminal, Tera Term or PuTTY can be used in such applications. The example demonstrated below describes the serial terminal setup using Tera Term on a Windows host: Open Tera Term on your Windows PC, set the Baud rate to 921600. | 2. RSB-3810 can communicate with a host server using serial cables. Common serial communication programs such as HyperTerminal, Tera Term or PuTTY can be used in such applications. The example demonstrated below describes the serial terminal setup using Tera Term on a Windows host: Open Tera Term on your Windows PC, set the Baud rate to 921600. | ||
− | + | | |
=== '''燒錄方法 (Flash eMMC Method)''' === | === '''燒錄方法 (Flash eMMC Method)''' === | ||
Line 225: | Line 223: | ||
Step 6. 重新上電開機 (Turn on the power, then check the Debug message) | Step 6. 重新上電開機 (Turn on the power, then check the Debug message) | ||
− | + | | |
− | |||
− | |||
− | |||
− | |||
+ | == '''Android系统的基本使用(Android System Basic Operating Method)''' == | ||
=== '''Display Setting (RSB-3810)''' === | === '''Display Setting (RSB-3810)''' === | ||
Line 279: | Line 274: | ||
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># tinymix -D 1 'O176 I000 Switch' 1<br/> # tinymix -D 1 'O177 I001 Switch' 1<br/> # tinymix -D 1 'DAC In Mux' 'Normal Path'<br/> # tinymix -D 1 'HP Mux' 'Audio Playback'<br/> # tinyplay /storage/self/primary/LRMonoPhase4.wav -D 1 -d 2 -p 1024 -n 2</div> | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># tinymix -D 1 'O176 I000 Switch' 1<br/> # tinymix -D 1 'O177 I001 Switch' 1<br/> # tinymix -D 1 'DAC In Mux' 'Normal Path'<br/> # tinymix -D 1 'HP Mux' 'Audio Playback'<br/> # tinyplay /storage/self/primary/LRMonoPhase4.wav -D 1 -d 2 -p 1024 -n 2</div> | ||
Connect Audio output from phone to RSB-3810 MIC. Record audio from phone and play the recorded file to check the sound.<br/> stop audioserver | Connect Audio output from phone to RSB-3810 MIC. Record audio from phone and play the recorded file to check the sound.<br/> stop audioserver | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># tinymix -D 1 'O040 I168 Switch' 1<br/> # tinymix -D 1 'O041 I169 Switch' 1<br/> # tinymix -D 1 'MISO0_MUX' UL1_CH1<br/> # tinymix -D 1 'MISO1_MUX' UL1_CH1<br/> # tinymix -D 1 'ADC_L_Mux' 'Left Preamplifier'<br/> # tinymix -D 1 'PGA_L_Mux' 'AIN1'<br/> # tinycap /data/rec.wav -D 1 -d 8 -r 48000 -c 2 -b 32 -T 10<br/> # tinyplay /data/rec.wav -D 1 -d 2 -p 1024 -n 2</div> | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># tinymix -D 1 'O040 I168 Switch' 1<br/> # tinymix -D 1 'O041 I169 Switch' 1<br/> # tinymix -D 1 'MISO0_MUX' UL1_CH1<br/> # tinymix -D 1 'MISO1_MUX' UL1_CH1<br/> # tinymix -D 1 'ADC_L_Mux' 'Left Preamplifier'<br/> # tinymix -D 1 'PGA_L_Mux' 'AIN1'<br/> # tinycap /data/rec.wav -D 1 -d 8 -r 48000 -c 2 -b 32 -T 10<br/> # tinyplay /data/rec.wav -D 1 -d 2 -p 1024 -n 2</div> |
− | + | | |
=== '''M.2使用方法EWM-W174(M.2 Testing Method with EWM-W174): ''' === | === '''M.2使用方法EWM-W174(M.2 Testing Method with EWM-W174): ''' === | ||
Line 293: | Line 288: | ||
Step 1: Open Android Setting.<br/> Step 2: Click Connected devices.<br/> Step 3: Click Connection preferences.<br/> Step 4: Click Bluetooth.<br/> Step 5: On and Pair new device<br/> Step 6: Available devices | Step 1: Open Android Setting.<br/> Step 2: Click Connected devices.<br/> Step 3: Click Connection preferences.<br/> Step 4: Click Bluetooth.<br/> Step 5: On and Pair new device<br/> Step 6: Available devices | ||
− | |||
=== '''Serial port使用方法(Serial port Testing Method):''' === | === '''Serial port使用方法(Serial port Testing Method):''' === | ||
Line 314: | Line 308: | ||
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># echo 328 > /sys/class/gpio/export<br/> # echo 327 > /sys/class/gpio/export# echo out<br/> # out > /sys/class/ gpio/gpio328/direction<br/> # echo out > /sys/class/gpio/gpio327/direction<br/> # echo 0 > /sys/class/gpio/gpio328/value<br/> # echo 1 > /sys/class/gpio/gpio327/value</div> | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># echo 328 > /sys/class/gpio/export<br/> # echo 327 > /sys/class/gpio/export# echo out<br/> # out > /sys/class/ gpio/gpio328/direction<br/> # echo out > /sys/class/gpio/gpio327/direction<br/> # echo 0 > /sys/class/gpio/gpio328/value<br/> # echo 1 > /sys/class/gpio/gpio327/value</div> | ||
Step 3: Test RS-422 with Adam-4520. Connect Adam-4520 with COM1 with 1700100250 DB9 as the following command: | Step 3: Test RS-422 with Adam-4520. Connect Adam-4520 with COM1 with 1700100250 DB9 as the following command: | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">$ stty -F /dev/ttyS2 -echo -onlcr 921600 raw<br/> $ cat /dev/ttyS2 &<br/> $ echo "Serial Port Test" > /dev/ttyS2<br/> or<br/> $ microcom -s 921600 -X /dev/ttyS2</div> | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">$ stty -F /dev/ttyS2 -echo -onlcr 921600 raw<br/> $ cat /dev/ttyS2 &<br/> $ echo "Serial Port Test" > /dev/ttyS2<br/> or<br/> $ microcom -s 921600 -X /dev/ttyS2</div> |
− | |||
− | |||
=== '''I2C使用方法(I2C Test Method):''' === | === '''I2C使用方法(I2C Test Method):''' === | ||
Line 324: | Line 316: | ||
Step 2: I2c set and get | Step 2: I2c set and get | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">console:/ # i2cdetect -y -a 4</div> | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">console:/ # i2cdetect -y -a 4</div> |
− | + | | |
=== '''USB: USB disk test (USB 2.0/ USB 3.2 Gen 1 By 1 port)''' === | === '''USB: USB disk test (USB 2.0/ USB 3.2 Gen 1 By 1 port)''' === | ||
Step 1: Issue the following command (lsusb -t) after inserting a USB disk into the USB 2.0 port or USB 3.2 Gen 1 port to check if the USB device is listed. | Step 1: Issue the following command (lsusb -t) after inserting a USB disk into the USB 2.0 port or USB 3.2 Gen 1 port to check if the USB device is listed. | ||
− | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># lsusb -t</div> | |
− | |||
− | |||
Step 2: Test (eg. if usb disk is /dev/sda) | Step 2: Test (eg. if usb disk is /dev/sda) | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># dd if=/dev/urandom of=data bs=1 count=1024<br/> # dd if=/dev/sda of=backup bs=1 count=1024 skip=4096 # dd if=data of=/dev/sda bs=1 seek=4096<br/> # dd if=/dev/sda of=data1 bs=1 count=1024 skip=4096 # diff data data1<br/> # dd if=backup of=/dev/sda bs=1 seek=4096</div> | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># dd if=/dev/urandom of=data bs=1 count=1024<br/> # dd if=/dev/sda of=backup bs=1 count=1024 skip=4096 # dd if=data of=/dev/sda bs=1 seek=4096<br/> # dd if=/dev/sda of=data1 bs=1 count=1024 skip=4096 # diff data data1<br/> # dd if=backup of=/dev/sda bs=1 seek=4096</div> |
− | + | | |
=== '''RTC使用方法(RTC Test Method):''' === | === '''RTC使用方法(RTC Test Method):''' === | ||
Line 344: | Line 334: | ||
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">console:/ # date 113009362023 && hwclock -r</div> | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">console:/ # date 113009362023 && hwclock -r</div> | ||
Step 3: Restore the RTC time to system time | Step 3: Restore the RTC time to system time | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">console:/ # date 113009362023 && hwclock -r</div> | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">console:/ # date 113009362023 && hwclock -r</div> |
− | + | | |
=== '''eMMC/SD/SPI flash使用方法(eMMC/SD/SPI flash Testing Method):''' === | === '''eMMC/SD/SPI flash使用方法(eMMC/SD/SPI flash Testing Method):''' === | ||
Line 352: | Line 342: | ||
Test (eg. emmc)<br/> Step 1: Open Android Setting.<br/> Step 2: Click Storage | Test (eg. emmc)<br/> Step 1: Open Android Setting.<br/> Step 2: Click Storage | ||
+ | |||
+ | | ||
=== '''Ethernet使用方法(Ethernet Testing Method):''' === | === '''Ethernet使用方法(Ethernet Testing Method):''' === | ||
Step 1: Check the Ethernet device | Step 1: Check the Ethernet device | ||
− | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># ifconfig</div> | |
− | |||
− | |||
Step 2: Connect the cable and ping test (eg. Eth0) | Step 2: Connect the cable and ping test (eg. Eth0) | ||
− | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># ping 8.8.8.8</div> | |
− | [[File: | + | [[File:ROM-3810-LAN0.png|RTENOTITLE]][[File:ROM-3810-LAN1.png|RTENOTITLE]] |
− | |||
=== '''GPIO使用方法(GPIO Testing Method):''' === | === '''GPIO使用方法(GPIO Testing Method):''' === | ||
Line 421: | Line 410: | ||
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># echo out > /sys/class/gpio/gpio1/direction<br/> # echo in > /sys/class/gpio/gpio2/direction</div> | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># echo out > /sys/class/gpio/gpio1/direction<br/> # echo in > /sys/class/gpio/gpio2/direction</div> | ||
Step 4: Read value and set output value than check | Step 4: Read value and set output value than check | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># cat /sys/class/gpio/gpio2/value 0<br/> # echo 1 > /sys/class/gpio/gpio1/value<br/> # cat /sys/class/gpio/gpio2/value<br/> 1</div> | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># cat /sys/class/gpio/gpio2/value 0<br/> # echo 1 > /sys/class/gpio/gpio1/value<br/> # cat /sys/class/gpio/gpio2/value<br/> 1</div> |
− | + | | |
=== '''Watchdog使用方法(Watchdog Testing Method):''' === | === '''Watchdog使用方法(Watchdog Testing Method):''' === | ||
Line 443: | Line 432: | ||
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># ext_wdt_driver_test 10 1 0</div> | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># ext_wdt_driver_test 10 1 0</div> | ||
androidboot.bootreason=usb | androidboot.bootreason=usb | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># ext_wdt_driver_test 10 1 0 && Ctrl + C</div> | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># ext_wdt_driver_test 10 1 0 && Ctrl + C</div> |
− | |||
− | |||
=== '''Camera(Default MIPI-CSI0 and MIPI-CSI1 are for OV5640):''' === | === '''Camera(Default MIPI-CSI0 and MIPI-CSI1 are for OV5640):''' === | ||
Line 460: | Line 447: | ||
Step 1: Remove the CSI-0 and CSI-1 camera first<br/> Step 2: Use Android camera app to test<br/> Step 3: Take pictures<br/> Step 4: Video recording<br/> Step 5: Check photo | Step 1: Remove the CSI-0 and CSI-1 camera first<br/> Step 2: Use Android camera app to test<br/> Step 3: Take pictures<br/> Step 4: Video recording<br/> Step 5: Check photo | ||
− | === TPM測試方法(TPM Testing Method): === | + | |
+ | |||
+ | === '''TPM測試方法(TPM Testing Method):''' === | ||
Please use tpm_test.bin to test. | Please use tpm_test.bin to test. | ||
Line 466: | Line 455: | ||
[[File:RSB-3810-TPM.png|RTENOTITLE]] | [[File:RSB-3810-TPM.png|RTENOTITLE]] | ||
+ | === '''LED ON/OFF 使用方法(LED ONOFF Testing Method):''' === | ||
+ | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">LED Status: Detect gpio signal LED ON: echo 255 ><br/> /sys/class/leds/user/brightness LED OFF: echo 0 ><br/> /sys/class/leds/user/brightness</div> | ||
| | ||
− | + | | |
− | |||
− | |||
+ | | ||
− | === UIO-4030使用方法(UIO-4030 Testing Method): === | + | === '''UIO-4030使用方法(UIO-4030 Testing Method):''' === |
{| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | {| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | ||
|- | |- | ||
| 1 | | 1 | ||
− | | style="width: 75px;" | UART | + | | style="width: 75px;" | UART(COM_3) |
| style="width: 702px;" | # stty -F /dev/ttyS3 -echo -onlcr 921600 raw<br/> # cat /dev/ttyS3 &<br/> # echo "Serial Port Test" > /dev/ttyS3<br/> or<br/> #microcom -s 921600 -X /dev/ttyS3 | | style="width: 702px;" | # stty -F /dev/ttyS3 -echo -onlcr 921600 raw<br/> # cat /dev/ttyS3 &<br/> # echo "Serial Port Test" > /dev/ttyS3<br/> or<br/> #microcom -s 921600 -X /dev/ttyS3 | ||
|- | |- | ||
| 2 | | 2 | ||
| style="width: 75px;" | GPIO | | style="width: 75px;" | GPIO | ||
− | | style="width: 702px;" | 4 DI & 4 DO Pins (UIO Extension_UIO2)<br/> input pin#5: gpio 317 <br/> output pin#6: gpio 318 <br/> input pin#7: gpio 319<br/> output pin#8: | + | | style="width: 702px;" | |
+ | 4 DI & 4 DO Pins (UIO Extension_UIO2)<br/> input pin#5: gpio 317 <br/> output pin#6: gpio 318 <br/> input pin#7: gpio 319<br/> output pin#8: gpio 320<br/> input pin#9: gpio 321<br/> output pin#10: gpio 322<br/> input pin#11: gpio 323<br/> output pin#12: gpio 324 | ||
+ | |||
+ | (Note: gpio 323 & gpio 324 need to set the gpio 345 to high) | ||
+ | |||
|- | |- | ||
| 3 | | 3 | ||
− | | style="width: 75px;" | RS-485 | + | | style="width: 75px;" | RS-485(COM_4) |
| style="width: 702px;" | Test RS-485 with Adam-4520. Adam-4520 Pin Data- and Pin<br/> Data+ connect to UIO-4030 COM_4 Pin 1 and Pin 2.<br/> # stty -F /dev/ttyUSB0 speed 115200 ignbrk -brkint -icrnl - imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke<br/> # cat /dev/ttyUSB0 &<br/> # echo "Serial Test" > /dev/ttyUSB0 | | style="width: 702px;" | Test RS-485 with Adam-4520. Adam-4520 Pin Data- and Pin<br/> Data+ connect to UIO-4030 COM_4 Pin 1 and Pin 2.<br/> # stty -F /dev/ttyUSB0 speed 115200 ignbrk -brkint -icrnl - imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke<br/> # cat /dev/ttyUSB0 &<br/> # echo "Serial Test" > /dev/ttyUSB0 | ||
|- | |- | ||
Line 494: | Line 488: | ||
|} | |} | ||
− | + | === '''UIO-4032使用方法(UIO-4032 Testing Method):''' === | |
− | === UIO-4032使用方法(UIO-4032 Testing Method): === | ||
{| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | {| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | ||
|- | |- | ||
| colspan="1" rowspan="2" | 1 | | colspan="1" rowspan="2" | 1 | ||
− | | colspan="1" rowspan="2" | UART | + | | colspan="1" rowspan="2" | |
+ | UART | ||
+ | |||
+ | COM_3:ttyS3 | ||
+ | |||
+ | COM_4:ttyS1 | ||
+ | |||
| # stty -F /dev/ttyS3 -echo -onlcr 921600 raw<br/> # cat /dev/ttyS3 &<br/> # echo "Serial Port Test" > /dev/ttyS3 or<br/> # microcom -s 921600 -X /dev/ttyS3 # cat /dev/ttyS3 & | | # stty -F /dev/ttyS3 -echo -onlcr 921600 raw<br/> # cat /dev/ttyS3 &<br/> # echo "Serial Port Test" > /dev/ttyS3 or<br/> # microcom -s 921600 -X /dev/ttyS3 # cat /dev/ttyS3 & | ||
|- | |- | ||
Line 517: | Line 516: | ||
| # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1<br/> # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom<br/> # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync | | # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1<br/> # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom<br/> # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync | ||
|} | |} | ||
− | |||
| | ||
− | === UIO-4034使用方法(UIO-4034 Testing Method): === | + | === '''UIO-4034使用方法(UIO-4034 Testing Method):''' === |
{| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | {| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | ||
|- | |- | ||
| colspan="1" rowspan="2" | 1 | | colspan="1" rowspan="2" | 1 | ||
− | | colspan="1" rowspan="2" | UART | + | | colspan="1" rowspan="2" | |
+ | UART | ||
+ | |||
+ | COM_3:ttyS3 | ||
+ | |||
+ | COM_4:ttyS1 | ||
+ | |||
| $ stty -F /dev/ttyS3 -echo -onlcr 921600 raw<br/> $ cat /dev/ttyS3 &<br/> $ echo "Serial Port Test" > /dev/ttyS3<br/> or<br/> $ microcom -s 921600 -X /dev/ttyS3 | | $ stty -F /dev/ttyS3 -echo -onlcr 921600 raw<br/> $ cat /dev/ttyS3 &<br/> $ echo "Serial Port Test" > /dev/ttyS3<br/> or<br/> $ microcom -s 921600 -X /dev/ttyS3 | ||
|- | |- | ||
Line 544: | Line 548: | ||
|} | |} | ||
− | + | === '''UIO-4036使用方法(UIO-4036 Testing Method):''' === | |
− | |||
− | |||
− | === UIO-4036使用方法(UIO-4036 Testing Method): === | ||
{| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | {| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | ||
Line 560: | Line 561: | ||
|} | |} | ||
− | + | === '''UIO-4038使用方法(UIO-4038 Testing Method):''' === | |
− | |||
− | |||
− | === UIO-4038使用方法(UIO-4038 Testing Method): === | ||
{| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | {| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | ||
Line 579: | Line 577: | ||
| # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1<br/> # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom<br/> # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync | | # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1<br/> # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom<br/> # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync | ||
|} | |} | ||
− | |||
| | ||
− | === UIO-4040使用方法(UIO-4040 Testing Method): === | + | === '''UIO-4040使用方法(UIO-4040 Testing Method):''' === |
{| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | {| border="1" cellpadding="1" cellspacing="1" style="width: 800px;" | ||
Line 589: | Line 586: | ||
| 1 | | 1 | ||
| SSD | | SSD | ||
− | | # SSD disk write/read/verify pattern | + | | |
+ | #SSD disk write/read/verify pattern | ||
+ | |||
+ | Disk /dev/sda: 119.24 GiB, 128035676160 bytes, 250069680 sectors<br/> Disk model: UIO-4040<br/> Units: sectors of 1 * 512 = 512 bytes<br/> Sector size (logical/physical): 512 bytes / 512 bytes<br/> I/O size (minimum/optimal): 512 bytes / 512 bytes | ||
+ | |||
|- | |- | ||
| 2 | | 2 | ||
Line 595: | Line 596: | ||
| # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1<br/> # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom<br/> # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync | | # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1<br/> # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom<br/> # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync | ||
|} | |} | ||
− | |||
− | |||
== '''通用方法(General Method)''' == | == '''通用方法(General Method)''' == |
Latest revision as of 11:39, 26 July 2024
Contents
- 1 產品介紹(Product introduction )
- 2 硬件接口說明(Hardware interface introduction)
- 3 快速入门 (Quick Start)
- 4 Android系统的基本使用(Android System Basic Operating Method)
- 4.1 Display Setting (RSB-3810)
- 4.2 Audio使用方法(Audio Testing Method):
- 4.3 M.2使用方法EWM-W174(M.2 Testing Method with EWM-W174):
- 4.4 Serial port使用方法(Serial port Testing Method):
- 4.5 I2C使用方法(I2C Test Method):
- 4.6 USB: USB disk test (USB 2.0/ USB 3.2 Gen 1 By 1 port)
- 4.7 RTC使用方法(RTC Test Method):
- 4.8 eMMC/SD/SPI flash使用方法(eMMC/SD/SPI flash Testing Method):
- 4.9 Ethernet使用方法(Ethernet Testing Method):
- 4.10 GPIO使用方法(GPIO Testing Method):
- 4.11 Watchdog使用方法(Watchdog Testing Method):
- 4.12 Camera(Default MIPI-CSI0 and MIPI-CSI1 are for OV5640):
- 4.13 TPM測試方法(TPM Testing Method):
- 4.14 LED ON/OFF 使用方法(LED ONOFF Testing Method):
- 4.15 UIO-4030使用方法(UIO-4030 Testing Method):
- 4.16 UIO-4032使用方法(UIO-4032 Testing Method):
- 4.17 UIO-4034使用方法(UIO-4034 Testing Method):
- 4.18 UIO-4036使用方法(UIO-4036 Testing Method):
- 4.19 UIO-4038使用方法(UIO-4038 Testing Method):
- 4.20 UIO-4040使用方法(UIO-4040 Testing Method):
- 5 通用方法(General Method)
- 6 Android11 BSP編譯方法(Android11 BSP Compile Method)
產品介紹(Product introduction )
產品特性(Product Features)
- MediaTek Genio 1200 4核心A78和4核心A55
- 內建LPDDR4 8GB,4000MT/s記憶體
- HDMI 4k60fps,1 x 雙通道24位元LVDS
- 1 x 4線RS-232/422/485,2 x USB3.2 Gen1 By 1,2 x USB2.0,1 x Micro SD,1 x Mic. in / Line out
- 1 x M.2 3052 Key B for 5G,1 x M.2 2230 Key E Slot for WiFi/BT
- 支援UIO40-Express I/O板擴充
- 支援Ubuntu、Ycoto Linux和Android
產品官網連結(Product official website link)
硬件接口說明(Hardware interface introduction)
接口布局和尺寸(Layout and Sizes)
RSB-3810 接口布局圖 Board Dimension Layout
Jumper list:
BL0 | Backlight Power Select for LVDS0 (Default 5V) |
VDD0 | LVDS VDD (Default 3.3V) |
Connectot list:
BAT | RTC Battery CONN |
BL0 | LVDS Backlight |
COM1 | Debug Console + RS232/RS485 |
CSI0 | MIPI-CSI Camera Input 0 |
CSI1 | MIPI-CSI Camera Input 1 |
CSI2 | MIPI-CSI Camera Input 2 |
DCIN/DCIN1 | 12V DC Power Input by DC Jack/ by Pin Header |
HDMI | HDMI CONN |
LVDS0 | LVDS Channel 0 CONN |
LVDS1 | LVDS Channel 1 CONN |
M2 | M.2 Key E CONN |
MIC | MIC In Pin Header |
M2B | M.2 Key B CONN |
RST | Reset Button |
SD | SD Slot |
SIM | SIM Slot |
UIO1 | UIO40-Express Pin Header 1 |
UIO2 | UIO40-Express Pin Header 2 |
USB1 | USB CONN. (USB 3.2 Gen 1 on TOP + USB 2.0 on BOT) |
DL_KEY | Download Key |
接口引脚定義 (Pin definitions)
- BAT (RTC Battery CONN.)
- BL1 (LVDS Backlight 1)
- COM1 (Debug Console + RS232/RS485)
- CSI0 (MIPI-CSI Camera Input 0)
- CSI1 (MIPI-CSI Camera Input 1)
- CSI2 (MIPI-CSI Camera Input 2)
- DCIN (12V DC Jack)
- DCIN1 (12V DC-IN Pin Header)
- HDMI (HDMI CONN.)
- LAN (Ethernet eth0+eth1)
- LOUT (Line Out Pin Header)
- LVDS0 (LVDS channel 0)
- LVDS1 (LVDS channel 1)
- M2 (M.2 Key E CONN.)
- MIC (MIC In Pin Header)
- M2B (M.2 keyB CONN.)
- RST (Reset Button)
- SD (SD Slot)
- SIM (SIM Slot)
- UIO1 (UIO40-Express Pin Header 1)
- UIO2 (UIO40-Express Pin Header 2)
- USB 1 (USB 3.2 Gen 1 on TOP + USB 2.0 on BOT)
- DL_KEY(Download Key)
- LED
机械尺寸 (Mechanical Characteristics)
快速入门 (Quick Start)
系统下载 (OS Download)
Debug port 連接與設定(Debug Port Connection and Setting)
1. RSB-3810 debug port is shared with COM1. Please connect the debug console cable 1700034345-01 & 1700019474. Then connect the USB-to-RS232 Cable to your PC terminal. Connect the cable to COM1 pin header to the nearby the HDMI connector.
2. RSB-3810 can communicate with a host server using serial cables. Common serial communication programs such as HyperTerminal, Tera Term or PuTTY can be used in such applications. The example demonstrated below describes the serial terminal setup using Tera Term on a Windows host: Open Tera Term on your Windows PC, set the Baud rate to 921600.
燒錄方法 (Flash eMMC Method)
Step1: 下載MTK燒錄工具SP Flash Tool V5 (Download MTK flash tool "SP Flash Tool V5")
支援作業系統(Support OS):
- Windows 7
- Windows 10
- Ubuntu 16.x
- Ubuntu 18.x
Step2:使用USB Type-A to Type-A線連接電腦處機與裝置的USB Type-A孔位, 如下圖位置(Connect the usb type A to host computer and device type A port)
Step3: 重BSP下載以下image檔案或是解壓縮image檔(You need to download the image files from BSP as below or extract from image file.)
BSP image File path:out/target/product/mt8395_rsb3810a1
MT8195_Android_scatter.txt preloader_mt8395_rsb3810a1.bin vbmeta.img vbmeta_system.img vbmeta_vendor.img spmfw.img pi_img.img dpm.img scp.img sspm.img mcupm.img cam_vpu1.img cam_vpu2.img cam_vpu3.img lk.img boot.img dtbo.img tee.img logo.bin super.img userdata.img
Step 4: 執行SP flash tool V5 燒錄工具(Launch SP flash tool V5)
(1) 選擇MT9195_Android_scatter.txt檔(Select the MT8195_Android_scatter.txt file)
(2)選擇"Format ALL + Download"(Select theFormat All + Download)
(3)點選Download按鈕(Click the Download button)
Step 5 . 重新啟動裝置後系統會自己開始燒錄(Reboot the device and start to burn all image)
Step 6. 重新上電開機 (Turn on the power, then check the Debug message)
Android系统的基本使用(Android System Basic Operating Method)
Display Setting (RSB-3810)
HDMI TX:
Step 1: Setting-->Storage
Step 2: Play a video
CHeck HDMI mode and support resolution:
HDMI RX:
(1) Connect a play video host PC device
(2) connect HDMI from PC to RSB-3810
(3) setenforce 0
(4) open the RxVideo apk
(5) Play a video on host PC
(6) check the video and sound can output to HDMI monitor
LVDS: Dual Channel LVDS Panel: G215HVN0 (VDD: 5V, Backlight Power: 12V)
Step 1: Connect 96LEDK-A215FH30NF2 LVDS panel with the LVDS cable. Connect this to the LVDS. Connect the Backlight cable to BL1.
Step 2: Connect another 12V adapter to the DC-Jack on the backlight cable.
Step 3: Power on RSB-3810 and the extra 12V adapter.
Step 4: Press enter after boot. The system will stop at u-boot as demonstrated below, enter the command in red and press enter
Audio使用方法(Audio Testing Method):
Step 1: Check audio codec
0 [mt63xxaccdet ]: mt63xx-accdet - mt63xx-accdet
mt63xx-accdet
1 [mt8195sound ]: mt8195-sound - mt8195-sound
mt8195-sound
Step 2: Record and playback:
Play audio file and check the sound output from Linu-out. Copy LRMonoPhase4.wav to the system
stop audioserver
# tinymix -D 1 'O177 I001 Switch' 1
# tinymix -D 1 'DAC In Mux' 'Normal Path'
# tinymix -D 1 'HP Mux' 'Audio Playback'
# tinyplay /storage/self/primary/LRMonoPhase4.wav -D 1 -d 2 -p 1024 -n 2
Connect Audio output from phone to RSB-3810 MIC. Record audio from phone and play the recorded file to check the sound.
stop audioserver
# tinymix -D 1 'O041 I169 Switch' 1
# tinymix -D 1 'MISO0_MUX' UL1_CH1
# tinymix -D 1 'MISO1_MUX' UL1_CH1
# tinymix -D 1 'ADC_L_Mux' 'Left Preamplifier'
# tinymix -D 1 'PGA_L_Mux' 'AIN1'
# tinycap /data/rec.wav -D 1 -d 8 -r 48000 -c 2 -b 32 -T 10
# tinyplay /data/rec.wav -D 1 -d 2 -p 1024 -n 2
M.2使用方法EWM-W174(M.2 Testing Method with EWM-W174):
- Test Wi-Fi with EWM-W174M201E Module (PCIe Interface)
Step 1: Open Android Setting.
Step 2: Click Network & internet.
Step 3: Search for WIFI
- Test Bluetooth with EWM-W174M201E Module (USB Interface)
Step 1: Open Android Setting.
Step 2: Click Connected devices.
Step 3: Click Connection preferences.
Step 4: Click Bluetooth.
Step 5: On and Pair new device
Step 6: Available devices
Serial port使用方法(Serial port Testing Method):
- RS-232 Loopback Test (eg. ttyS3):
# cat /dev/ttyS3 &
# echo "Serial Test" > /dev/ttyS3
- RS-422 Test:
Step 1: First change the debug console port to UART2 (UIO-4030COM_3), or use telnet to login to the system console to issue the command for the com port test.
Step 2: Test RS-422 with Adam-4520. Connect Adam-4520 with COM1 with 1700100250 DB9 as the following:
Adam-4520 RX- <--> RSB-3810 COM1 DB9 Pin 1,
Adam-4520 RX+ <--> RSB-3810 COM1 DB9 Pin 2,
Adam-4520 TX- <--> RSB-3810 COM1 DB9 Pin 4,
Adam-4520 TX+ <--> RSB-3810 COM1 DB9 Pin 3,
Step 3: Set GPIO#328, GPIO#327 Set to 1,1
# echo 327 > /sys/class/gpio/export# echo out
# out > /sys/class/ gpio/gpio328/direction
# echo out > /sys/class/gpio/gpio327/direction
# echo 1 > /sys/class/gpio/gpio328/value
# echo 1 > /sys/class/gpio/gpio327/value
Step 4: Test RS-422 with Adam-4520. Connect Adam-4520 with COM1 with 1700100250 DB9 as the following command:
# cat /dev/ttyS2 &
# echo "Serial Test" > /dev/ttyS2
- RS-485 Test:
Step 1: Test RS-485 with Adam-4520. Connect Adam-4520 with COM1 with 1700100250 DB9 as the following:
Adam-4520 Pin 1: Data- connect to DB9 Pin 1: COM_DCD.
Adam-4520 Pin 2: Data+ connect to DB9 Pin 3: COM_RXD.
Step 2: Set GPIO#328, GPIO#327 Set to 0,1
# echo 327 > /sys/class/gpio/export# echo out
# out > /sys/class/ gpio/gpio328/direction
# echo out > /sys/class/gpio/gpio327/direction
# echo 0 > /sys/class/gpio/gpio328/value
# echo 1 > /sys/class/gpio/gpio327/value
Step 3: Test RS-422 with Adam-4520. Connect Adam-4520 with COM1 with 1700100250 DB9 as the following command:
$ cat /dev/ttyS2 &
$ echo "Serial Port Test" > /dev/ttyS2
or
$ microcom -s 921600 -X /dev/ttyS2
I2C使用方法(I2C Test Method):
Step 1: Check i2c device
Step 2: I2c set and get
USB: USB disk test (USB 2.0/ USB 3.2 Gen 1 By 1 port)
Step 1: Issue the following command (lsusb -t) after inserting a USB disk into the USB 2.0 port or USB 3.2 Gen 1 port to check if the USB device is listed.
Step 2: Test (eg. if usb disk is /dev/sda)
# dd if=/dev/sda of=backup bs=1 count=1024 skip=4096 # dd if=data of=/dev/sda bs=1 seek=4096
# dd if=/dev/sda of=data1 bs=1 count=1024 skip=4096 # diff data data1
# dd if=backup of=/dev/sda bs=1 seek=4096
RTC使用方法(RTC Test Method):
Step 1: Set system time to current, then write to RTC
Step 2: Set one incorrect time, then read time from RTC to verify
Step 3: Restore the RTC time to system time
eMMC/SD/SPI flash使用方法(eMMC/SD/SPI flash Testing Method):
eMMC: /dev/mmcblk2
SD: /dev/ mmcblk1p1
Test (eg. emmc)
Step 1: Open Android Setting.
Step 2: Click Storage
Ethernet使用方法(Ethernet Testing Method):
Step 1: Check the Ethernet device
Step 2: Connect the cable and ping test (eg. Eth0)
GPIO使用方法(GPIO Testing Method):
- GPIO Pins:
UIO Extension 1(UIO1):
Pin | Numbers |
GPIO2 | 315 |
GPIO4 | 316 |
UIO Extension2 (UIO2):
Pin | Numbers |
GPIO5 | 317 |
GPIO6 | 318 |
GPIO7 | 319 |
GPIO8 | 320 |
GPIO9 | 321 |
GPIO10 | 322 |
GPIO11 | 323 or 408 |
GPIO12 | 324 or 409 |
- GPIO Loopback Test (Using GPIO2 and GPIO4 as examples):
Step 1: Connect GPIO2 and GPIO4
Step 2: Export GPIO interface
# echo 316 > /sys/class/gpio/export
Step 3: Set GPIO direction
# echo in > /sys/class/gpio/gpio2/direction
Step 4: Read value and set output value than check
# echo 1 > /sys/class/gpio/gpio1/value
# cat /sys/class/gpio/gpio2/value
1
Watchdog使用方法(Watchdog Testing Method):
- Internal Watchdog:
Step 1: System will reboot after 60 sec. androidboot.bootreason=HW_reboot
Step 2: System will reboot after 60 sec. androidboot.bootreason=HW_reboot
Step 3: System will reboot after 3 sec. androidboot.bootreason=reboot
Step 4: System will reboot after 1 sec. androidboot.bootreason=kernel_panic
- External Watchdog:
Step 1: System will reboot after 60 sec. androidboot.bootreason=usb
Step 2: System will not reboot. Watchdog can be refreshed when feed dog before it timeout.
Step 3: System will reboot after 10 sec ==> Watchdog does not refresh after it time- out.
androidboot.bootreason=usb
Camera(Default MIPI-CSI0 and MIPI-CSI1 are for OV5640):
MIPI-CSI0 (Tested with OV5640 + mini-SAS to MIPI-CSI Cable)
Step 1: Use Android camera app to test
Step 2: Take pictures
Step 3: Video recording
Step 4: Check photo
MIPI-CSI1 (Tested with OV5640 + mini-SAS to MIPI-CSI Cable)
Step 1: Use Android camera app to test
Step 2: Take pictures
Step 3: Video recording
Step 4: Check photo
MIPI-CSI2 (Tested with OV5640 + mini-SAS to MIPI-CSI Cable)
Step 1: Remove the CSI-0 and CSI-1 camera first
Step 2: Use Android camera app to test
Step 3: Take pictures
Step 4: Video recording
Step 5: Check photo
TPM測試方法(TPM Testing Method):
Please use tpm_test.bin to test.
LED ON/OFF 使用方法(LED ONOFF Testing Method):
/sys/class/leds/user/brightness LED OFF: echo 0 >
/sys/class/leds/user/brightness
UIO-4030使用方法(UIO-4030 Testing Method):
1 | UART(COM_3) | # stty -F /dev/ttyS3 -echo -onlcr 921600 raw # cat /dev/ttyS3 & # echo "Serial Port Test" > /dev/ttyS3 or #microcom -s 921600 -X /dev/ttyS3 |
2 | GPIO |
4 DI & 4 DO Pins (UIO Extension_UIO2) (Note: gpio 323 & gpio 324 need to set the gpio 345 to high) |
3 | RS-485(COM_4) | Test RS-485 with Adam-4520. Adam-4520 Pin Data- and Pin Data+ connect to UIO-4030 COM_4 Pin 1 and Pin 2. # stty -F /dev/ttyUSB0 speed 115200 ignbrk -brkint -icrnl - imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke # cat /dev/ttyUSB0 & # echo "Serial Test" > /dev/ttyUSB0 |
4 | EEPROM | # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1 # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync |
UIO-4032使用方法(UIO-4032 Testing Method):
1 |
UART COM_3:ttyS3 COM_4:ttyS1 |
# stty -F /dev/ttyS3 -echo -onlcr 921600 raw # cat /dev/ttyS3 & # echo "Serial Port Test" > /dev/ttyS3 or # microcom -s 921600 -X /dev/ttyS3 # cat /dev/ttyS3 & |
# stty -F /dev/ttyS1 -echo -onlcr 921600 raw # cat /dev/ttyS1 & # echo "Serial Port Test" > /dev/ttyS1 or # microcom -s 921600 -X /dev/ttyS1 | ||
2 | USB | USB disk write/read/verify pattern |
3 | Ethernet | # ifconfig # ping 8.8.8.8 |
4 | EEPROM | # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1 # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync |
UIO-4034使用方法(UIO-4034 Testing Method):
1 |
UART COM_3:ttyS3 COM_4:ttyS1 |
$ stty -F /dev/ttyS3 -echo -onlcr 921600 raw $ cat /dev/ttyS3 & $ echo "Serial Port Test" > /dev/ttyS3 or $ microcom -s 921600 -X /dev/ttyS3 |
$ stty -F /dev/ttyS1 -echo -onlcr 921600 raw $ cat /dev/ttyS1 & $ echo "Serial Port Test" > /dev/ttyS1 or $ microcom -s 921600 -X /dev/ttyS1 | ||
2 | CAN Bus |
|
3 | EEPROM | # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1 # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync |
UIO-4036使用方法(UIO-4036 Testing Method):
1 | LAN Switch | # ifconfig # ping 8.8.8.8 |
2 | EEPROM | # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1 # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync |
UIO-4038使用方法(UIO-4038 Testing Method):
1 | LAN0(WAN) | # ifconfig |
2 | LAN | # ping 192.168.100.1 |
3 | EEPROM | # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1 # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync |
UIO-4040使用方法(UIO-4040 Testing Method):
1 | SSD |
Disk /dev/sda: 119.24 GiB, 128035676160 bytes, 250069680 sectors |
2 | EEPROM | # echo -n $'\x06\x05\x04\x03\x02\x01' > /data/test1 # dd if=/data/test1 of=/sys/bus/i2c/devices/3-0050/eeprom # dd if=/sys/bus/i2c/devices/3-0050/eeprom of=/data/test2 conv=fsync |
通用方法(General Method)
ADB debug:
Step1 :RSB-3810 Device setting
console:/ $ su console:/ # setprop service.adb.tcp.port 5555 console:/ # stop adbd console:/ # start adbd console:/ # ifconfig
Step2 : adb platform-tools
D:\platform-tools>ping 172.22.28.102 D:\platform-tools>adb connect 172.22.28.102:5555 D:\platform-tools>adb root D:\platform-tools>adb shell