|
|
| Line 240: |
Line 240: |
| | | | |
| | ''' ''' | | ''' ''' |
| | + | |
| | | | |
| | == '''Linux系统的基本使用(Linux System Basic Operating Method)''' == | | == '''Linux系统的基本使用(Linux System Basic Operating Method)''' == |
| − |
| |
| − | === '''Display Setting (RSB-3720)''' ===
| |
| − |
| |
| − | ''' U-boot Command '''
| |
| − |
| |
| − | *Display
| |
| − | **HDMI (default)
| |
| − | ***imx8mp-rsb3720-a1.dtb
| |
| − | **LVDS
| |
| − | ***g070vw01(LVDS0) + HDMI
| |
| − | ****imx8mp-rsb3720-a1-lvds0-auo.dtb
| |
| − | ***g070vw01(LVDS1) + HDMI
| |
| − | ****imx8mp-rsb3720-a1-lvds1-auo.dtb
| |
| − | ***g215hvn01(DUAL LVDS) + HDMI
| |
| − | ****imx8mp-rsb3720-a1-lvds-dual.dtb
| |
| − | **DSI
| |
| − | ***adv7535(DSI to HDMI) + HDMI
| |
| − | ****imx8mp-rsb3720-a1-adv7535.dtb
| |
| − | ***auog101uan02(DSI) + HDMI
| |
| − | ****imx8mp-rsb3720-a1-auog101uan02.dtb
| |
| − | *Camera
| |
| − | **OV5640 (default)
| |
| − | ***imx8mp-rsb3720-a1.dtb
| |
| − | **Basler camrea
| |
| − | ***imx8mp-rsb3720-a1-basler.dtb
| |
| − |
| |
| − |
| |
| − |
| |
| − | === '''乙太網路使用方法(Ethernent Testing Method)''' ===
| |
| − |
| |
| − | '''Command : ifconfig '''
| |
| − |
| |
| − | [[File:RSB-3720 ifconfig eth0 2021-10-28 142051.jpg|RTENOTITLE]]
| |
| − |
| |
| − | [[File:RSB-3720 ifconfig eth1 2021-10-28 142202.jpg|RTENOTITLE]]
| |
| − |
| |
| − | '''Command: Ping 8.8.8.8 '''
| |
| − |
| |
| − | [[File:RSB-3720 ping 8888 2021-10-28 142402.jpg|RTENOTITLE]]
| |
| − |
| |
| − | Change IP Addr Command:
| |
| − |
| |
| − | Check Active Ethernet interface:
| |
| − |
| |
| − | root@imx8mprsb3720a1:~# connmanctl services<br/> *AR Wired ethernet_74fe485e4fbd_cable
| |
| − |
| |
| − | Set static IP Addr:
| |
| − |
| |
| − | #connmanctl config <service> --ipv4 manual <ip address> <netmask> <gateway><br/> # connmanctl config <service> --nameservers <dns-addr>
| |
| − |
| |
| − | Example:
| |
| − |
| |
| − | root@imx8mprsb3720a1:~# connmanctl config ethernet_74fe485e4fbd_cable --ipv4 manual 192.168.1.100 255.255.255.0 192.168.1.254<br/> root@imx8mprsb3720a1:~# connmanctl config ethernet_74fe485e4fbd_cable --nameservers 8.8.8.8 4.4.4.4
| |
| − |
| |
| − | RJ45 LED Indicator:
| |
| − |
| |
| − | {| border="0" cellpadding="0" cellspacing="0" width="566"
| |
| − | |-
| |
| − | | height="22" width="72" | Speed
| |
| − | | width="72" | Left
| |
| − | | width="72" | Right
| |
| − | | width="350" | Command
| |
| − | |-
| |
| − | | height="22" | 10M
| |
| − | | OFF
| |
| − | | link green
| |
| − | | ethtool -s eth0 autoneg on speed 10 duplex full
| |
| − | |-
| |
| − | | height="22" | 100M
| |
| − | | ON 橙
| |
| − | | link green
| |
| − | | ethtool -s eth0 autoneg on speed 100 duplex full
| |
| − | |-
| |
| − | | height="22" | 1000M
| |
| − | | ON 綠
| |
| − | | link green
| |
| − | | ethtool -s eth0 autoneg on speed 1000 duplex full
| |
| − | |}
| |
| − |
| |
| − | === '''WiFi使用方法(WIFI Testing Method)''' ===
| |
| − | <pre># killall wpa_supplicant
| |
| − | # ifconfig wlan0 up
| |
| − | # wpa_passphrase "SSID" "PASSWORD" > /tmp/wpa.conf
| |
| − | # cat /tmp/wpa.conf
| |
| − | # wpa_supplicant -BDwext -iwlan0 -c/tmp/wpa.conf
| |
| − | # udhcpc -b -i wlan0
| |
| − | # ifconfig
| |
| − | # ping 8.8.8.8
| |
| − | Add DNS to /etc/resolv.conf
| |
| − | # cat /etc/resolv.conf
| |
| − | # Generated by Connection Manager
| |
| − | nameserver 8.8.8.8
| |
| − | nameserver 8.8.4.4
| |
| − | Now can ping google.com
| |
| − | # ping google.com</pre>
| |
| − |
| |
| − |
| |
| − |
| |
| − | === '''4G使用方法(4G Testing Method, Test with EWM-C117)''' ===
| |
| − |
| |
| − | '''Check and change module to pppd mode<br/> # stty -F /dev/ttyUSB3 –echo<br/> # cat /dev/ttyUSB3 &<br/> # echo AT+UUSBCONF? > /dev/ttyUSB3<br/> [[File:RSB-3720 4G pic1.png|RTENOTITLE]]<br/> Change to pppd mode:<br/> # echo AT+UUSBCONF=0 > /dev/ttyUSB3<br/> [[File:RSB-3720 4G pic2.png|RTENOTITLE]]<br/> # echo AT+CFUN=16 > /dev/ttyUSB3<br/> [[File:RSB-3720 4G pic3.png|RTENOTITLE]]<br/> The module will be change to ttyACM0*, check again<br/> # stty -F /dev/ttyACM0 –echo<br/> # cat /dev/ttyACM0 &<br/> # echo AT+UUSBCONF? > /dev/ttyACM0<br/> [[File:RSB-3720 4G pic4.png|RTENOTITLE]]<br/> Set module to con<br/> # stty -F /dev/ttyACM0 -echo<br/> # cat /dev/ttyACM0 &<br/> # echo AT+csq > /dev/ttyACM0<br/> # echo AT+cops? > /dev/ttyACM0<br/> # echo AT+cgdcont? > /dev/ttyACM0<br/> [[File:RSB-3720 4G pic5.png|RTENOTITLE]]<br/> Connect to Internet:<br/> # pppd connect 'chat -v -s -t 10 "" "AT" "" "ATDT*99***4#" "CONNECT" ""' user username password password /dev/ttyACM2 460800 nodetach crtscts debug usepeerdns defaultroute &<br/> # ifconfig<br/> [[File:RSB-3720 4G pic6.png|RTENOTITLE]]<br/> # ping 8.8.8.8'''
| |
| − |
| |
| − | '''[[File:RSB-3720 4G pic7.png|RTENOTITLE]]'''
| |
| − |
| |
| − |
| |
| − |
| |
| − |
| |
| − |
| |
| − | === '''GPIO使用方法(GPIO Operating Method)''' ===
| |
| − |
| |
| − | {| border="1" cellpadding="1" cellspacing="1" style="width: 434px;"
| |
| − | |-
| |
| − | | style="width: 194px;" | RSB-3720 GPIO Pin on UIO1/2
| |
| − | | style="width: 116px;" | Number
| |
| − | | style="width: 106px;" | UIO-4030 GPIO
| |
| − | |-
| |
| − | | style="width: 194px;" | GPIO2
| |
| − | | style="width: 116px;" | 501
| |
| − | | style="width: 106px;" |
| |
| − | |-
| |
| − | | style="width: 194px;" | GPIO4
| |
| − | | style="width: 116px;" | 503
| |
| − | | style="width: 106px;" |
| |
| − | |-
| |
| − | | style="width: 194px;" | GPIO5
| |
| − | | style="width: 116px;" | 504
| |
| − | | style="width: 106px;" | DB9-1 DI1#
| |
| − | |-
| |
| − | | style="width: 194px;" | GPIO6
| |
| − | | style="width: 116px;" | 505
| |
| − | | style="width: 106px;" | DB9-6 DO1#
| |
| − | |-
| |
| − | | style="width: 194px;" | GPIO7
| |
| − | | style="width: 116px;" | 506
| |
| − | | style="width: 106px;" | DB9-2 DI2#
| |
| − | |-
| |
| − | | style="width: 194px;" | GPIO8
| |
| − | | style="width: 116px;" | 507
| |
| − | | style="width: 106px;" | DB9-7 DO2#
| |
| − | |-
| |
| − | | style="width: 194px;" | GPIO9
| |
| − | | style="width: 116px;" | 508
| |
| − | | style="width: 106px;" | DB9-3 DI3#
| |
| − | |-
| |
| − | | style="width: 194px;" | GPIO10
| |
| − | | style="width: 116px;" | 509
| |
| − | | style="width: 106px;" | DB9-8 DO3#
| |
| − | |-
| |
| − | | style="width: 194px;" | GPIO11
| |
| − | | style="width: 116px;" | 139
| |
| − | | style="width: 106px;" | DB9-4 DI4#
| |
| − | |-
| |
| − | | style="width: 194px;" | GPIO12
| |
| − | | style="width: 116px;" | 138
| |
| − | | style="width: 106px;" | DB9-9 DO4#
| |
| − | |}
| |
| − |
| |
| − | Short GPIO pin 2 & pin 4
| |
| − |
| |
| − | [[File:RSB-3720 gpio short24.png|RTENOTITLE]]
| |
| − |
| |
| − | Short GPIO pin 5 & pin 6
| |
| − |
| |
| − | [[File:RSB-3720 gpio short56.png|RTENOTITLE]]
| |
| − |
| |
| − | Short GPIO pin 7 & pin 8
| |
| − |
| |
| − | [[File:RSB-3720 gpio short78.png|RTENOTITLE]]
| |
| − |
| |
| − | Short GPIO pin 9 & pin 10
| |
| − |
| |
| − | [[File:RSB-3720 gpio short910.png|RTENOTITLE]]
| |
| − |
| |
| − | Short GPIO pin 11 & pin 12
| |
| − |
| |
| − | [[File:RSB-3720 gpio short1112.png|RTENOTITLE]]
| |
| − |
| |
| − |
| |
| − |
| |
| − |
| |
| − |
| |
| − | === '''LED_USER使用方法(LED_USER ON/OFF test)''' ===
| |
| − |
| |
| − | ON: echo 255 > /sys/class/leds/user/brightness<br/> OFF: echo 0 > /sys/class/leds/user/brightness
| |
| − |
| |
| − |
| |
| − |
| |
| − | === '''COM1複合使用方法(COM1 complex Port Operating Method)''' ===
| |
| − |
| |
| − | '''Note : please set the rs-485 , rs-422 GPIO setting with ssh console. '''
| |
| − |
| |
| − | [[File:RSB-3720 ifconfig address.png|RTENOTITLE]]
| |
| − |
| |
| − | [[File:RSB-3720 reboot system.png|RTENOTITLE]]
| |
| − |
| |
| − | [[File:RSB-3720 ssh connection.png|RTENOTITLE]]
| |
| − |
| |
| − | [[File:RSB-3720 ssh connection login.png|RTENOTITLE]]
| |
| − |
| |
| − | [[File:RSB-3720 set gpio function mode.png|RTENOTITLE]]
| |
| − |
| |
| − | '''Set GPIO#496, #497 <br/> Set to 0,1 for RS-485<br/> Set to 1,1 for RS-422<br/> Set to 0,0 for loopback<br/> Set to 1,0 for RS-232'''
| |
| − |
| |
| − | RS-232 default as debug console)
| |
| − |
| |
| − | [[File:RSB-3720 COM1 2021-10-21 152125.jpg|RTENOTITLE]]
| |
| − | <pre>RS-485 test
| |
| − | Test RS-485 with Adam-4520. Adam-4520 Pin to RSB-3720 COM1
| |
| − | Data- : Pin 1: COM_DCD
| |
| − | Data+ : Pin 3: COM_RXD
| |
| − |
| |
| − | RS-485 test
| |
| − | # echo 496 > /sys/class/gpio/export
| |
| − | # echo 497 > /sys/class/gpio/export
| |
| − | # echo out > /sys/class/gpio/gpio1/direction
| |
| − | # echo out > /sys/class/gpio/gpio2/direction
| |
| − | # echo 0 > /sys/class/gpio/gpio1/value
| |
| − | # echo 1 > /sys/class/gpio/gpio2/value
| |
| − | # ./enable485 /dev/ttymxc2
| |
| − | # stty -F /dev/ttymxc2 speed 115200 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke
| |
| − | # cat /dev/ttymxc2 &
| |
| − | # echo "Serial Test" > /dev/ttymxc2
| |
| − | Will print “Serial Test” through RS-485</pre>
| |
| − |
| |
| − | '''RS-232 -- Disable console'''
| |
| − |
| |
| − | :Disable debug message output can also improve boot speed
| |
| − |
| |
| − | Disable kernel message
| |
| − | <pre>setenv mmcargs setenv bootargs ${jh_clk} console=${console} modprobe.blacklist=${modprobe.blacklist} root=${mmcroot} video=HDMI-A-1:${videores} '''quiet'''
| |
| − | env save
| |
| − | reset
| |
| − | </pre>
| |
| − |
| |
| − | Or
| |
| − |
| |
| − | Disable debug port
| |
| − |
| |
| − | (1) Yocto machine setting:
| |
| − |
| |
| − | modify /sources/meta-advantech/meta-fsl-imx/conf/machine$/${MC}.conf
| |
| − | <pre>SERIAL_CONSOLES = ";"
| |
| − | </pre>
| |
| − |
| |
| − | (2) Uboot parameter setting:
| |
| − |
| |
| − | *For the imx8mq, imx8mm, imx8mp:
| |
| − | <pre>setenv console disabled
| |
| − | env save
| |
| − | reset
| |
| − | </pre>
| |
| − |
| |
| − | === '''CANBus or CAN-FD'''[[https://ess-wiki.advantech.com.tw/wiki/index.php?title=EPC-R3720_user_guide&action=edit§ion=20 edit]] ===
| |
| − |
| |
| − | (Please note that the CAN function on RSB-3720 COM1 Pin Header is CANBus only with RSB-3720CQ & RSB-3720CD, RSB-3720 COM1 Pin Header is CANB-FD only with RSB-3720WQ & RSB-3720WD) <br/> Step 1: Connect the UIO-4034 A101-2 CANbus port Pin 2 and Pin 7 to RSB-3720 COM1 with 1700100250 cable, pin 9 and Pin 6 of the DB9. <br/> Step 2: Set CAN0 and CAN1 up.
| |
| − | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">root@imx8mprsb3720a1:~# ip link set can0 up type can bitrate 125000 <br/> [ 1362.935162] IPv6: ADDRCONF(NETDEV_CHANGE): can0: link becomes ready <br/> root@imx8mprsb3720a1:~# ifconfig can0 up <br/> root@imx8mprsb3720a1:~# ip link set can1 up type can bitrate 125000 <br/> [ 1381.546624] IPv6: ADDRCONF(NETDEV_CHANGE): can1: link becomes ready <br/> root@imx8mprsb3720a1:~# ifconfig can1 up</div>
| |
| − | Step 3: candump CAN0
| |
| − | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">root@imx8mprsb3720a1:~# candump can0 & <br/> [1] 965</div>
| |
| − | Step 4: candump CAN1
| |
| − | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">root@imx8mprsb3720a1:~# cansend can1 1F334455#1122334455667788 <br/> root@imx8mprsb3720a1:~# can0 1F334455 [8] 11 22 33 44 55 66 77 88</div>
| |
| − | === '''藍牙使用方法(BlueTooth Operating Method)''' ===
| |
| − | <pre># hciattach /dev/ttymxc0 bcm43xx 115200 flow
| |
| − | # hciconfig hci0 up
| |
| − | # hcitool scan# bluetoothctl
| |
| − | # discoverable on
| |
| − | #pairable on
| |
| − | # scan on
| |
| − | # scan off
| |
| − | # pair 84:C5:A6:D3:AF:E4
| |
| − | # connect 84:C5:A6:D3:AF:E4
| |
| − | Check BT connect info
| |
| − | # info 84:C5:A6:D3:AF:E4</pre>
| |
| − |
| |
| − |
| |
| − |
| |
| − | === '''音訊使用方法(BlueTooth Operating Method)''' ===
| |
| − | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Line-in , Line-out, MIC<br/> 1.Line-out<br/> Command : gplay-1.0<br/> 2.MIC<br/> Command : arecord<br/> Check audio codec:</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># cat /proc/asound/cards<br/> 0 [sgtl5000 ]: sgtl5000 - sgtl5000<br/> sgtl5000<br/> 1 [audiohdmi ]: audio-hdmi - audio-hdmi<br/> audio-hdmi<br/> root@imx8mprsb3720a1:~#<br/> Set Mic/audio volume<br/> # amixer set Mic 100%<br/> # amixer set Lineout 100%<br/> # amixer set PCM 100%</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Record and playback<br/> Example command:<br/> # arecord –t wav –c 1 –r 44100 –d 5 /tmp/mic.wav<br/> # aplay /tmp/mic.wav</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Record from MIC:<br/> # arecord -D plughw:0,0 -r 16000 -f S16_LE ./f-16000.wav<br/> Recording WAVE './f-16000.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono<br/> # aplay f-16000.wav<br/> Playing WAVE 'f-16000.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Play wav file from codec:<br/> # aplay -D plughw:0,0 file_example_WAV_10MG.wav<br/> Playing WAVE 'file_example_WAV_10MG.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Play wav file from HDMI:<br/> # aplay -D plughw:1,0 file_example_WAV_10MG.wav<br/> Playing WAVE 'file_example_WAV_10MG.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Play wav file from HDMI with gst-launch:<br/> # gst-launch-1.0 filesrc location=LRMonoPhase4.wav ! wavparse ! audioconvert ! audioresample ! autoaudiosink</div>
| |
| − | === '''I2C 測試( I2C Test method) ''' ===
| |
| − | <pre>Check I2C device (Audio codec: 0-000a)
| |
| − | # i2cdetect -y 0
| |
| − | I2C set and get:
| |
| − | # i2cset -f -y 0 0x0a 0 0xff00 w
| |
| − | # i2cget -f -y 0 0x0a 0 w
| |
| − | 0x11a0
| |
| − | </pre>
| |
| − |
| |
| − | === '''看門狗測試 (Watch Dog Test method) ''' ===
| |
| − | <pre>System will reboot after 1 sec
| |
| − | # /unit_tests/Watchdog/wdt_driver_test.out 1 2 0</pre>
| |
| − |
| |
| − | [[File:RSB-3720 watchdog.png|RTENOTITLE]]
| |
| − |
| |
| − | === '''攝像頭測試(Camera Test method) ''' ===
| |
| − | <pre>Check MIPI CSI camera
| |
| − | MIPI CSI0:
| |
| − | MIPI CSI1:
| |
| − |
| |
| − | MIPI CSI0 - ov5640
| |
| − | Preview:
| |
| − | # gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw,width=640,height=480 ! waylandsink
| |
| − | Capture:
| |
| − | # gst-launch-1.0 v4l2src num-buffers=1 device=/dev/video0 ! video/x-raw,width=640,height=480 ! jpegenc ! filesink location=sample.jpeg
| |
| − | MIPI CSI1 – ov5640
| |
| − | Preview:
| |
| − | # gst-launch-1.0 v4l2src device=/dev/video1 ! video/x-raw,width=640,height=480 ! waylandsink
| |
| − | Capture:
| |
| − | # gst-launch-1.0 v4l2src num-buffers=1 device=/dev/video1 ! video/x-raw,width=640,height=480 ! jpegenc ! filesink location=sample.jpeg</pre>
| |
| − |
| |
| − | === '''遠程訪問及文件傳輸(Remote Access and File Transimmion)''' ===
| |
| − |
| |
| − | ''' 查看主板IP位址 ( check IP Address ):'''
| |
| − | <pre> Command : ifconfig</pre>
| |
| − |
| |
| − | [[File:RSB-3720 ifconfig 2022-01-03 153950.jpg|RTENOTITLE]]
| |
| − |
| |
| − |
| |
| − |
| |
| − | ==== Windows下SSH訪問及文件傳輸 ====
| |
| − |
| |
| − | SSH Remote Log into Device
| |
| − |
| |
| − | *SSH遠程登陸,以putty選擇putty.exe(或者使用Xshell、SecureCRT等類似軟件)
| |
| − | *需要設置遠程設備的IP、通訊端口(默認22)、通訊方式錄后驗證用户名密碼
| |
| − |
| |
| − |
| |
| − |
| |
| − | [[File:SSHsettingdetail.png|RTENOTITLE]]
| |
| − |
| |
| − | [[File:SSHSetting2021-09-10 143631.jpg|RTENOTITLE]]
| |
| − |
| |
| − |
| |
| − |
| |
| − | [[File:Sshsetting12021-09-10 143743n.jpg|RTENOTITLE]]
| |
| − |
| |
| − | [[File:RSB-3720 ssh console.png|RTENOTITLE]]
| |
| − |
| |
| | | | |
| | == '''通用方法(General Method)''' == | | == '''通用方法(General Method)''' == |
以 Tera Term 為例介绍如何使用串口調試功能 ( Tera Term is kind of terminal tool , we need to set the parameter (Baud Rate , Data, Parity, Stop, Flow Control ) into "Tera Term terminal tool " )