Difference between revisions of "RSB-3720 user guide"

From ESS-WIKI
Jump to: navigation, search
(設置固定IP與DNS(Set static IP address and DNS))
 
(101 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== '''資源特性(Features)''' ==
 
  
*NXP Arm® Cortex®-A53 i.MX8M Plus Quad/Dual up to 1.8 GHz
+
== '''產品介紹(Product introduction )''' ==
*Onboard LPDDR4 4 GB / 6 GB, 4000MT/s memory
 
*HDMI 1920x1080 at 60Hz, 1 Single or 1 Dual Channel 24 bit LVDS (or 1 4-Lane MIPI-DSI by BOM Option)
 
*1 4-wire RS-232/422/485, 1 USB3.2 Gen1 By 1, 1 USB2.0, 1 Micro SD, 1 Mic. in / Line out
 
*1 mini-PCIe for 3G/4G, 1 M.2 2230 Key E Slot
 
*Supports Yocto Linux and Android
 
*Support I/O Expansions boards by UIO40-Express
 
  
== '''訂購資訊(Ordering Information)''' ==
+
=== '''產品特性(Product Features)''' ===
  
[[File:RSB-3720 ordinfo 2021-10-21 143630.jpg|RTENOTITLE]]
+
*NXP Arm® Cortex®-A53 i.MX8M Plus Quad/Dual up to 1.8 GHz
 +
*Onboard LPDDR4 4 GB / 6 GB, 4000MT/s memory
 +
*HDMI 1920x1080 at 60Hz, 1 Single or 1 Dual Channel 24 bit LVDS (or 1 4-Lane MIPI-DSI by BOM Option)
 +
*1 4-wire RS-232/422/485, 1 USB3.2 Gen1 By 1, 1 USB2.0, 1 Micro SD, 1 Mic. in / Line out
 +
*1 mini-PCIe for 3G/4G, 1 M.2 2230 Key E Slot
 +
*Supports Yocto Linux and Android
 +
*Support I/O Expansions boards by UIO40-Express
  
== '''规格(Specifications)''' ==
+
=== '''產品官網連結(Product official website link) ''' ===
  
== '''接口布局和尺寸(Layout and Sizes)''' ==
+
[https://www.advantech.com/en/search/?q=RSB-3720&st=support&from=support '''RSB-3720''']
  
=== '''接口布局圖 Board Dimension Layout ''' ===
+
== '''硬件接口說明(Hardware interface introduction)''' ==
 +
 
 +
=== '''接口布局和尺寸(Layout and Sizes)''' ===
 +
 
 +
=== '''RSB-3720 接口布局圖(Board Dimension Layout) ''' ===
 +
 
 +
 
  
 
[[File:RSB-3720 board review2021-10-21 144120.jpg|RTENOTITLE]]
 
[[File:RSB-3720 board review2021-10-21 144120.jpg|RTENOTITLE]]
Line 23: Line 28:
 
[[File:RSB-3720 connector location 2021-10-21 143853.jpg|RTENOTITLE]]
 
[[File:RSB-3720 connector location 2021-10-21 143853.jpg|RTENOTITLE]]
  
 
+
 
  
 
[[File:RSB-3720 connector location back 2021-10-21 144716.jpg|RTENOTITLE]]
 
[[File:RSB-3720 connector location back 2021-10-21 144716.jpg|RTENOTITLE]]
  
 +
 
  
 
+
{| border="1" cellpadding="1" cellspacing="1"
== ''' ''''''Connector List''' ==
 
 
 
{| border="1" cellspacing="1" cellpadding="1"
 
 
|-
 
|-
 
| BAT
 
| BAT
Line 91: Line 94:
 
|-
 
|-
 
| USB1
 
| USB1
| USB CONN. (USB 3.2 Gen 1 on TOP + USB 2.0 on BOT)<br/>
+
| USB CONN. (USB 3.2 Gen 1 on TOP + USB 2.0 on BOT)
 
|}
 
|}
 +
 +
&nbsp;
  
 
=== '''接口引脚定義 (Pin definitions)''' ===
 
=== '''接口引脚定義 (Pin definitions)''' ===
  
*[[BLP1|BLP1&nbsp;]]
+
*[[BLP1|BLP1&nbsp;]]  
*[[BLP2|BLP2]]
+
*[[BLP2|BLP2]]  
*[[VDD1|VDD1]]
+
*[http://ess-wiki.advantech.com.tw/wiki/index.php?title=VDD1&oldid=21592 VDD1]  
*[[SW1|SW1]]
+
*[http://ess-wiki.advantech.com.tw/wiki/index.php?title=SW1&oldid=21594 SW1]  
*[[BAT_(RTC_Battery_CONN.)|BAT (RTC Battery CONN.)]]
+
*[[BAT_(RTC_Battery_CONN.)|BAT (RTC Battery CONN.)]]  
*[[BL1_(LVDS_Backlight_1)|BL1 (LVDS Backlight 1)]]
+
*[[BL1_(LVDS_Backlight_1)|BL1 (LVDS Backlight 1)]]  
*[[BL2_(LVDS_Backlight_2)|BL2 (LVDS Backlight 2)]]
+
*[[BL2_(LVDS_Backlight_2)|BL2 (LVDS Backlight 2)]]  
*[[COM1_(COM_+_CAN_Pin_Header):_(default_as_debug_console)|COM1 (COM + CAN Pin Header): (default as debug console)]]
+
*[[COM1_(COM_+_CAN_Pin_Header):_(default_as_debug_console)|COM1 (COM + CAN Pin Header): (default as debug console)]]  
*[[CSI1_(MIPI-CSI_Camera_Input_1)|CSI1 (MIPI-CSI Camera Input 1)]]
+
*[[CSI1_(MIPI-CSI_Camera_Input_1)|CSI1 (MIPI-CSI Camera Input 1)]]  
*[[CSI2_(MIPI-CSI_Camera_Input_2)|CSI2 (MIPI-CSI Camera Input 2)]]
+
*[[CSI2_(MIPI-CSI_Camera_Input_2)|CSI2 (MIPI-CSI Camera Input 2)]]  
*[[DCIN/_DCIN1_(12V_DC_Power_Input_by_DC_Jack/_by_Pin_Header)|DCIN/ DCIN1 (12V DC Power Input by DC Jack/ by Pin Header)]]
+
*[[DCIN/_DCIN1_(12V_DC_Power_Input_by_DC_Jack/_by_Pin_Header)|DCIN/ DCIN1 (12V DC Power Input by DC Jack/ by Pin Header)]]  
*[[HDMI_(HDMI_CONN.)|HDMI (HDMI CONN.)]]
+
*[[HDMI_(HDMI_CONN.)|HDMI (HDMI CONN.)]]  
*[[LAN1_(Ethernet_eth0)|LAN1 (Ethernet eth0)]]
+
*[[LAN1_(Ethernet_eth0)|LAN1 (Ethernet eth0)]]  
*[[LAN2_(Ethernet_eth1)|LAN2 (Ethernet eth1)]]
+
*[[LAN2_(Ethernet_eth1)|LAN2 (Ethernet eth1)]]  
*[[LOUT_(Line_Out_Pin_Header)|LOUT (Line Out Pin Header)]]
+
*[[LOUT_(Line_Out_Pin_Header)|LOUT (Line Out Pin Header)]]  
*[[LVDS_(LVDS_CONN.)|LVDS (LVDS CONN.)]]
+
*[[LVDS_(LVDS_CONN.)|LVDS (LVDS CONN.)]]  
*[[M2_(M.2_Key_E_CONN.)|M2 (M.2 Key E CONN.)]]
+
*[[M2_(M.2_Key_E_CONN.)|M2 (M.2 Key E CONN.)]]  
*[[MIC_(MIC_In_Pin_Header)|MIC (MIC In Pin Header)]]
+
*[[MIC_(MIC_In_Pin_Header)|MIC (MIC In Pin Header)]]  
*[[MPCIE_(Mini-PCIe_CONN.)|MPCIE (Mini-PCIe CONN.)]]
+
*[[MPCIE_(Mini-PCIe_CONN.)|MPCIE (Mini-PCIe CONN.)]]  
*[[RST_(Reset_Button)|RST (Reset Button)]]
+
*[[RST_(Reset_Button)|RST (Reset Button)]]  
*[[SD_(SD_Slot)|SD (SD Slot)]]
+
*[[SD_(SD_Slot)|SD (SD Slot)]]  
*[[SIM_(SIM_Slot)|SIM (SIM Slot)]]
+
*[[SIM_(SIM_Slot)|SIM (SIM Slot)]]  
*[[UIO1_(UIO40-Express_Pin_Header_1)|UIO1 (UIO40-Express Pin Header 1)]]
+
*[[UIO1_(UIO40-Express_Pin_Header_1)|UIO1 (UIO40-Express Pin Header 1)]]  
*[[UIO2_(UIO40-Express_Pin_Header_2)|UIO2 (UIO40-Express Pin Header 2)]]
+
*[[UIO2_(UIO40-Express_Pin_Header_2)|UIO2 (UIO40-Express Pin Header 2)]]  
*[[USB_1_(USB_3.2_Gen_1_on_TOP_+_USB_2.0_on_BOT)|USB 1 (USB 3.2 Gen 1 on TOP + USB 2.0 on BOT)]]
+
*[[USB_1_(USB_3.2_Gen_1_on_TOP_+_USB_2.0_on_BOT)|USB 1 (USB 3.2 Gen 1 on TOP + USB 2.0 on BOT)]]  
*[[LED|LED]]
+
*[[LED|LED]]  
  
=== '''&nbsp;机械尺寸&nbsp; ('''Mechanical Characteristics) ===
+
&nbsp;
 +
 
 +
&nbsp;
 +
 
 +
=== '''機械尺寸('''Mechanical Characteristics) ===
  
 
[[File:RSB-3720 board Dimensions 2021-10-21 145827.jpg|RTENOTITLE]]
 
[[File:RSB-3720 board Dimensions 2021-10-21 145827.jpg|RTENOTITLE]]
  
== '''快速入门 (Quick Start)''' ==
+
== '''快速入門&nbsp;(Quick Start)''' ==
  
 
=== '''系统下载 (OS Download)''' ===
 
=== '''系统下载 (OS Download)''' ===
  
'''Linux系统 (Linux OS)''''''&nbsp; &nbsp;'''
+
*'''Linux系统 (Linux OS)'''  
 
 
{| cellspacing="0" cellpadding="0" border="1"
 
|-
 
|
 
'''Git BSP Tag Version'''
 
 
 
|
 
'''Product'''
 
  
| &nbsp;'''BSP/Image'''
+
'''Yocto 3.0:'''[[IoTGateway/BSP/Linux/iMX8/OS_Support_List_3.0|IoTGateway/BSP/Linux/iMX8/OS Support List 3.0]]
|  
 
'''Date'''
 
  
|
+
'''Yocto 3.3:'''[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX8/OS_Support_List_3.3_RSB-3720 IoTGateway/BSP/Linux/iMX8/OS Support List 3.3 RSB-3720]
'''Alpha Release'''
 
  
|
+
'''Yocto 4.0:&nbsp;'''[http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX8/OS_Support_List_4.0_release_RSB-3720 IoTGateway/BSP/Linux/iMX8/OS Support List 4.0 release RSB-3720]
'''Beta Release'''
 
  
|
+
&nbsp;
'''MP Release'''
 
  
|
+
=== '''&nbsp;Linux&nbsp;燒錄方法 (Linux Flash eMMC Method)&nbsp;''' ===
'''Release Note'''
 
  
|
+
'''&nbsp; &nbsp; 1. 創建一個可以開機的SD Card (Create a bootable SD card )&nbsp;&nbsp;'''
'''Comment'''
 
  
|
+
'''&nbsp; &nbsp; &nbsp;先確認SD卡在Ubuntu 系統(x86) 所認到的SD卡代號 ( Check the SD card symbol in Ubuntu System (x86)'''
'''Release Owner'''
 
 
 
|-
 
| <br/>
 
|
 
|
 
|
 
|
 
|
 
|
 
|
 
|
 
|
 
|}
 
 
 
 
 
 
 
== '''&nbsp;Linux&nbsp;燒錄方法 (Linux Flash eMMC Method)&nbsp;''' ==
 
 
 
'''&nbsp; &nbsp; 1. 創建一個可以開機的SD Card&nbsp;'''
 
 
 
'''&nbsp; &nbsp; &nbsp;先確認SD卡在Ubuntu 系統(x86) 所認到的SD卡代號'''
 
  
 
'''&nbsp; &nbsp; &nbsp; Command: sudo fdisk - l&nbsp;'''
 
'''&nbsp; &nbsp; &nbsp; Command: sudo fdisk - l&nbsp;'''
Line 188: Line 160:
 
'''&nbsp; &nbsp; &nbsp;&nbsp;[[File:RSB-3720 SD fdisk info 2021-10-28 113030.jpg|RTENOTITLE]]'''
 
'''&nbsp; &nbsp; &nbsp;&nbsp;[[File:RSB-3720 SD fdisk info 2021-10-28 113030.jpg|RTENOTITLE]]'''
  
'''&nbsp; &nbsp;2. 燒錄鏡像到SD 卡中.&nbsp;'''
+
'''&nbsp; &nbsp;2. 燒錄鏡像到SD 卡中. (Flash Image into SD card)&nbsp;'''
  
 
&nbsp; &nbsp; &nbsp; &nbsp; '''Command&nbsp;: sudo dd if=3720A1AIM30LIVA0333_iMX8MP_6G_2021-10-05.img of=/dev/sdf bs=1M conv=fsync&nbsp;'''
 
&nbsp; &nbsp; &nbsp; &nbsp; '''Command&nbsp;: sudo dd if=3720A1AIM30LIVA0333_iMX8MP_6G_2021-10-05.img of=/dev/sdf bs=1M conv=fsync&nbsp;'''
Line 194: Line 166:
 
'''&nbsp; &nbsp; &nbsp;[[File:RSB-3720 dd SD info 2021-10-28 113804.jpg|RTENOTITLE]]'''
 
'''&nbsp; &nbsp; &nbsp;[[File:RSB-3720 dd SD info 2021-10-28 113804.jpg|RTENOTITLE]]'''
  
'''&nbsp; &nbsp;3. 將flash tool 拷貝到U盤&nbsp;'''
+
'''&nbsp; &nbsp;3. 將flash tool 拷貝到U盤&nbsp; (Cpye the eMMC flash tool into USB Disk )&nbsp;'''
  
 
'''&nbsp; &nbsp; &nbsp;&nbsp;[[File:RSB-3720 cp file into USB 2021-10-28 115157.jpg|RTENOTITLE]]'''
 
'''&nbsp; &nbsp; &nbsp;&nbsp;[[File:RSB-3720 cp file into USB 2021-10-28 115157.jpg|RTENOTITLE]]'''
  
'''&nbsp; 4.&nbsp;''''''設定終端機(Set Debug Terminal)&nbsp;'''
+
'''4.&nbsp;設定終端機(Set Debug Terminal)&nbsp;'''
  
 
Debug 串口調試 (Debug port Setting)
 
Debug 串口調試 (Debug port Setting)
  
以 Tera Term&nbsp;&nbsp;为例介绍如何使用串口调试功能
+
以 Tera Term&nbsp; 為例介绍如何使用串口調試功能 ( Tera Term is kind of terminal tool , we need to set&nbsp;&nbsp;the parameter (Baud Rate , Data, Parity, Stop, Flow Control )&nbsp;&nbsp;into "Tera Term &nbsp;terminal tool " )&nbsp;&nbsp;
<pre>  Baud Rate波特率:115200
+
<pre>  波特率(Baud Rate):115200
   Data 数据位:8
+
   數據位(Data):8
   Parity 奇偶校验:无
+
   奇偶校驗(Parity):无 (none)
&nbsp;  Stop 停止位:1
+
  停止位(Stop):1
   Flow Control流控:无</pre>
+
   流控(Flow Control):无 (none) </pre>
 
 
:
 
  
 
Tera Term Tool&nbsp;
 
Tera Term Tool&nbsp;
  
 
+
Check the Sriel port in Device Manager (查看PC端的串口號):
 
 
 
 
 
 
Check the Sriel port in Device Manager (查看PC端的串口号):
 
  
 
if you can not identify the Serial device , please check your serial driver.&nbsp;
 
if you can not identify the Serial device , please check your serial driver.&nbsp;
  
 +
&nbsp;
  
 
+
'''5. 將可開機的SD 卡插入 SD 插槽, 並打開電源開機&nbsp;&nbsp;'''&nbsp; &nbsp;(Plug into the SD card into SD Card Slot , then turn on the power)&nbsp;
'''&nbsp; 5. 將可開機的SD 卡插入 SD 插槽, 並打開電源開機&nbsp;'''
 
  
 
&nbsp; &nbsp;[[File:RSB-3720 SD solt 2021-10-28 115806.jpg|RTENOTITLE]]
 
&nbsp; &nbsp;[[File:RSB-3720 SD solt 2021-10-28 115806.jpg|RTENOTITLE]]
  
'''6. 確認撥碼開關 為 SD 卡開機模式&nbsp;&nbsp;'''
+
'''6. 確認撥碼開關 為 SD 卡開機模式&nbsp; '''(Check the Switch)
  
'''SD 卡開機:&nbsp;1, 2 on&nbsp;'''
+
'''SD 卡開機:&nbsp;1, 2 on&nbsp; '''(Set the SD card boot up mode ,&nbsp; 1 on&nbsp; 2 on&nbsp;)&nbsp;
  
 
'''[[File:RSB-3720 SD Card boot up 2021-10-28 132021.jpg|RTENOTITLE]]'''
 
'''[[File:RSB-3720 SD Card boot up 2021-10-28 132021.jpg|RTENOTITLE]]'''
  
'''eMMC 開機:&nbsp;''''''2 on'''
+
'''eMMC 開機:&nbsp;''''''2 on''' ( Set the eMMC boot up mode , 2 on , others off)&nbsp;
  
 
'''[[File:RSB-3720 eMMC boot up 2021-10-28 132058.jpg|RTENOTITLE]]'''
 
'''[[File:RSB-3720 eMMC boot up 2021-10-28 132058.jpg|RTENOTITLE]]'''
  
'''7.打開電源,由終端機可看到開機訊息&nbsp;'''
+
'''7.打開電源,由終端機可看到開機訊息&nbsp; '''(Turn on the power , you will see the debug message from Terminal tool )&nbsp;
  
 
[[File:RSB-3720 debug message 2021-10-28 132358.jpg|RTENOTITLE]]
 
[[File:RSB-3720 debug message 2021-10-28 132358.jpg|RTENOTITLE]]
  
'''8. 開機後 請再重新開機一次,系統將會重新劃分磁區大小.'''
+
'''8. 開機後 請再重新開機一次,系統將會重新劃分磁區大小.''' (If you can not not copy the eMMC flash tool into root file system , please reboot the device , because , the system will the reconfigure the partition )
  
'''9. 燒錄SD卡前, 請將U盤插入USB port&nbsp;&nbsp;'''
+
'''9. 燒錄eMMC前, 請將U盤插入USB port&nbsp; &nbsp;'''(Please pulg the USB Disk into USB port before flash eMMC)
  
'''10. 在系統確認U盤&nbsp;'''
+
'''10. 在系統確認U盤&nbsp;'''(Check the USB disk in the Yocto System (Device side) )&nbsp;
  
 
'''&nbsp; &nbsp; &nbsp;[[File:RSB-3720 check usb in system 2021-10-28 132956.jpg|RTENOTITLE]]'''
 
'''&nbsp; &nbsp; &nbsp;[[File:RSB-3720 check usb in system 2021-10-28 132956.jpg|RTENOTITLE]]'''
  
'''11. 將flash tool 燒錄鏡像,拷貝到根目錄'''
+
'''11. 將flash tool 燒錄鏡像,拷貝到根目錄 '''(Copy the flash tool into root file system)&nbsp;
  
 
&nbsp;[[File:RSB-3720 cp flashtool to root 2021-10-28 133320.jpg|RTENOTITLE]]
 
&nbsp;[[File:RSB-3720 cp flashtool to root 2021-10-28 133320.jpg|RTENOTITLE]]
Line 255: Line 221:
 
[[File:RSB-3720 cp root check 2021-10-28 133504.jpg|RTENOTITLE]]
 
[[File:RSB-3720 cp root check 2021-10-28 133504.jpg|RTENOTITLE]]
  
'''12. 解壓縮 flash tool&nbsp;'''
+
'''12. 解壓縮 flash tool&nbsp;&nbsp;'''(Unzip the flash tool )&nbsp;
  
 
'''[[File:RSB-3720 unzip flash tool 2021-10-28 134631.jpg|RTENOTITLE]]'''
 
'''[[File:RSB-3720 unzip flash tool 2021-10-28 134631.jpg|RTENOTITLE]]'''
  
'''13. 執行燒錄eMMC&nbsp;'''
+
'''13. 執行燒錄eMMC&nbsp; '''(Exeucte the eMMC flash script )
  
 
&nbsp; &nbsp;Note:&nbsp;eMMC&nbsp;: /dev/mmcblk2
 
&nbsp; &nbsp;Note:&nbsp;eMMC&nbsp;: /dev/mmcblk2
Line 265: Line 231:
 
&nbsp;&nbsp;[[File:RSB-3720 flash eMMC done 2021-10-28 141001.jpg|RTENOTITLE]]
 
&nbsp;&nbsp;[[File:RSB-3720 flash eMMC done 2021-10-28 141001.jpg|RTENOTITLE]]
  
'''14. 移除SD卡 ,重新開機,並切換撥碼開關&nbsp;'''
+
'''14. 移除SD卡 ,重新開機,並切換撥碼開關  '''(Remove the SD card , Change the Switch to eMMC mode , then reboot the system)&nbsp;
  
 
'''[[File:RSB-3720 eMMC boot up 2021-10-28 132058.jpg|RTENOTITLE]]'''
 
'''[[File:RSB-3720 eMMC boot up 2021-10-28 132058.jpg|RTENOTITLE]]'''
  
'''15. 從eMMC 開機,debug 訊息&nbsp;'''
+
'''15. 從eMMC 開機,debug 訊息&nbsp;&nbsp;'''(You will see the debug message when you boot up from eMMC flash )&nbsp;
  
 
'''[[File:RSB-3720 bootup from eMMC 2021-10-28 141704.jpg|RTENOTITLE]]'''
 
'''[[File:RSB-3720 bootup from eMMC 2021-10-28 141704.jpg|RTENOTITLE]]'''
Line 277: Line 243:
 
== '''Linux系统的基本使用(Linux&nbsp;System Basic Operating Method)''' ==
 
== '''Linux系统的基本使用(Linux&nbsp;System Basic Operating Method)''' ==
  
=== '''&nbsp; &nbsp; &nbsp; Display Setting (RSB-3720)''' ===
+
=== '''Display Setting (RSB-3720)''' ===
  
 
'''&nbsp; &nbsp; &nbsp; U-boot&nbsp;Command&nbsp;'''&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
 
'''&nbsp; &nbsp; &nbsp; U-boot&nbsp;Command&nbsp;'''&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
  
*Display
+
*Display  
**HDMI (default)
+
**HDMI (default)  
***imx8mp-rsb3720-a1.dtb
+
***imx8mp-rsb3720-a1.dtb  
**LVDS
+
**LVDS  
***g070vw01(LVDS0) + HDMI
+
***g070vw01(LVDS0) + HDMI  
****imx8mp-rsb3720-a1-lvds0-auo.dtb
+
****imx8mp-rsb3720-a1-lvds0-auo.dtb  
***g070vw01(LVDS1) + HDMI
+
***g070vw01(LVDS1) + HDMI  
****imx8mp-rsb3720-a1-lvds1-auo.dtb
+
****imx8mp-rsb3720-a1-lvds1-auo.dtb  
***g215hvn01(DUAL LVDS) + HDMI
+
***g215hvn01(DUAL LVDS) + HDMI  
****imx8mp-rsb3720-a1-lvds-dual.dtb
+
****imx8mp-rsb3720-a1-lvds-dual.dtb    
**DSI
+
**DSI  
***adv7535(DSI to HDMI)&nbsp;+ HDMI
+
***adv7535(DSI to HDMI)&nbsp;+ HDMI  
****imx8mp-rsb3720-a1-adv7535.dtb
+
****imx8mp-rsb3720-a1-adv7535.dtb  
***auog101uan02(DSI) +&nbsp;HDMI
+
***auog101uan02(DSI) +&nbsp;HDMI  
****imx8mp-rsb3720-a1-auog101uan02.dtb
+
****imx8mp-rsb3720-a1-auog101uan02.dtb      
*Camera
+
*Camera  
**OV5640 (default)
+
**OV5640 (default)  
***imx8mp-rsb3720-a1.dtb
+
***imx8mp-rsb3720-a1.dtb  
**Basler camrea
+
**Basler camrea  
***imx8mp-rsb3720-a1-basler.dtb
+
***imx8mp-rsb3720-a1-basler.dtb    
  
 
=== '''乙太網路使用方法(Ethernent Testing Method)''' ===
 
=== '''乙太網路使用方法(Ethernent Testing Method)''' ===
Line 313: Line 279:
  
 
[[File:RSB-3720 ping 8888 2021-10-28 142402.jpg|RTENOTITLE]]
 
[[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 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;ethernet_74fe485e4fbd_cable
 +
 +
Set static IP Addr:&nbsp;
 +
 +
#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
  
 
=== '''WiFi使用方法(WIFI Testing Method)''' ===
 
=== '''WiFi使用方法(WIFI Testing Method)''' ===
Line 333: Line 313:
 
=== '''4G使用方法(4G Testing Method)''' ===
 
=== '''4G使用方法(4G Testing Method)''' ===
  
'''Check and change module to pppd mode<br/># stty -F /dev/ttyUSB3 –echo<br/># cat /dev/ttyUSB3 &<br/># echo AT+UUSBCONF? > /dev/ttyUSB3<br/>&nbsp;[[File:RSB-3720 4G pic1.png|RTENOTITLE]]<br/>Change to pppd mode:<br/># echo AT+UUSBCONF=0 > /dev/ttyUSB3<br/>&nbsp;[[File:RSB-3720 4G pic2.png|RTENOTITLE]]<br/># echo AT+CFUN=16 > /dev/ttyUSB3<br/>&nbsp;[[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/>&nbsp;[[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/>&nbsp;[[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/>&nbsp;[[File:RSB-3720 4G pic6.png|RTENOTITLE]]<br/># ping 8.8.8.8'''
+
'''Check and change module to pppd mode<br/> # stty -F /dev/ttyUSB3 –echo<br/> # cat /dev/ttyUSB3 &<br/> # echo AT+UUSBCONF? > /dev/ttyUSB3<br/> &nbsp;[[File:RSB-3720 4G pic1.png|RTENOTITLE]]<br/> Change to pppd mode:<br/> # echo AT+UUSBCONF=0 > /dev/ttyUSB3<br/> &nbsp;[[File:RSB-3720 4G pic2.png|RTENOTITLE]]<br/> # echo AT+CFUN=16 > /dev/ttyUSB3<br/> &nbsp;[[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/> &nbsp;[[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/> &nbsp;[[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/> &nbsp;[[File:RSB-3720 4G pic6.png|RTENOTITLE]]<br/> # ping 8.8.8.8'''
  
 
'''[[File:RSB-3720 4G pic7.png|RTENOTITLE]]'''
 
'''[[File:RSB-3720 4G pic7.png|RTENOTITLE]]'''
Line 339: Line 319:
 
=== '''GPIO使用方法(GPIO Operating Method)''' ===
 
=== '''GPIO使用方法(GPIO Operating Method)''' ===
  
{| border="1" cellspacing="1" cellpadding="1" style="width: 325px;"
+
{| border="1" cellpadding="1" cellspacing="1" style="width: 325px;"
 
|-
 
|-
 
| style="width: 137px;" | GPIO Pin
 
| style="width: 137px;" | GPIO Pin
Line 350: Line 330:
 
| style="width: 173px;" | 503
 
| style="width: 173px;" | 503
 
|-
 
|-
| style="width: 137px;" | GPIO5<br/>
+
| style="width: 137px;" | GPIO5
 
| style="width: 173px;" | 504
 
| style="width: 173px;" | 504
 
|-
 
|-
| style="width: 137px;" | GPIO6<br/>
+
| style="width: 137px;" | GPIO6
 
| style="width: 173px;" | 505
 
| style="width: 173px;" | 505
 
|-
 
|-
| style="width: 137px;" | GPIO7<br/>
+
| style="width: 137px;" | GPIO7
 
| style="width: 173px;" | 506
 
| style="width: 173px;" | 506
 
|-
 
|-
| style="width: 137px;" | GPIO8<br/>
+
| style="width: 137px;" | GPIO8
 
| style="width: 173px;" | 507
 
| style="width: 173px;" | 507
 
|-
 
|-
| style="width: 137px;" | GPIO9<br/>
+
| style="width: 137px;" | GPIO9
 
| style="width: 173px;" | 508
 
| style="width: 173px;" | 508
 
|-
 
|-
| style="width: 137px;" | GPIO10<br/>
+
| style="width: 137px;" | GPIO10
 
| style="width: 173px;" | 509
 
| style="width: 173px;" | 509
 
|-
 
|-
| style="width: 137px;" | GPIO11<br/>
+
| style="width: 137px;" | GPIO11
 
| style="width: 173px;" | 139
 
| style="width: 173px;" | 139
 
|-
 
|-
| style="width: 137px;" | GPIO12<br/>
+
| style="width: 137px;" | GPIO12
 
| style="width: 173px;" | 138
 
| style="width: 173px;" | 138
 
|}
 
|}
Line 394: Line 374:
  
 
[[File:RSB-3720 gpio short1112.png|RTENOTITLE]]
 
[[File:RSB-3720 gpio short1112.png|RTENOTITLE]]
 +
 +
&nbsp;
 +
 +
&nbsp;
 +
 +
=== '''LED_USER使用方法(LED_USER ON/OFF&nbsp;test)''' ===
 +
 +
ON: echo 255 > /sys/class/leds/user/brightness<br/> OFF: echo 0 > /sys/class/leds/user/brightness
 +
  
 
=== '''COM1複合使用方法(COM1 complex&nbsp;Port Operating&nbsp;Method)'''&nbsp; ===
 
=== '''COM1複合使用方法(COM1 complex&nbsp;Port Operating&nbsp;Method)'''&nbsp; ===
  
'''Set GPIO#496, #497&nbsp;<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'''
+
'''Note&nbsp;: please set&nbsp;the rs-485 , rs-422 GPIO setting&nbsp;with ssh console.&nbsp;'''
 +
 
 +
[[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&nbsp;<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)
 
RS-232 default as debug console)
Line 422: Line 423:
 
'''RS-232&nbsp; --&nbsp; Disable console'''
 
'''RS-232&nbsp; --&nbsp; Disable console'''
  
:Disable debug message output can also improve boot speed
+
:Disable debug message output can also improve boot speed  
  
 
Disable kernel message
 
Disable kernel message
Line 442: Line 443:
 
(2) Uboot parameter&nbsp;setting:
 
(2) Uboot parameter&nbsp;setting:
  
*For the imx8mq, imx8mm,&nbsp;imx8mp:
+
*For the imx8mq, imx8mm,&nbsp;imx8mp:  
 
<pre>setenv console disabled
 
<pre>setenv console disabled
 
env save
 
env save
Line 448: Line 449:
 
</pre>
 
</pre>
  
=== '''蓝牙使用方法(BlueTooth Operating&nbsp;Method)''' ===
+
=== '''CANBus or CAN-FD'''[[https://ess-wiki.advantech.com.tw/wiki/index.php?title=EPC-R3720_user_guide&action=edit&section=20 edit]] ===
 +
 
 +
(Please note that the CAN function on RSB-3720 COM1 Pin Header is CANBus only&nbsp;with RSB-3720CQ & RSB-3720CD, RSB-3720 COM1 Pin Header is CANB-FD only&nbsp;with RSB-3720WQ & RSB-3720WD)&nbsp;<br/> Step 1: Connect the UIO-4034 A101-2 CANbus port Pin 2 and Pin 7 to RSB-3720&nbsp;COM1 with 1700100250 cable, pin 9 and Pin 6 of the DB9.&nbsp;<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&nbsp;<br/> [ 1362.935162] IPv6: ADDRCONF(NETDEV_CHANGE): can0: link becomes ready&nbsp;<br/> root@imx8mprsb3720a1:~# ifconfig can0 up&nbsp;<br/> root@imx8mprsb3720a1:~# ip link set can1 up type can bitrate 125000&nbsp;<br/> [ 1381.546624] IPv6: ADDRCONF(NETDEV_CHANGE): can1: link becomes ready&nbsp;<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 &&nbsp;<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&nbsp;<br/> root@imx8mprsb3720a1:~# can0 1F334455 [8] 11 22 33 44 55 66 77 88</div>
 +
 
 +
=== '''藍牙使用方法(BlueTooth Operating&nbsp;Method)''' ===
 
<pre># hciattach /dev/ttymxc0 bcm43xx 115200 flow
 
<pre># hciattach /dev/ttymxc0 bcm43xx 115200 flow
 
# hciconfig hci0 up
 
# hciconfig hci0 up
Line 460: Line 470:
 
Check BT connect info
 
Check BT connect info
 
# info 84:C5:A6:D3:AF:E4</pre>
 
# info 84:C5:A6:D3:AF:E4</pre>
 +
  
 
=== '''音訊使用方法(BlueTooth Operating&nbsp;Method)''' ===
 
=== '''音訊使用方法(BlueTooth Operating&nbsp;Method)''' ===
<pre>Line-in , Line-out, MIC
+
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Line-in , Line-out, MIC<br/> 1.Line-out<br/> Command&nbsp;: gplay-1.0<br/> 2.MIC<br/> Command&nbsp;: arecord<br/> Check audio codec:</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># cat /proc/asound/cards<br/> 0 [sgtl5000&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ]: sgtl5000 - sgtl5000<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sgtl5000<br/> 1 [audiohdmi&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ]: audio-hdmi - audio-hdmi<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; audio-hdmi<br/> root@imx8mprsb3720a1:~#<br/> &nbsp;&nbsp; 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'&nbsp;: Signed 16 bit Little Endian, Rate 16000 Hz, Mono<br/> # aplay f-16000.wav<br/> Playing WAVE 'f-16000.wav'&nbsp;: 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'&nbsp;: 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'&nbsp;: 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>
1.Line-out
 
Command&nbsp;: gplay-1.0
 
2.MIC
 
Command&nbsp;: arecord
 
Check audio codec:
 
 
 
# cat /proc/asound/cards
 
0 [sgtl5000       ]: sgtl5000 - sgtl5000
 
                      sgtl5000
 
1 [audiohdmi     ]: audio-hdmi - audio-hdmi
 
                      audio-hdmi
 
root@imx8mprsb3720a1:~#
 
  Set Mic/audio volume
 
# amixer set Mic 100%
 
# amixer set Lineout 100%
 
# amixer set PCM 100%
 
 
 
Record and playback
 
Example command:
 
# arecord –t wav –c 1 –r 44100 –d 5 /tmp/mic.wav
 
# aplay /tmp/mic.wav
 
 
 
Record from MIC:
 
# arecord -D plughw:0,0 -r 16000 -f S16_LE ./f-16000.wav
 
Recording WAVE './f-16000.wav'&nbsp;: Signed 16 bit Little Endian, Rate 16000 Hz, Mono
 
# aplay f-16000.wav
 
Playing WAVE 'f-16000.wav'&nbsp;: Signed 16 bit Little Endian, Rate 16000 Hz, Mono
 
 
 
Play wav file from codec:
 
# aplay -D plughw:0,0 file_example_WAV_10MG.wav
 
Playing WAVE 'file_example_WAV_10MG.wav'&nbsp;: Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
 
 
 
Play wav file from HDMI:
 
# aplay -D plughw:1,0 file_exam
 
ple_WAV_10MG.wav
 
Playing WAVE 'file_example_WAV_10MG.wav'&nbsp;: Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
 
</pre>
 
  
 
=== '''I2C 測試( I2C Test method)&nbsp;''' ===
 
=== '''I2C 測試( I2C Test method)&nbsp;''' ===
Line 514: Line 488:
 
# /unit_tests/Watchdog/wdt_driver_test.out 1 2 0</pre>
 
# /unit_tests/Watchdog/wdt_driver_test.out 1 2 0</pre>
  
=== [[File:RSB-3720 watchdog.png|RTENOTITLE]] ===
+
[[File:RSB-3720 watchdog.png|RTENOTITLE]]
  
=== ===
+
=== '''攝像頭測試(Camera Test method)&nbsp;''' ===
 +
<pre>Check MIPI CSI camera
 +
MIPI CSI0:
 +
MIPI CSI1:
 +
 
 +
MIPI CSI0 - ov5640
 +
Preview:
 +
# gst-launch-1.0 v4l2src device=/dev/video0&nbsp;! video/x-raw,width=640,height=480&nbsp;! waylandsink
 +
Capture:
 +
# gst-launch-1.0 v4l2src num-buffers=1 device=/dev/video0&nbsp;! video/x-raw,width=640,height=480&nbsp;! jpegenc&nbsp;! filesink location=sample.jpeg
 +
MIPI CSI1 – ov5640
 +
Preview:
 +
# gst-launch-1.0 v4l2src device=/dev/video1&nbsp;! video/x-raw,width=640,height=480&nbsp;! waylandsink
 +
Capture:
 +
# gst-launch-1.0 v4l2src num-buffers=1 device=/dev/video1&nbsp;! video/x-raw,width=640,height=480&nbsp;! jpegenc&nbsp;! filesink location=sample.jpeg</pre>
  
 
=== '''遠程訪問及文件傳輸(Remote Access and File Transimmion)''' ===
 
=== '''遠程訪問及文件傳輸(Remote Access and File Transimmion)''' ===
  
'''&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 查看主板IP位址&nbsp;(&nbsp;Chech IP Address ):'''​
+
'''&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 查看主板IP位址&nbsp;( check&nbsp;IP Address ):'''​
 
<pre>        Command&nbsp;: ifconfig</pre>
 
<pre>        Command&nbsp;: ifconfig</pre>
  
[[File:Eth0ssh 2021-09-10 143210.jpg|RTENOTITLE]]
+
[[File:RSB-3720 ifconfig 2022-01-03 153950.jpg|RTENOTITLE]]
  
==== Windows下SSH访问及文件传输 ====
+
&nbsp;
 +
 
 +
==== Windows下SSH訪問及文件傳輸 ====
  
 
SSH Remote Log into Device&nbsp;
 
SSH Remote Log into Device&nbsp;
  
*SSH远程登录,以putty选择putty.exe(或者使用Xshell、SecureCRT等类似软件)
+
*SSH遠程登陸,以putty選擇putty.exe(或者使用Xshell、SecureCRT等類似軟件)  
*需要设置远程设备的IP、通讯端口(默认22)、通讯方式,登录后验证用户名密码
+
*需要設置遠程設備的IP、通訊端口(默認22)、通訊方式錄后驗證用户名密碼
 
 
  
 +
&nbsp;
  
 
[[File:SSHsettingdetail.png|RTENOTITLE]]
 
[[File:SSHsettingdetail.png|RTENOTITLE]]
Line 538: Line 528:
 
[[File:SSHSetting2021-09-10 143631.jpg|RTENOTITLE]]
 
[[File:SSHSetting2021-09-10 143631.jpg|RTENOTITLE]]
  
 
+
&nbsp;
  
 
[[File:Sshsetting12021-09-10 143743n.jpg|RTENOTITLE]]
 
[[File:Sshsetting12021-09-10 143743n.jpg|RTENOTITLE]]
Line 546: Line 536:
 
== '''通用方法(General Method)''' ==
 
== '''通用方法(General Method)''' ==
  
=== &nbsp; '''&nbsp; &nbsp; 查看CPU温度(Check CPU Temperature)''' ===
+
=== '''查看CPU温度(Check CPU Temperature)''' ===
 
<pre>    root@imx8mprsb3720a1:/# cat /sys/devices/virtual/thermal/thermal_zone0/temp  40000
 
<pre>    root@imx8mprsb3720a1:/# cat /sys/devices/virtual/thermal/thermal_zone0/temp  40000
  
 
     # 或者直接以度爲單位顯示 echo $[$(cat /sys/class/thermal/thermal_zone0/temp)/1000]° >>> 40°</pre>
 
     # 或者直接以度爲單位顯示 echo $[$(cat /sys/class/thermal/thermal_zone0/temp)/1000]° >>> 40°</pre>
  
=== '''&nbsp; &nbsp; &nbsp;&nbsp;查看CPU频率(Check CPU Frequency)''' ===
+
=== '''查看CPU频率(Check CPU Frequency)''' ===
 
<pre>          cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq  
 
<pre>          cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq  
 
           >> 1200000
 
           >> 1200000
Line 557: Line 547:
 
           >> 1800000</pre>
 
           >> 1800000</pre>
  
=== '''&nbsp; &nbsp; &nbsp;&nbsp;查看内存容量(Check Memory&nbsp;Capacity)''' ===
+
=== '''查看内存容量(Check Memory&nbsp;Capacity)''' ===
 
<pre>root@imx8mprsb3720a1:/# busybox free -m
 
<pre>root@imx8mprsb3720a1:/# busybox free -m
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; total &nbsp; &nbsp; &nbsp; &nbsp;used &nbsp; &nbsp; &nbsp; &nbsp;free &nbsp; &nbsp; &nbsp;shared &nbsp;buff/cache &nbsp; available
 
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; total &nbsp; &nbsp; &nbsp; &nbsp;used &nbsp; &nbsp; &nbsp; &nbsp;free &nbsp; &nbsp; &nbsp;shared &nbsp;buff/cache &nbsp; available
Line 564: Line 554:
 
</pre>
 
</pre>
  
=== '''&nbsp; &nbsp; &nbsp;&nbsp;查看存储容量(Check Storage Capacity)''' ===
+
&nbsp;
 +
 
 +
=== '''查看存储容量(Check Storage Capacity)''' ===
 
<pre>root@imx8qxprom5620a1:/# busybox df -h
 
<pre>root@imx8qxprom5620a1:/# busybox df -h
 
Filesystem                Size      Used Available Use% Mounted on
 
Filesystem                Size      Used Available Use% Mounted on
Line 580: Line 572:
 
root@imx8qxprom5620a1:/#</pre>
 
root@imx8qxprom5620a1:/#</pre>
  
=== '''&nbsp;網路Ping測試(Ping Network Testing)''' ===
+
&nbsp;
 +
 
 +
 
 +
=== '''網路Ping測試(Ping Network Testing)''' ===
 
<pre>    ping 8.8.8.8
 
<pre>    ping 8.8.8.8
 
     PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
 
     PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
 
     64 bytes from 8.8.8.8: icmp_seq=1 ttl=54 time=2.10 ms
 
     64 bytes from 8.8.8.8: icmp_seq=1 ttl=54 time=2.10 ms
 
     64 bytes from 8.8.8.8: icmp_seq=2 ttl=54 time=2.10 ms</pre>
 
     64 bytes from 8.8.8.8: icmp_seq=2 ttl=54 time=2.10 ms</pre>
 +
 +
&nbsp;
 +
 +
&nbsp;
 +
 +
&nbsp;
 +
 +
 +
 +
 +
 +
 +
=== '''設置固定IP與DNS(Set static IP address and DNS)''' ===
 +
 +
[https://wiki.archlinux.org/title/systemd-networkd use systemd-networkd:]
 +
 +
Check running service:
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">systemctl --type=service</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">systemctl --type=service | grep --ignore-case 'network'</div>
 +
Set DNS:
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># cat /etc/systemd/network/20-wired.network<br/> [Match]<br/> Name=eth0</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">[Network]<br/> DHCP=ipv4<br/> DNS=8.8.8.8</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># cat /etc/systemd/network/21-wired.network<br/> [Match]<br/> Name=eth1</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">[Network]<br/> DHCP=ipv4<br/> DNS=8.8.4.4</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># systemctl restart systemd-networkd<br/> root@imx8mprsb3720a1:~# [ &nbsp;589.202133] imx-dwmac 30bf0000.ethernet eth1: PHY [stmmac-1:00] driver [RTL8211F Gigabit Ethernet]<br/> [ &nbsp;589.227041] imx-dwmac 30bf0000.ethernet eth1: No Safety Features support found<br/> [ &nbsp;589.234333] imx-dwmac 30bf0000.ethernet eth1: IEEE 1588-2008 Advanced Timestamp supported<br/> [ &nbsp;589.243248] imx-dwmac 30bf0000.ethernet eth1: registered PTP clock<br/> [ &nbsp;589.249491] imx-dwmac 30bf0000.ethernet eth1: configuring for phy/rgmii-id link mode<br/> [ &nbsp;589.257687] 8021q: adding VLAN 0 to HW filter on device eth1<br/> [ &nbsp;589.518704] RTL8211F Gigabit Ethernet 30be0000.ethernet-1:00: attached PHY driver [RTL8211F Gigabit Ethernet] (mii_bus:phy_addr=30be0000.ethernet-1:00, irq=175)<br/> [ &nbsp;592.419369] fec 30be0000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx<br/> [ &nbsp;592.427154] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># networkctl status<br/> * &nbsp; State: routable<br/> &nbsp; Address: 172.22.16.82 on eth0<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;fe80::76fe:48ff:fe73:be98 on eth0<br/> &nbsp; Gateway: 172.22.19.254 on eth0<br/> &nbsp; &nbsp; &nbsp; DNS: 8.8.4.4<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;8.8.8.8<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;172.22.2.99<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;172.20.1.99</div>
 +
&nbsp;
 +
 +
use connmanctl:
 +
 +
Check network services:
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># connmanctl services<br/> *AR Wired&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ethernet_74fe4873be98_cable</div>
 +
Check network setting:
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># connmanctl services ethernet_74fe4873be98_cable<br/> /net/connman/service/ethernet_74fe4873be98_cable<br/> &nbsp; Type = ethernet<br/> &nbsp; Security = [ &nbsp;]<br/> &nbsp; State = online<br/> &nbsp; Favorite = True<br/> &nbsp; Immutable = False<br/> &nbsp; AutoConnect = True<br/> &nbsp; Name = Wired<br/> &nbsp; Ethernet = [ Method=auto, Interface=eth0, Address=74:FE:48:73:BE:98, MTU=1500 ]<br/> &nbsp; IPv4 = [ Method=dhcp, Address=172.22.16.190, Netmask=255.255.252.0, Gateway=172.22.19.254 ]<br/> &nbsp; IPv4.Configuration = [ Method=dhcp ]<br/> &nbsp; IPv6 = [ &nbsp;]<br/> &nbsp; IPv6.Configuration = [ Method=auto, Privacy=disabled ]<br/> &nbsp; Nameservers = [ 172.22.2.99, 172.20.1.99 ]<br/> &nbsp; Nameservers.Configuration = [ &nbsp;]<br/> &nbsp; Timeservers = [ &nbsp;]<br/> &nbsp; Timeservers.Configuration = [ &nbsp;]<br/> &nbsp; Domains = [ ADVANTECH.CORP ]<br/> &nbsp; Domains.Configuration = [ &nbsp;]<br/> &nbsp; Proxy = [ Method=direct ]<br/> &nbsp; Proxy.Configuration = [ &nbsp;]<br/> &nbsp; mDNS = False<br/> &nbsp; mDNS.Configuration = False<br/> &nbsp; Provider = [ &nbsp;]</div>
 +
Set static IP Address:
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># connmanctl config ethernet_74fe4873be98_cable --ipv4 manual 192.168.0.1 255.255.255.0 192.168.0.254<br/> # connmanctl services ethernet_74fe4873be98_cable<br/> /net/connman/service/ethernet_74fe4873be98_cable<br/> &nbsp; Type = ethernet<br/> &nbsp; Security = [ &nbsp;]<br/> &nbsp; State = ready<br/> &nbsp; Favorite = True<br/> &nbsp; Immutable = False<br/> &nbsp; AutoConnect = True<br/> &nbsp; Name = Wired<br/> &nbsp; Ethernet = [ Method=auto, Interface=eth0, Address=74:FE:48:73:BE:98, MTU=1500 ]<br/> &nbsp; IPv4 = [ Method=manual, Address=192.168.0.1, Netmask=255.255.255.0, Gateway=192.168.0.254 ]<br/> &nbsp; IPv4.Configuration = [ Method=manual, Address=192.168.0.1, Netmask=255.255.255.0, Gateway=192.168.0.254 ]<br/> &nbsp; IPv6 = [ &nbsp;]<br/> &nbsp; IPv6.Configuration = [ Method=auto, Privacy=disabled ]<br/> &nbsp; Nameservers = [ &nbsp;]<br/> &nbsp; Nameservers.Configuration = [ &nbsp;]<br/> &nbsp; Timeservers = [ &nbsp;]<br/> &nbsp; Timeservers.Configuration = [ &nbsp;]<br/> &nbsp; Domains = [ &nbsp;]<br/> &nbsp; Domains.Configuration = [ &nbsp;]<br/> &nbsp; Proxy = [ Method=direct ]<br/> &nbsp; Proxy.Configuration = [ &nbsp;]<br/> &nbsp; mDNS = False<br/> &nbsp; mDNS.Configuration = False<br/> &nbsp; Provider = [ &nbsp;]</div>
 +
Set DNS server:
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># connmanctl config ethernet_74fe4873be98_cable --nameservers 8.8.8.8 8.8.4.4<br/> # connmanctl services ethernet_74fe4873be98_cable<br/> /net/connman/service/ethernet_74fe4873be98_cable<br/> &nbsp; Type = ethernet<br/> &nbsp; Security = [ &nbsp;]<br/> &nbsp; State = ready<br/> &nbsp; Favorite = True<br/> &nbsp; Immutable = False<br/> &nbsp; AutoConnect = True<br/> &nbsp; Name = Wired<br/> &nbsp; Ethernet = [ Method=auto, Interface=eth0, Address=74:FE:48:73:BE:98, MTU=1500 ]<br/> &nbsp; IPv4 = [ Method=manual, Address=192.168.0.1, Netmask=255.255.255.0, Gateway=192.168.0.254 ]<br/> &nbsp; IPv4.Configuration = [ Method=manual, Address=192.168.0.1, Netmask=255.255.255.0, Gateway=192.168.0.254 ]<br/> &nbsp; IPv6 = [ &nbsp;]<br/> &nbsp; IPv6.Configuration = [ Method=auto, Privacy=disabled ]<br/> &nbsp; Nameservers = [ 8.8.8.8, 8.8.4.4 ]<br/> &nbsp; Nameservers.Configuration = [ 8.8.8.8, 8.8.4.4 ]<br/> &nbsp; Timeservers = [ &nbsp;]<br/> &nbsp; Timeservers.Configuration = [ &nbsp;]<br/> &nbsp; Domains = [ &nbsp;]<br/> &nbsp; Domains.Configuration = [ &nbsp;]<br/> &nbsp; Proxy = [ Method=direct ]<br/> &nbsp; Proxy.Configuration = [ &nbsp;]<br/> &nbsp; mDNS = False<br/> &nbsp; mDNS.Configuration = False<br/> &nbsp; Provider = [ &nbsp;]</div>
 +
Changing the IP back to dhcp:
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># connmanctl config ethernet_74fe4873be98_cable --ipv4 dhcp<br/> # connmanctl services ethernet_74fe4873be98_cable<br/> /net/connman/service/ethernet_74fe4873be98_cable<br/> &nbsp; Type = ethernet<br/> &nbsp; Security = [ &nbsp;]<br/> &nbsp; State = ready<br/> &nbsp; Favorite = True<br/> &nbsp; Immutable = False<br/> &nbsp; AutoConnect = True<br/> &nbsp; Name = Wired<br/> &nbsp; Ethernet = [ Method=auto, Interface=eth0, Address=74:FE:48:73:BE:98, MTU=1500 ]<br/> &nbsp; IPv4 = [ Method=dhcp, Address=172.22.16.82, Netmask=255.255.252.0, Gateway=172.22.19.254 ]<br/> &nbsp; IPv4.Configuration = [ Method=dhcp ]<br/> &nbsp; IPv6 = [ &nbsp;]<br/> &nbsp; IPv6.Configuration = [ Method=auto, Privacy=disabled ]<br/> &nbsp; Nameservers = [ 8.8.8.8, 8.8.4.4 ]<br/> &nbsp; Nameservers.Configuration = [ 8.8.8.8, 8.8.4.4 ]<br/> &nbsp; Timeservers = [ &nbsp;]<br/> &nbsp; Timeservers.Configuration = [ &nbsp;]<br/> &nbsp; Domains = [ ADVANTECH.CORP ]<br/> &nbsp; Domains.Configuration = [ &nbsp;]<br/> &nbsp; Proxy = [ Method=direct ]<br/> &nbsp; Proxy.Configuration = [ &nbsp;]<br/> &nbsp; mDNS = False<br/> &nbsp; mDNS.Configuration = False<br/> &nbsp; Provider = [ &nbsp;]</div>
 +
Disable connman:
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># systemctl stop connman</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># systemctl disable connman</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># systemctl daemon-reload</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># systemctl restart systemd-networkd</div>
 +
Check DNS currently in use by systemd-resolved
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># resolvectl status</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># networkctl sttaus</div>
 +
DNS cannot work after disable connman service: [https://wiki.archlinux.org/title/systemd-resolved systemd-resolved]
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># ls -al /etc/resolv.conf</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">#&nbsp;ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># systemctl daemon-reload</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># systemctl restart systemd-networkd</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># systemctl restart systemd-resolved</div>
  
 
=== '''設置RTC (RTC Setting)&nbsp;''' ===
 
=== '''設置RTC (RTC Setting)&nbsp;''' ===
  
&nbsp;Disable RTC sync service<br/># systemctl disable ntpd.service<br/>&nbsp;[[File:RSB-3720 RTC pic1.png|RTENOTITLE]]<br/># systemctl stop systemd-timesyncd<br/># systemctl stop ntpdate.service<br/>&nbsp;[[File:RSB-3720 RTC pic2.png|RTENOTITLE]]<br/>Set system time to current, then write to RTC<br/># date 040710522021 && hwclock -w && date<br/>&nbsp;[[File:RSB-3720 RTC pic3.png|RTENOTITLE]]<br/>Set incorrect time, then read time from RTC<br/># date 010100002000 && hwclock -r && date<br/>&nbsp;[[File:RSB-3720 RTC pic4.png|RTENOTITLE]]<br/>Restart the RTC time to system time<br/># hwclock -s && date
+
&nbsp;Disable RTC sync service<br/> # systemctl disable ntpd.service<br/> &nbsp;[[File:RSB-3720 RTC pic1.png|RTENOTITLE]]<br/> # systemctl stop systemd-timesyncd<br/> # systemctl stop ntpdate.service<br/> &nbsp;[[File:RSB-3720 RTC pic2.png|RTENOTITLE]]<br/> Set system time to current, then write to RTC<br/> # date 040710522021 && hwclock -w && date<br/> &nbsp;[[File:RSB-3720 RTC pic3.png|RTENOTITLE]]<br/> Set incorrect time, then read time from RTC<br/> # date 010100002000 && hwclock -r && date<br/> &nbsp;[[File:RSB-3720 RTC pic4.png|RTENOTITLE]]<br/> Restart the RTC time to system time<br/> # hwclock -s && date
  
 
[[File:RSB-3720 RTC pic5.png|RTENOTITLE]]&nbsp;
 
[[File:RSB-3720 RTC pic5.png|RTENOTITLE]]&nbsp;
  
== '''Linux&nbsp;BSP編譯方法(Android BSP Compile Method)''' ==
+
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
=== 設置LVDS clock (LVDS clock setting) ===
 +
 
 +
Reference:&nbsp;
 +
 
 +
<span style="font-size:small;"><span style="font-family:Arial,Helvetica,sans-serif;">[https://community.nxp.com/t5/i-MX-Processors/Limited-PLL-options-for-setting-up-LVDS-pixel-clock-on-IMX8MP/m-p/1502546#M193574 Limited PLL options for setting up LVDS pixel clock on IMX8MP]</span></span>
 +
 
 +
[https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/different-lvds-support-on-imx8mp/ta-p/1549174?attachment-id=144583 LVDS PLL of imx8mp.pdf]
 +
 
 +
[https://ess-wiki.advantech.com.tw/view/設置MX8MP_LVDS_clock 設置MX8MP_LVDS_clock&nbsp;(Setup MX8MP_LVDS_clock)]
 +
 
 +
=== Screenshot on weston by weston-screenshooter ===
 +
 
 +
Add "--debug" in&nbsp;/lib/systemd/system/weston@.service
 +
 
 +
[[File:Weston-screenshooter.png|RTENOTITLE]]
 +
 
 +
Save and exit. Type command to reload the sercive:
 +
 
 +
root@imx8mprsb3720a1:~# systemctl daemon-reload<br/> root@imx8mprsb3720a1:~# systemctl restart weston@root<br/> root@imx8mprsb3720a1:~# weston --debug<br/> root@imx8mprsb3720a1:~# weston-screenshooter
 +
 
 +
It will generate&nbsp;the screenshot wayland-screenshot*.png file:
 +
 
 +
[[File:Weston-screenshot.png|RTENOTITLE]]
 +
 
 +
&nbsp;
 +
 
 +
 
 +
 
 +
=== Autoexec program after login to the system ===
 +
 
 +
Place the script file under /etc/profile.d/
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">
 +
root@imx8mprsb3720a1:~# cat /etc/profile.d/<br/> bash_completion.sh &nbsp;gawk.csh &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;gawk.sh &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; qt5.sh &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;test.sh &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; tslib.sh &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;weston.sh<br/> root@imx8mprsb3720a1:~# cat /etc/profile.d/test.sh<br/> #!/bin/sh
 +
 
 +
echo "I am running here..."<br/> root@imx8mprsb3720a1:~#
 +
</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">imx8mprsb3720a1 login: root<br/> Last login: Mon May 13 08:31:03 UTC 2024 on tty7<br/> I am running here...<br/> root@imx8mprsb3720a1:~#</div>
 +
 
 +
=== Others: ===
 +
 
 +
[https://ess-wiki.advantech.com.tw/view/Conf_local.conf conf/local.conf]
 +
 
 +
[https://ess-wiki.advantech.com.tw/view/HDMI_rotation HDMI screen rotation]
 +
 
 +
== '''Linux&nbsp;BSP編譯方法(Linux BSP Compile Method)''' ==
 +
 
 +
=== [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX8/Yocto_LBVD_User_Guide '''Yocto 4.2'''] ===
 +
 
 +
=== [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX8/Yocto_LBVC_User_Guide '''Yocto 4.0'''] ===
 +
 
 +
=== [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX8/Yocto_LBVB_User_Guide '''Yocto 3.3&nbsp;'''] ===
  
 
=== [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX8/Yocto_LBVA_User_Guide '''Yocto 3.0'''] ===
 
=== [http://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX8/Yocto_LBVA_User_Guide '''Yocto 3.0'''] ===
  
'''如果有驗證上的錯誤 請使用以下的方法'''
+
'''如果有驗證上的錯誤 請使用以下的方法 '''(if you have the build error , please&nbsp; use "&nbsp;<u>'''git config --global http.sslverify false"&nbsp;'''</u>
 +
 
 +
<u>'''### repo sync failed with Server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none<br/> ============================================================<br/> export GIT_SSL_NO_VERIFY=1<br/> #or<br/> git config --global http.sslverify false<br/> ============================================================'''</u>
 +
 
 +
&nbsp;
 +
 
 +
'''Add git and vim into image:'''
 +
 
 +
'''Add below in "conf/local.conf" file:'''
 +
 
 +
'''IMAGE_INSTALL_append = " git-perltools vim "'''
 +
 
 +
'''For install vim in xwayland, please add below into "meta/recipes-support/vim/vim_8.1.1518.bb b/meta/recipes-support/vim/vim_8.1.1518.bb" fie:'''
  
<u>'''### repo sync failed with Server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none<br/>============================================================<br/>export GIT_SSL_NO_VERIFY=1<br/>#or<br/>git config --global http.sslverify false<br/>============================================================'''</u>
+
'''PACKAGECONFIG_remove = " x11 "'''
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Yocto 4.0&nbsp;cannot fetch git submodule:</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">At path "~/adv-release-bsp/$build_folder/tmp/work/armv8a-poky-linux/nnshark/2021.10.imx-r0/git"</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">git config submodule.common.url&nbsp;[https://github.com/GStreamer/common.git https://github.com/GStreamer/common.git]</div>  
 +
&nbsp;
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Yocto 4.2 cannot fetch git submodule:</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">
 +
diff --git a/meta-ml/recipes-nnstreamer/nnshark/nnshark_2021.10.imx.bb b/meta-ml/recipes-nnstreamer/nnshark/nnshark_2021.10.imx.bb<br/> index f0e6fe73bd..3fc90f526e 100644<br/> --- a/meta-ml/recipes-nnstreamer/nnshark/nnshark_2021.10.imx.bb<br/> +++ b/meta-ml/recipes-nnstreamer/nnshark/nnshark_2021.10.imx.bb<br/> @@ -12,7 +12,7 @@ DEPENDS = "\<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;perf \<br/> &nbsp;"
 +
 
 +
-NNSHARK_SRC&nbsp;?= "gitsm://github.com/nxp-imx/nnshark.git;protocol=https"<br/> +NNSHARK_SRC&nbsp;?= "[git://github.com/nxp-imx/nnshark.git;protocol=https git://github.com/nxp-imx/nnshark.git;protocol=https]"<br/> &nbsp;SRCBRANCH&nbsp;?= "2021.10.imx"<br/> &nbsp;SRC_URI = "${NNSHARK_SRC};branch=${SRCBRANCH}"<br/> &nbsp;SRCREV = "e905828f16e3c374da7da9af30a5922086da4400"<br/> &nbsp;
 +
</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">At path "~/adv-release-bsp/$build_folder/tmp/work/armv8a-poky-linux/nnshark/2021.10.imx-r0/git"</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">git config submodule.common.url&nbsp;[https://github.com/GStreamer/common.git https://github.com/GStreamer/common.git]</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">git submodule update</div>
 +
&nbsp;
 +
 
 +
{| border="0" cellpadding="10" cellspacing="0" style="width:100%;"
 +
|-
 +
| <iframe height="230" key="advonline" level="campaign" path="en/aim-linux_community/" width="100%"></iframe>
 +
|}

Latest revision as of 07:18, 9 August 2024

Contents

產品介紹(Product introduction )

產品特性(Product Features)

  • NXP Arm® Cortex®-A53 i.MX8M Plus Quad/Dual up to 1.8 GHz
  • Onboard LPDDR4 4 GB / 6 GB, 4000MT/s memory
  • HDMI 1920x1080 at 60Hz, 1 Single or 1 Dual Channel 24 bit LVDS (or 1 4-Lane MIPI-DSI by BOM Option)
  • 1 4-wire RS-232/422/485, 1 USB3.2 Gen1 By 1, 1 USB2.0, 1 Micro SD, 1 Mic. in / Line out
  • 1 mini-PCIe for 3G/4G, 1 M.2 2230 Key E Slot
  • Supports Yocto Linux and Android
  • Support I/O Expansions boards by UIO40-Express

產品官網連結(Product official website link) 

RSB-3720

硬件接口說明(Hardware interface introduction)

接口布局和尺寸(Layout and Sizes)

RSB-3720 接口布局圖(Board Dimension Layout) 

 

RTENOTITLE

RTENOTITLE

 

RTENOTITLE

 

BAT RTC Battery Connector
BL1 LVDS Backlight 1 
BL2 LVDS Backlight 2 
COM1  COM + CAN Pin Header (default as debug console) 
CSI1 MIPI-CSI Camera Input 1
CSI2 MIPI-CSI Camera Input 2 
DCIN/DCIN 1 12V DC Power Inout by DC Jack / by Pin Header 
HDMI  HDMI CONN
LAN1 Ethernet 1 
LAN2  Ethernet 2
LOUT Line Out Pin Header
LVDS LVDS CONN.
M2 M.2 Key E CONN.
MIC MIC In Pin Header
MPCIE Mini-PCIe CONN.
RST Rest Button
SD SD 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)

 

接口引脚定義 (Pin definitions)

 

 

機械尺寸(Mechanical Characteristics)

RTENOTITLE

快速入門 (Quick Start)

系统下载 (OS Download)

  • Linux系统 (Linux OS)

Yocto 3.0:IoTGateway/BSP/Linux/iMX8/OS Support List 3.0

Yocto 3.3:IoTGateway/BSP/Linux/iMX8/OS Support List 3.3 RSB-3720

Yocto 4.0: IoTGateway/BSP/Linux/iMX8/OS Support List 4.0 release RSB-3720

 

 Linux 燒錄方法 (Linux Flash eMMC Method) 

    1. 創建一個可以開機的SD Card (Create a bootable SD card )  

     先確認SD卡在Ubuntu 系統(x86) 所認到的SD卡代號 ( Check the SD card symbol in Ubuntu System (x86)

      Command: sudo fdisk - l 

      RTENOTITLE

   2. 燒錄鏡像到SD 卡中. (Flash Image into SD card) 

        Command : sudo dd if=3720A1AIM30LIVA0333_iMX8MP_6G_2021-10-05.img of=/dev/sdf bs=1M conv=fsync 

     RTENOTITLE

   3. 將flash tool 拷貝到U盤  (Cpye the eMMC flash tool into USB Disk ) 

      RTENOTITLE

4. 設定終端機(Set Debug Terminal) 

Debug 串口調試 (Debug port Setting)

以 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 " )  

   波特率(Baud Rate):115200
   數據位(Data):8
   奇偶校驗(Parity):无 (none)
   停止位(Stop):1
   流控(Flow Control):无 (none) 

Tera Term Tool 

Check the Sriel port in Device Manager (查看PC端的串口號):

if you can not identify the Serial device , please check your serial driver. 

 

5. 將可開機的SD 卡插入 SD 插槽, 並打開電源開機     (Plug into the SD card into SD Card Slot , then turn on the power) 

   RTENOTITLE

6. 確認撥碼開關 為 SD 卡開機模式  (Check the Switch)

SD 卡開機: 1, 2 on  (Set the SD card boot up mode ,  1 on  2 on ) 

RTENOTITLE

'eMMC 開機: '2 on ( Set the eMMC boot up mode , 2 on , others off) 

RTENOTITLE

7.打開電源,由終端機可看到開機訊息  (Turn on the power , you will see the debug message from Terminal tool ) 

RTENOTITLE

8. 開機後 請再重新開機一次,系統將會重新劃分磁區大小. (If you can not not copy the eMMC flash tool into root file system , please reboot the device , because , the system will the reconfigure the partition )

9. 燒錄eMMC前, 請將U盤插入USB port   (Please pulg the USB Disk into USB port before flash eMMC)

10. 在系統確認U盤 (Check the USB disk in the Yocto System (Device side) ) 

     RTENOTITLE

11. 將flash tool 燒錄鏡像,拷貝到根目錄 (Copy the flash tool into root file system) 

 RTENOTITLE

RTENOTITLE

12. 解壓縮 flash tool  (Unzip the flash tool ) 

RTENOTITLE

13. 執行燒錄eMMC  (Exeucte the eMMC flash script )

   Note: eMMC : /dev/mmcblk2

  RTENOTITLE

14. 移除SD卡 ,重新開機,並切換撥碼開關  (Remove the SD card , Change the Switch to eMMC mode , then reboot the system) 

RTENOTITLE

15. 從eMMC 開機,debug 訊息  (You will see the debug message when you boot up from eMMC flash ) 

RTENOTITLE

    

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 

RTENOTITLE

RTENOTITLE

Command: Ping 8.8.8.8 

RTENOTITLE

Change IP Addr Command:

Check Active Ethernet interface:

root@imx8mprsb3720a1:~# connmanctl services
*AR Wired                ethernet_74fe485e4fbd_cable

Set static IP Addr: 

  1. connmanctl config <service> --ipv4 manual <ip address> <netmask> <gateway>
    # 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
root@imx8mprsb3720a1:~# connmanctl config ethernet_74fe485e4fbd_cable --nameservers 8.8.8.8 4.4.4.4

WiFi使用方法(WIFI Testing Method)

# 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

4G使用方法(4G Testing Method)

Check and change module to pppd mode
# stty -F /dev/ttyUSB3 –echo
# cat /dev/ttyUSB3 &
# echo AT+UUSBCONF? > /dev/ttyUSB3
 RTENOTITLE
Change to pppd mode:
# echo AT+UUSBCONF=0 > /dev/ttyUSB3
 RTENOTITLE
# echo AT+CFUN=16 > /dev/ttyUSB3
 RTENOTITLE
The module will be change to ttyACM0*, check again
# stty -F /dev/ttyACM0 –echo
# cat /dev/ttyACM0 &
# echo AT+UUSBCONF? > /dev/ttyACM0
 RTENOTITLE
Set module to con
# stty -F /dev/ttyACM0 -echo
# cat /dev/ttyACM0 &
# echo AT+csq > /dev/ttyACM0
# echo AT+cops? > /dev/ttyACM0
# echo AT+cgdcont? > /dev/ttyACM0
 RTENOTITLE
Connect to Internet:
# pppd connect 'chat -v -s -t 10 "" "AT" "" "ATDT*99***4#" "CONNECT" ""' user username password password /dev/ttyACM2 460800 nodetach crtscts debug usepeerdns defaultroute &
# ifconfig
 RTENOTITLE
# ping 8.8.8.8

RTENOTITLE

GPIO使用方法(GPIO Operating Method)

GPIO Pin Number
GPIO2 501
GPIO4 503
GPIO5 504
GPIO6 505
GPIO7 506
GPIO8 507
GPIO9 508
GPIO10 509
GPIO11 139
GPIO12 138

Short GPIO pin 2 & pin 4

RTENOTITLE

Short GPIO pin 5 & pin 6

RTENOTITLE

Short GPIO pin 7 & pin 8

RTENOTITLE

Short GPIO pin 9 & pin 10 

RTENOTITLE

Short GPIO pin 11 & pin 12

RTENOTITLE

 

 

LED_USER使用方法(LED_USER ON/OFF test)

ON: echo 255 > /sys/class/leds/user/brightness
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. 

RTENOTITLE

RTENOTITLE

RTENOTITLE

RTENOTITLE

RTENOTITLE

Set GPIO#496, #497 
Set to 0,1 for RS-485
Set to 1,1 for RS-422
Set to 0,0 for loopback
Set to 1,0 for RS-232

RS-232 default as debug console)

RTENOTITLE

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

RS-232  --  Disable console

Disable debug message output can also improve boot speed

Disable kernel message

setenv mmcargs setenv bootargs ${jh_clk} console=${console} modprobe.blacklist=${modprobe.blacklist} root=${mmcroot} video=HDMI-A-1:${videores} '''quiet'''
env save
reset

Or

Disable debug port

(1) Yocto machine setting:

modify /sources/meta-advantech/meta-fsl-imx/conf/machine$/${MC}.conf

SERIAL_CONSOLES = ";"

(2) Uboot parameter setting:

  • For the imx8mq, imx8mm, imx8mp:
setenv console disabled
env save
reset

CANBus or CAN-FD[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) 
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. 
Step 2: Set CAN0 and CAN1 up.

root@imx8mprsb3720a1:~# ip link set can0 up type can bitrate 125000 
[ 1362.935162] IPv6: ADDRCONF(NETDEV_CHANGE): can0: link becomes ready 
root@imx8mprsb3720a1:~# ifconfig can0 up 
root@imx8mprsb3720a1:~# ip link set can1 up type can bitrate 125000 
[ 1381.546624] IPv6: ADDRCONF(NETDEV_CHANGE): can1: link becomes ready 
root@imx8mprsb3720a1:~# ifconfig can1 up

Step 3: candump CAN0

root@imx8mprsb3720a1:~# candump can0 & 
[1] 965

Step 4: candump CAN1

root@imx8mprsb3720a1:~# cansend can1 1F334455#1122334455667788 
root@imx8mprsb3720a1:~# can0 1F334455 [8] 11 22 33 44 55 66 77 88

藍牙使用方法(BlueTooth Operating Method)

# 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


音訊使用方法(BlueTooth Operating Method)

Line-in , Line-out, MIC
1.Line-out
Command : gplay-1.0
2.MIC
Command : arecord
Check audio codec:
# cat /proc/asound/cards
0 [sgtl5000       ]: sgtl5000 - sgtl5000
                      sgtl5000
1 [audiohdmi      ]: audio-hdmi - audio-hdmi
                      audio-hdmi
root@imx8mprsb3720a1:~#
   Set Mic/audio volume
# amixer set Mic 100%
# amixer set Lineout 100%
# amixer set PCM 100%
Record and playback
Example command:
# arecord –t wav –c 1 –r 44100 –d 5 /tmp/mic.wav
# aplay /tmp/mic.wav
Record from MIC:
# arecord -D plughw:0,0 -r 16000 -f S16_LE ./f-16000.wav
Recording WAVE './f-16000.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono
# aplay f-16000.wav
Playing WAVE 'f-16000.wav' : Signed 16 bit Little Endian, Rate 16000 Hz, Mono
Play wav file from codec:
# aplay -D plughw:0,0 file_example_WAV_10MG.wav
Playing WAVE 'file_example_WAV_10MG.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Play wav file from HDMI:
# aplay -D plughw:1,0 file_example_WAV_10MG.wav
Playing WAVE 'file_example_WAV_10MG.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Play wav file from HDMI with gst-launch:
# gst-launch-1.0 filesrc location=LRMonoPhase4.wav ! wavparse ! audioconvert ! audioresample ! autoaudiosink

I2C 測試( I2C Test method) 

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

看門狗測試 (Watch Dog Test method) 

System will reboot after 1 sec
# /unit_tests/Watchdog/wdt_driver_test.out 1 2 0

RTENOTITLE

攝像頭測試(Camera Test method) 

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

遠程訪問及文件傳輸(Remote Access and File Transimmion)

              查看主板IP位址 ( check IP Address ):

        Command : ifconfig

RTENOTITLE

 

Windows下SSH訪問及文件傳輸

SSH Remote Log into Device 

  • SSH遠程登陸,以putty選擇putty.exe(或者使用Xshell、SecureCRT等類似軟件)
  • 需要設置遠程設備的IP、通訊端口(默認22)、通訊方式錄后驗證用户名密碼

 

RTENOTITLE

RTENOTITLE

 

RTENOTITLE

RTENOTITLE

通用方法(General Method)

查看CPU温度(Check CPU Temperature)

    root@imx8mprsb3720a1:/# cat /sys/devices/virtual/thermal/thermal_zone0/temp   40000

    # 或者直接以度爲單位顯示 echo $[$(cat /sys/class/thermal/thermal_zone0/temp)/1000]° >>> 40°

查看CPU频率(Check CPU Frequency)

           cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq 
           >> 1200000
           cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq    
           >> 1800000

查看内存容量(Check Memory Capacity)

root@imx8mprsb3720a1:/# busybox free -m
              total        used        free      shared  buff/cache   available
Mem:        6002524      393988     5517304       18460       91232     5507676
Swap:             0           0           0

 

查看存储容量(Check Storage Capacity)

root@imx8qxprom5620a1:/# busybox df -h
Filesystem                Size      Used Available Use% Mounted on
/dev/root                13.4G      1.7G     11.1G  13% /
devtmpfs                395.8M      4.0K    395.8M   0% /dev
tmpfs                   876.4M         0    876.4M   0% /dev/shm
tmpfs                   876.4M     16.5M    859.9M   2% /run
tmpfs                   876.4M         0    876.4M   0% /sys/fs/cgroup
tmpfs                   876.4M      4.0K    876.4M   0% /tmp
tmpfs                   876.4M    280.0K    876.2M   0% /var/volatile
/dev/mmcblk0p2           13.6G      1.7G     11.3G  13% /run/media/mmcblk0p2
/dev/mmcblk0p1           63.9M     23.4M     40.5M  37% /run/media/mmcblk0p1
/dev/mmcblk1p1           63.9M     23.4M     40.5M  37% /run/media/mmcblk1p1
tmpfs                   175.3M     88.0K    175.2M   0% /run/user/0
root@imx8qxprom5620a1:/#

 


網路Ping測試(Ping Network Testing)

     ping 8.8.8.8
     PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
     64 bytes from 8.8.8.8: icmp_seq=1 ttl=54 time=2.10 ms
     64 bytes from 8.8.8.8: icmp_seq=2 ttl=54 time=2.10 ms

 

 

 




設置固定IP與DNS(Set static IP address and DNS)

use systemd-networkd:

Check running service:

systemctl --type=service
systemctl --type=service | grep --ignore-case 'network'

Set DNS:

# cat /etc/systemd/network/20-wired.network
[Match]
Name=eth0
[Network]
DHCP=ipv4
DNS=8.8.8.8
# cat /etc/systemd/network/21-wired.network
[Match]
Name=eth1
[Network]
DHCP=ipv4
DNS=8.8.4.4
# systemctl restart systemd-networkd
root@imx8mprsb3720a1:~# [  589.202133] imx-dwmac 30bf0000.ethernet eth1: PHY [stmmac-1:00] driver [RTL8211F Gigabit Ethernet]
[  589.227041] imx-dwmac 30bf0000.ethernet eth1: No Safety Features support found
[  589.234333] imx-dwmac 30bf0000.ethernet eth1: IEEE 1588-2008 Advanced Timestamp supported
[  589.243248] imx-dwmac 30bf0000.ethernet eth1: registered PTP clock
[  589.249491] imx-dwmac 30bf0000.ethernet eth1: configuring for phy/rgmii-id link mode
[  589.257687] 8021q: adding VLAN 0 to HW filter on device eth1
[  589.518704] RTL8211F Gigabit Ethernet 30be0000.ethernet-1:00: attached PHY driver [RTL8211F Gigabit Ethernet] (mii_bus:phy_addr=30be0000.ethernet-1:00, irq=175)
[  592.419369] fec 30be0000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[  592.427154] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
# networkctl status
*   State: routable
  Address: 172.22.16.82 on eth0
           fe80::76fe:48ff:fe73:be98 on eth0
  Gateway: 172.22.19.254 on eth0
      DNS: 8.8.4.4
           8.8.8.8
           172.22.2.99
           172.20.1.99

 

use connmanctl:

Check network services:

# connmanctl services
*AR Wired                ethernet_74fe4873be98_cable

Check network setting:

# connmanctl services ethernet_74fe4873be98_cable
/net/connman/service/ethernet_74fe4873be98_cable
  Type = ethernet
  Security = [  ]
  State = online
  Favorite = True
  Immutable = False
  AutoConnect = True
  Name = Wired
  Ethernet = [ Method=auto, Interface=eth0, Address=74:FE:48:73:BE:98, MTU=1500 ]
  IPv4 = [ Method=dhcp, Address=172.22.16.190, Netmask=255.255.252.0, Gateway=172.22.19.254 ]
  IPv4.Configuration = [ Method=dhcp ]
  IPv6 = [  ]
  IPv6.Configuration = [ Method=auto, Privacy=disabled ]
  Nameservers = [ 172.22.2.99, 172.20.1.99 ]
  Nameservers.Configuration = [  ]
  Timeservers = [  ]
  Timeservers.Configuration = [  ]
  Domains = [ ADVANTECH.CORP ]
  Domains.Configuration = [  ]
  Proxy = [ Method=direct ]
  Proxy.Configuration = [  ]
  mDNS = False
  mDNS.Configuration = False
  Provider = [  ]

Set static IP Address:

# connmanctl config ethernet_74fe4873be98_cable --ipv4 manual 192.168.0.1 255.255.255.0 192.168.0.254
# connmanctl services ethernet_74fe4873be98_cable
/net/connman/service/ethernet_74fe4873be98_cable
  Type = ethernet
  Security = [  ]
  State = ready
  Favorite = True
  Immutable = False
  AutoConnect = True
  Name = Wired
  Ethernet = [ Method=auto, Interface=eth0, Address=74:FE:48:73:BE:98, MTU=1500 ]
  IPv4 = [ Method=manual, Address=192.168.0.1, Netmask=255.255.255.0, Gateway=192.168.0.254 ]
  IPv4.Configuration = [ Method=manual, Address=192.168.0.1, Netmask=255.255.255.0, Gateway=192.168.0.254 ]
  IPv6 = [  ]
  IPv6.Configuration = [ Method=auto, Privacy=disabled ]
  Nameservers = [  ]
  Nameservers.Configuration = [  ]
  Timeservers = [  ]
  Timeservers.Configuration = [  ]
  Domains = [  ]
  Domains.Configuration = [  ]
  Proxy = [ Method=direct ]
  Proxy.Configuration = [  ]
  mDNS = False
  mDNS.Configuration = False
  Provider = [  ]

Set DNS server:

# connmanctl config ethernet_74fe4873be98_cable --nameservers 8.8.8.8 8.8.4.4
# connmanctl services ethernet_74fe4873be98_cable
/net/connman/service/ethernet_74fe4873be98_cable
  Type = ethernet
  Security = [  ]
  State = ready
  Favorite = True
  Immutable = False
  AutoConnect = True
  Name = Wired
  Ethernet = [ Method=auto, Interface=eth0, Address=74:FE:48:73:BE:98, MTU=1500 ]
  IPv4 = [ Method=manual, Address=192.168.0.1, Netmask=255.255.255.0, Gateway=192.168.0.254 ]
  IPv4.Configuration = [ Method=manual, Address=192.168.0.1, Netmask=255.255.255.0, Gateway=192.168.0.254 ]
  IPv6 = [  ]
  IPv6.Configuration = [ Method=auto, Privacy=disabled ]
  Nameservers = [ 8.8.8.8, 8.8.4.4 ]
  Nameservers.Configuration = [ 8.8.8.8, 8.8.4.4 ]
  Timeservers = [  ]
  Timeservers.Configuration = [  ]
  Domains = [  ]
  Domains.Configuration = [  ]
  Proxy = [ Method=direct ]
  Proxy.Configuration = [  ]
  mDNS = False
  mDNS.Configuration = False
  Provider = [  ]

Changing the IP back to dhcp:

# connmanctl config ethernet_74fe4873be98_cable --ipv4 dhcp
# connmanctl services ethernet_74fe4873be98_cable
/net/connman/service/ethernet_74fe4873be98_cable
  Type = ethernet
  Security = [  ]
  State = ready
  Favorite = True
  Immutable = False
  AutoConnect = True
  Name = Wired
  Ethernet = [ Method=auto, Interface=eth0, Address=74:FE:48:73:BE:98, MTU=1500 ]
  IPv4 = [ Method=dhcp, Address=172.22.16.82, Netmask=255.255.252.0, Gateway=172.22.19.254 ]
  IPv4.Configuration = [ Method=dhcp ]
  IPv6 = [  ]
  IPv6.Configuration = [ Method=auto, Privacy=disabled ]
  Nameservers = [ 8.8.8.8, 8.8.4.4 ]
  Nameservers.Configuration = [ 8.8.8.8, 8.8.4.4 ]
  Timeservers = [  ]
  Timeservers.Configuration = [  ]
  Domains = [ ADVANTECH.CORP ]
  Domains.Configuration = [  ]
  Proxy = [ Method=direct ]
  Proxy.Configuration = [  ]
  mDNS = False
  mDNS.Configuration = False
  Provider = [  ]

Disable connman:

# systemctl stop connman
# systemctl disable connman
# systemctl daemon-reload
# systemctl restart systemd-networkd

Check DNS currently in use by systemd-resolved

# resolvectl status
# networkctl sttaus

DNS cannot work after disable connman service: systemd-resolved

# ls -al /etc/resolv.conf
# ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
# systemctl daemon-reload
# systemctl restart systemd-networkd
# systemctl restart systemd-resolved

設置RTC (RTC Setting) 

 Disable RTC sync service
# systemctl disable ntpd.service
 RTENOTITLE
# systemctl stop systemd-timesyncd
# systemctl stop ntpdate.service
 RTENOTITLE
Set system time to current, then write to RTC
# date 040710522021 && hwclock -w && date
 RTENOTITLE
Set incorrect time, then read time from RTC
# date 010100002000 && hwclock -r && date
 RTENOTITLE
Restart the RTC time to system time
# hwclock -s && date

RTENOTITLE 




設置LVDS clock (LVDS clock setting)

Reference: 

Limited PLL options for setting up LVDS pixel clock on IMX8MP

LVDS PLL of imx8mp.pdf

設置MX8MP_LVDS_clock (Setup MX8MP_LVDS_clock)

Screenshot on weston by weston-screenshooter

Add "--debug" in /lib/systemd/system/weston@.service

RTENOTITLE

Save and exit. Type command to reload the sercive:

root@imx8mprsb3720a1:~# systemctl daemon-reload
root@imx8mprsb3720a1:~# systemctl restart weston@root
root@imx8mprsb3720a1:~# weston --debug
root@imx8mprsb3720a1:~# weston-screenshooter

It will generate the screenshot wayland-screenshot*.png file:

RTENOTITLE

 


Autoexec program after login to the system

Place the script file under /etc/profile.d/

root@imx8mprsb3720a1:~# cat /etc/profile.d/
bash_completion.sh  gawk.csh            gawk.sh             qt5.sh              test.sh             tslib.sh            weston.sh
root@imx8mprsb3720a1:~# cat /etc/profile.d/test.sh
#!/bin/sh

echo "I am running here..."
root@imx8mprsb3720a1:~#

imx8mprsb3720a1 login: root
Last login: Mon May 13 08:31:03 UTC 2024 on tty7
I am running here...
root@imx8mprsb3720a1:~#

Others:

conf/local.conf

HDMI screen rotation

Linux BSP編譯方法(Linux BSP Compile Method)

Yocto 4.2

Yocto 4.0

Yocto 3.3 

Yocto 3.0

如果有驗證上的錯誤 請使用以下的方法 (if you have the build error , please  use " git config --global http.sslverify false" 

### repo sync failed with Server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none
============================================================
export GIT_SSL_NO_VERIFY=1
#or
git config --global http.sslverify false
============================================================

 

Add git and vim into image:

Add below in "conf/local.conf" file:

IMAGE_INSTALL_append = " git-perltools vim "

For install vim in xwayland, please add below into "meta/recipes-support/vim/vim_8.1.1518.bb b/meta/recipes-support/vim/vim_8.1.1518.bb" fie:

PACKAGECONFIG_remove = " x11 "

Yocto 4.0 cannot fetch git submodule:
At path "~/adv-release-bsp/$build_folder/tmp/work/armv8a-poky-linux/nnshark/2021.10.imx-r0/git"
git config submodule.common.url https://github.com/GStreamer/common.git

 

Yocto 4.2 cannot fetch git submodule:

diff --git a/meta-ml/recipes-nnstreamer/nnshark/nnshark_2021.10.imx.bb b/meta-ml/recipes-nnstreamer/nnshark/nnshark_2021.10.imx.bb
index f0e6fe73bd..3fc90f526e 100644
--- a/meta-ml/recipes-nnstreamer/nnshark/nnshark_2021.10.imx.bb
+++ b/meta-ml/recipes-nnstreamer/nnshark/nnshark_2021.10.imx.bb
@@ -12,7 +12,7 @@ DEPENDS = "\
         perf \
 "

-NNSHARK_SRC ?= "gitsm://github.com/nxp-imx/nnshark.git;protocol=https"
+NNSHARK_SRC ?= "git://github.com/nxp-imx/nnshark.git;protocol=https"
 SRCBRANCH ?= "2021.10.imx"
 SRC_URI = "${NNSHARK_SRC};branch=${SRCBRANCH}"
 SRCREV = "e905828f16e3c374da7da9af30a5922086da4400"
 

At path "~/adv-release-bsp/$build_folder/tmp/work/armv8a-poky-linux/nnshark/2021.10.imx-r0/git"
git config submodule.common.url https://github.com/GStreamer/common.git
git submodule update