Difference between revisions of "ROM-2820 user guide"

From ESS-WIKI
Jump to: navigation, search
 
(80 intermediate revisions by the same user not shown)
Line 1: Line 1:
  
 
+
= '''產品介紹''' =
 
 
= 產品介紹 =
 
  
 
== '''產品特性(Features)''' ==
 
== '''產品特性(Features)''' ==
Line 29: Line 27:
 
 
 
 
  
=== '''ROM-ED91 接口布局圖 Board Dimension Layout''' ===
+
=== '''ROM-ED93 接口布局圖 Board Dimension Layout''' ===
 
 
 
 
  
 
+
 [[File:ROM-2820 io interduce.PNG|RTENOTITLE]]
  
 
=== '''主板内置插针式引脚排序方式 (Pin Header defination) ''' ===
 
=== '''主板内置插针式引脚排序方式 (Pin Header defination) ''' ===
Line 39: Line 35:
 
=== '''Internal I/O, Jummper/Switch List:''' ===
 
=== '''Internal I/O, Jummper/Switch List:''' ===
  
{| border="1" cellpadding="1" cellspacing="1" style="width: 763px;"
+
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 +
|-
 +
| '''Position'''
 +
| '''Description'''
 +
|-
 +
| [[AT801|AT801]]
 +
| AT/ATX select header
 +
|-
 +
| [[AUDIO1|AUDIO1]]
 +
| Line Out Connector
 +
|-
 +
| [[BAT601|BAT601]]
 +
| Battery Connector
 
|-
 
|-
| '''Label'''
+
| [[CN1301|CN1301]]
| style="width: 296.422px;" | '''Function'''
+
| Camera FPC connector
| style="width: 64px;" | '''Label'''
 
| style="width: 301px;" | '''Function'''
 
 
|-
 
|-
| DCIN1401
+
| [[CN1801|CN1801]]
| style="width: 296.422px;" | 12V DCIN connector
+
| CANA terminal resistor enable jumper
| style="width: 64px;" | SW1301
 
| style="width: 301px;" | BT0_CFG1/4, BT1_CFG6/7/9/11
 
 
|-
 
|-
| COMB
+
| [[CN1802|CN1802]]
| style="width: 296.422px;" | RS232/422/485
+
| CANB terminal resistor enable jumper
| style="width: 64px;" | SW1302
 
| style="width: 301px;" | BT0_CFG0, BT1_CFG4/5, BOOT_SEL0#/1#, MOD_ON
 
 
|-
 
|-
| COMA
+
| [[CANA|CANA]]
| style="width: 296.422px;" | RS232/422/485
+
| CAN Bus Connector
| style="width: 64px;" | SW1203
 
| style="width: 301px;" | UARTB_MODE0, UART_MODE1
 
 
|-
 
|-
| LAN
+
| [[CANB|CANB]]
| style="width: 296.422px;" | LAN Connector
+
| CAN Bus Connector
| style="width: 64px;" | SW1204
 
| style="width: 301px;" | UARTB_TERM, UARTB_SLEW
 
 
|-
 
|-
| USB1
+
| [[COMA|COMA]]
| style="width: 296.422px;" | USB2.0 port Connector
+
| RS232/422/485
| style="width: 64px;" | SW1206
 
| style="width: 301px;" | U1205_RX_TERM, U1205_MODE2
 
 
|-
 
|-
| USB0_OTG1
+
| [[COMB|COMB]]
| style="width: 296.422px;" | Micro USB Connector
+
| RS232/422/485
| style="width: 64px;" | SW1201
 
| style="width: 301px;" | UARTA_MODE0, UART_MODE1
 
 
|-
 
|-
| AJ
+
| [[COMC|COMC]]
| style="width: 296.422px;" | Line Out Connector
+
| COM A port wafer
| style="width: 64px;" | SW1202
 
| style="width: 301px;" | UARTA_TERM, UARTA_SLEW
 
 
|-
 
|-
| MIC
+
| [[COMD|COMD]]
| style="width: 296.422px;" | MIC Connector
+
| COM D port wafer
| style="width: 64px;" | SW1205
 
| style="width: 301px;" | U1202_RX_TERM, U1202_MODE2
 
 
|-
 
|-
| CAN
+
| [[COME_DEBUG|COME_DEBUG]]
| style="width: 296.422px;" | CAN Bus Connector
+
| Debug console wafer
| style="width: 64px;" | SW1303
 
| style="width: 301px;" | Power button
 
 
|-
 
|-
| COME_DEBUG
+
| [[CN1601|CN1601]]
| style="width: 296.422px;" | M-core debug console
+
| RJ45 1x2
| style="width: 64px;" | SW1304
 
| style="width: 301px;" | Reset button
 
 
|-
 
|-
| COMC
+
| [[DCIN701|DCIN701]]
| style="width: 296.422px;" | COM
+
| 12V DCIN connector
| style="width: 64px;" | I2S_CN
 
| style="width: 301px;" | I2S Connector
 
 
|-
 
|-
| COMD
+
| [[DSI|DSI]]
| style="width: 296.422px;" | A-core debug console
+
| DSI connector
| style="width: 64px;" | CN501
 
| style="width: 301px;" | CAN0_H, CAN0_L terminatl resistors
 
 
|-
 
|-
| I2C1101
+
| [[DSI_BKLT_PWR|DSI_BKLT_PWR]]
| style="width: 296.422px;" | I2C Connector
+
| DSI blacklight wafer
| style="width: 64px;" | SD_SLT
 
| style="width: 301px;" | SD select
 
 
|-
 
|-
| I2C1102
+
| [[DSI_BKLT_SLT|DSI_BKLT_SLT]]
| style="width: 296.422px;" | I2C Connector
+
| DSI blacklight power select
| style="width: 64px;" | GPIO1101
 
| style="width: 301px;" | GPIO header
 
 
|-
 
|-
| CN601
+
| [[DSI_VDD_SLT|DSI_VDD_SLT]]
| style="width: 296.422px;" | M.2 Key E Connector
+
| DSI VDD power select
| style="width: 64px;" | SPI_CN1101
 
| style="width: 301px;" | PWM header
 
 
|-
 
|-
| CN701
+
| [[GPIO|GPIO]]
| style="width: 296.422px;" | MIPI-CSI Connector
+
| GPIO header
| style="width: 64px;" | CN1101
 
| style="width: 301px;" | SPI header
 
 
|-
 
|-
| LVDS
+
| [[I2S_CN|I2S_CN]]
| style="width: 296.422px;" | LVDS Connector
+
| Audio expander pin header
| style="width: 64px;" | LVDS_VDD_SLT
 
| style="width: 301px;" | LVDS power select select header
 
 
|-
 
|-
| LVDS_BKLT_PWR
+
| [[LVDS|LVDS]]
| style="width: 296.422px;" | LVDS Backlight Connector
+
| LVDS connector
| style="width: 64px;" | LVDS_BKLT_SLT
 
| style="width: 301px;" | LVDS Backlight power select header
 
 
|-
 
|-
| BAT1
+
| [[LVDS_BKLT_PWR|LVDS_BKLT_PWR]]
| style="width: 296.422px;" | Battery Connector
+
| LVDS blacklight wafer
| style="width: 64px;" |  
+
|-
| style="width: 301px;" |  
+
| [[LVDS_BKLT_SLT|LVDS_BKLT_SLT]]
|}
+
| LVDS blacklight power select
 
+
|-
 
+
| [[LVDS_VDD_SLT|LVDS_VDD_SLT]]
 
+
| LVDS VDD power select
=== '''Rear I/O ''' ===
+
|-
 
+
| [[M2B_CN|M2B_CN]]
=== '''LED Function List ''' ===
+
| M2 Key B connector
 
+
|-
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
+
| [[M2E_CN|M2E_CN]]
 +
| M2 Key E connector
 +
|-
 +
| [[MIC|MIC]]
 +
| MIC Connector
 +
|-
 +
| [[SD_CARD|SD_CARD]]
 +
| Micro SD slot
 +
|-
 +
| [[SD2001|SD2001]]
 +
| SDIO device select jumper
 +
|-
 +
| [[SD2002|SD2002]]
 +
| SDIO device select jumper
 +
|-
 +
| [[SD2003|SD2003]]
 +
| SDIO device select jumper
 +
|-
 +
| [[SD2005|SD2005]]
 +
| SDIO device select jumper
 +
|-
 +
| [[SD2004|SD2004]]
 +
| SDIO device select jumper
 +
|-
 +
| [[SD2006|SD2006]]
 +
| SDIO device select jumper
 +
|-
 +
| [[SIM|SIM]]
 +
| SIM card connector
 +
|-
 +
| [[SPI|SPI]]
 +
| SPI pin header
 +
|-
 +
| [[SW1001|SW1001]]
 +
| Boot select switch
 +
|-
 +
| [[SW1002|SW1002]]
 +
| Reset button
 +
|-
 +
| [[SW1003|SW1003]]
 +
| Power button
 
|-
 
|-
| Location
+
| [[SW1104|SW1104]]
| Function
+
| COMA UART setting switch
 
|-
 
|-
| PD1405
+
| [[SW1103|SW1103]]
| +V5_MOD
+
| COMB UART setting switch
 
|-
 
|-
| PD1502
+
| [[USB1201|USB1201]]
| +V3.3
+
| USB2.0 2x1 Connector
 
|-
 
|-
| PD1503
+
| [[USB0_OTG1|USB0_OTG1]]
| +V5
+
| Micro USB Connector
 
|}
 
|}
  
 
+
[[File:ROM-2820 io interduce 2-1.png|RTENOTITLE]]
 
 
=== '''Switch Settings'''  ===
 
 
 
*[http://ess-wiki.advantech.com.tw/view/ROM-2620_SW1301.png SW1301(BT0_CFG1/4, BT1_CFG6/7/9/11)]
 
*[http://ess-wiki.advantech.com.tw/view/ROM-2620_SW1302.png SW1302(BT0_CFG0, BT1_CFG4/5, BOOT_SEL0#/1#, MOD_ON)]
 
*[http://ess-wiki.advantech.com.tw/view/SW1203_(UARTB_MODE0,_UART_MODE1) SW1203 (UARTB_MODE0, UART_MODE1)]
 
*[http://ess-wiki.advantech.com.tw/view/SW1204_(UARTB_TERM,_UARTB_SLEW) SW1204 (UARTB_TERM,_UARTB_SLEW)]
 
*[[SW1206_(U1205_RX_TERM,_U1205_MODE2)|SW1206_(U1205_RX_TERM,_U1205_MODE2)]]
 
*[[SW1201_(UARTA_MODE0,_UART_MODE1|SW1201 (UARTA_MODE0, UART_MODE1]])
 
*[[SW1202_(UARTA_TERM,_UARTA_SLEW)|SW1202 (UARTA_TERM,_UARTA_SLEW)]]
 
*[http://ess-wiki.advantech.com.tw/view/SW1205_(U1202_RX_TERM,_U1202_MODE2) SW1205_(U1202_RX_TERM,_U1202_MODE2)]
 
*[http://ess-wiki.advantech.com.tw/view/SW1303_(Power_button) SW1303_(Power_button)]
 
*[http://ess-wiki.advantech.com.tw/view/SW1304_(Reset_button) SW1304_(Reset_button)]
 
*[http://ess-wiki.advantech.com.tw/view/SD_SLT_(SD_select) SD_SLT_(SD_select)]
 
*[[LVDS_VDD_SLT_(LVDS_power_select_select_header)|LVDS_VDD_SLT_(LVDS_power_select_select_header)]]
 
*[[LVDS_BKLT_SLT_(LVDS_Backlight_power_select_header)|LVDS_BKLT_SLT_(LVDS_Backlight_power_select_header)]]  
 
 
 
 
 
  
=== '''接口引脚定義 (Connector Pin definitions)''' ===
+
[[File:ROM-2820 io interduce3-1.png|RTENOTITLE]]
  
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_DCIN.png DCIN1401]
+
[[File:ROM-2820 io interduce4.png|RTENOTITLE]]
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_COMB.png COMB]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_COMA.png COMA]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_LAN.png LAN]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_USB1.png USB1]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_USB0_OTG1.png USB0_OTG1]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_AJ.png AJ(Audio_Jack)]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_MIC.png MIC]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_CAN.png CAN]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_COME_DEBUG.png COME_DEBUG(M-core_debug)]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_COMC.png COMC]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_COMD.png COMD(A-code_debug)]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_I2C1101.png I2C1101]  
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_I2C1102.png I2C1102]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_CN601.png CN601(M.2_Key_E)]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_CN701.png CN701(MIPI-CSI)]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_LVDS.png LVDS]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_LVDS_BKLT_PWR.png LVDS_BKLT_PWR]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_BAT1.png BAT1]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_I2S_CN.png I2S_CN(I2S)]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_CN501.png CN501(CAN0_H/CAN0_L)]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_GPIO1101.png GPIO1101]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_SPI_CN1101.png SPI_CN1101(PWM)]
 
*[http://ess-wiki.advantech.com.tw/view/File:ROM-2620_CN1101.png CN1101(SPI)]  
 
  
=== '''机械尺寸  ('''Mechanical Characteristics) ===
+
= '''快速入門 (Quick Start)''' =
 
 
'''ROM-2820'''
 
 
 
 
 
 
 
----
 
 
 
= '''快速入门 (Quick Start)''' =
 
  
 
=== '''系统下载 (OS Download)''' ===
 
=== '''系统下载 (OS Download)''' ===
Line 224: Line 185:
 
*'''Linux系统 (Linux OS)''''''   '''  
 
*'''Linux系统 (Linux OS)''''''   '''  
  
'''Yocto 4.2: '''IoTGateway/BSP/Linux/iMX8/OS Support List 4.2 release ROM-2820 - ESS-WIKI (advantech.com.tw)''' '''
+
'''Yocto 4.2: '''[https://ess-wiki.advantech.com.tw/view/Release_Note IoTGateway/BSP/Linux/iMX8/OS Support List 4.2 release ROM-2820 - ESS-WIKI (advantech.com.tw)''' ''']
 
 
 
 
  
 
 
 
 
Line 236: Line 195:
 
Step0: 檢查SD卡在Linux 環境的代號 (check SD card symbol in Linux system) 
 
Step0: 檢查SD卡在Linux 環境的代號 (check SD card symbol in Linux system) 
  
[[File:ROM-2620 USBDeviceID.png|RTENOTITLE]]
+
[[File:ROM-2820 sd check.PNG|RTENOTITLE]]
  
 
Step1: 創造一張可開機的SD 卡 (Create a bootable SD card)
 
Step1: 創造一張可開機的SD 卡 (Create a bootable SD card)
Line 242: Line 201:
 
<span style="font-size:small;">Command&nbsp;:</span>
 
<span style="font-size:small;">Command&nbsp;:</span>
  
&nbsp;
+
sudo dd if=2820A1AIM36LIVD0042_iMX93_2G_2024-05-26.img of=/dev/sdh bs=1M conv=fsync<br/> [[File:ROM-2820 sd created.PNG|RTENOTITLE]]
 
 
&nbsp;
 
  
 
Step2: 將可開機的SD 卡插入底板SD卡卡槽(Plug the SD card into Carrier board 's SD card slot)
 
Step2: 將可開機的SD 卡插入底板SD卡卡槽(Plug the SD card into Carrier board 's SD card slot)
Line 250: Line 207:
 
Step3: 確認開機選擇指撥開關
 
Step3: 確認開機選擇指撥開關
  
&nbsp;
+
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 +
|-
 +
| '''SD&nbsp; boot:'''
 +
| '''1 on , 2on'''
 +
|-
 +
| '''EMMC&nbsp;boot:'''
 +
| '''1 off , 2 on&nbsp;'''
 +
|}
 +
 
 +
'''AT/ATX mode Jumper&nbsp;'''
  
 
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 
|-
 
|-
| EMMC boot:
+
| style="width: 255px;" | '''AT mode'''
| SW1301: 1_2_5_6 ON<br/> SW1302: 4_6 ON
+
| style="width: 232px;" | '''2&3'''
|-
 
| SD boot:
 
| SW1301: 1_2_3_4 ON<br/> SW1302: 4_6 ON
 
 
|-
 
|-
| Serial download:
+
| style="width: 255px;" | '''ATX mode'''
| SW1301: All OFF<br/> SW1302: 5_6 ON
+
| style="width: 232px;" | '''1&2'''
 
|}
 
|}
 +
 +
[[File:ROM-2820 AT ATX mode.png|RTENOTITLE]]
 +
 +
=== <span style="font-size:medium;">'''System ID&nbsp;: root'''</span> ===
 +
 +
=== <span style="font-size:medium;">'''Password&nbsp;: 12345678'''</span> ===
  
 
Step4:打開電源 和 終端機&nbsp;(Turn on the Power & Terminal)
 
Step4:打開電源 和 終端機&nbsp;(Turn on the Power & Terminal)
  
&nbsp;
+
[[File:TeraTerm 2021-09-10 140930n.jpg|RTENOTITLE]]
 +
 
 +
[[File:TeraTerm12021-09-10 141114n.jpg|RTENOTITLE]]
 +
 
 +
Step 5:&nbsp;&nbsp;按下Power 開關 (Turn on Power , open terminal , then press the Power Button )&nbsp;
 +
 
 +
SW1003&nbsp;: PWR_Button , SW1002: Reset_Button
 +
 
 +
[[File:ROM-2820 Power Button.jpg|RTENOTITLE]]
 +
 
 +
[[File:ROM-2820 SD bootup.png|RTENOTITLE]]
  
Step5: 複製flash tool到U盤中, 解壓縮flash tools檔案,(copy to USB Disk, then unzip the flash tools file)(Test with 32G SD card)
+
Step6: 複製flash tool到U盤中, 解壓縮flash tools檔案,(copy to USB Disk, then unzip the flash tools file)(Test with 32G SD card)
  
 
&nbsp; &nbsp; 複製檔案到U盤中 (Copy the flash file to USB Disk),&nbsp;解壓縮flash tool到home目錄(Unzip the file to home)
 
&nbsp; &nbsp; 複製檔案到U盤中 (Copy the flash file to USB Disk),&nbsp;解壓縮flash tool到home目錄(Unzip the file to home)
  
#tar zxvf /run/media/New\ Volume-sda/2820A1AIM34LIVC0054_iMX8ULP_1G_flash_tool.tgz -C ~
+
#&nbsp;Format your USB Disk to ext2 format&nbsp;&nbsp;
 +
 
 +
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Command&nbsp;:&nbsp;&nbsp;sudo&nbsp;mkfs.ext2&nbsp;-F&nbsp;/dev/sdX&nbsp;
 +
 
 +
&nbsp; &nbsp; &nbsp; &nbsp;2. Unzip the flash file in your linux system&nbsp;
 +
 
 +
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;[[File:ROM-2820 unzip flashfile.PNG|RTENOTITLE]]
 +
 
 +
&nbsp; &nbsp; &nbsp;3. Copy the flash file into USB DISK&nbsp;
  
&nbsp;
+
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;[[File:ROM-2820 USB DISK FILE.PNG|RTENOTITLE]]
  
5. 進入flsah tool下的mk_inand資歷夾, 執行指令./mksd-linux.sh /dev/mmcblk0燒錄image到eMMC(Connect USB Disk to ROM-2820&nbsp;system, extract the flash tool and browser to mk_inand folder and execute flash shell script "./mksd-linux.sh /dev/mmcblk0"
+
&nbsp; &nbsp; &nbsp;4. 進入flsah tool下的mk_inand資歷夾, 執行指令./mksd-linux.sh /dev/mmcblk0燒錄image到eMMC(Connect USB Disk to ROM-2820&nbsp;system, extract the flash tool and browser to mk_inand folder and execute flash shell script "./mksd-linux.sh /dev/mmcblk0"
  
 
解壓縮後如果沒有mksd-linux.sh檔案, 可以到以下連結下載並複製到mk_inand資料夾下(If there is no mksd-linux.sh file in mk_inand directory. Please download from the link below and place it in mk_inand directory:
 
解壓縮後如果沒有mksd-linux.sh檔案, 可以到以下連結下載並複製到mk_inand資料夾下(If there is no mksd-linux.sh file in mk_inand directory. Please download from the link below and place it in mk_inand directory:
  
[https://github.com/ADVANTECH-Corp/RISC_tools_scripts/blob/kirkstone/imx8/mksd-linux.sh mksd-linux.sh]
+
=== '''下載&nbsp;[https://github.com/ADVANTECH-Corp/RISC_tools_scripts/blob/kirkstone/imx8/mksd-linux.sh mksd-linux.sh]''' ===
  
 
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 
|-
 
|-
| ROM-2820
+
| '''ROM-2820'''
| Device node
+
| '''Device node'''
 
|-
 
|-
| SD card
+
| '''SD card'''
| /dev/mmcblk2
+
| '''/dev/mmcblk1'''
 
|-
 
|-
| eMMC
+
| '''eMMC'''
| /dev/mmcblk0
+
| '''/dev/mmcblk0'''
 
|}
 
|}
  
&nbsp;
+
[[File:ROM-2820 USB DISK FlashEMMC.PNG|RTENOTITLE]]
 +
 
 +
Step 7 . 移除SD card , 切換開機switch來設定成從eMMC開機(Romve SD card and&nbsp; Change boot switch to boot from eMMC. Reboot system).&nbsp;
  
6. 切換開機switch來設定成從eMMC開機(Change boot switch to boot from eMMC. Reboot system).
+
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 +
|-
 +
| SD&nbsp; boot:
 +
| 1 on , 2on
 +
|-
 +
| EMMC&nbsp;boot:
 +
| 1 off , 2 on&nbsp;
 +
|}
  
&nbsp; &nbsp; &nbsp;
+
[[File:ROM-2820 Boot From eMMC.PNG|RTENOTITLE]]
  
 
=== '''Debug 串口調試 (Debug port Setting)''' ===
 
=== '''Debug 串口調試 (Debug port Setting)''' ===
  
以 Tera Term&nbsp;&nbsp;为例介绍如何使用串口调试功能&nbsp;?'"`UNIQ--pre-00000001-QINU`"'?
+
以 Tera Term&nbsp;&nbsp;为例介绍如何使用串口调试功能&nbsp;&nbsp;
  
 
Tera Term Tool&nbsp;
 
Tera Term Tool&nbsp;
Line 320: Line 316:
 
Log into Terminal&nbsp; Tool (进入串口调试终端):
 
Log into Terminal&nbsp; Tool (进入串口调试终端):
  
[[File:ROM-2620 User login.png|RTENOTITLE]]
+
[[File:ROM-2820 DebugMessage.JPG|RTENOTITLE]]
  
&nbsp;
+
= '''Linux系统的基本使用(Linux&nbsp;System Basic Operating Method)''' =
  
= '''Linux系统的基本使用(Linux&nbsp;System Basic Operating Method)''' =
+
=== '''Recovery by UUU Tool&nbsp; 使用方法(Mirco USB Connection (OTG port))''' ===
  
=== '''UUU 使用方法(USB Connection (OTG port))''' ===
+
'''Connect Mirco USB cable to USB OTG port.'''
  
'''Connect USB cable to USB OTG port.'''
+
[[File:ROM-2820 Mirco USB s.JPG|RTENOTITLE]]
  
'''Change boot switch to " " to boot from force recovery mode.'''
+
'''Change boot switch to "SW1001&nbsp;" to boot from force recovery mode.'''
  
&nbsp;
+
[[File:ROM-2820 recovery mode SW1001.jpg|RTENOTITLE]]
  
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
+
{| border="1" cellpadding="1" cellspacing="1" style="width: 287px;"
 
|-
 
|-
| Serial download:
+
| style="width: 114px;" | Serial download:
| &nbsp;
+
| style="width: 160px;" | 1on , 2 off
 
|}
 
|}
  
Line 355: Line 351:
  
 
1. Download uuu
 
1. Download uuu
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">$ wget [https://github.com/nxp-imx/mfgtools/releases/download/uuu_1.4.193/uuu https://github.com/nxp-imx/mfgtools/releases/download/uuu_1.4.193/uuu]<br/> $ chmod a+x uuu<br/> $&nbsp;&nbsp;<br/> $&nbsp;&nbsp;</div>  
+
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">$ wget [https://github.com/nxp-imx/mfgtools/releases/download/uuu_1.4.193/uuu https://github.com/nxp-imx/mfgtools/releases/download/uuu_1.4.193/uuu]<br/> $ chmod a+x uuu<br/> &nbsp;&nbsp;</div>
 +
<span style="tab-stops:152.0pt 152.05pt">Connect OTG to Ubuntu System(x86 PC)&nbsp;&nbsp;, make sure the device was identified</span>
 +
 
 +
[[File:ROM-2820 LsUSB Mirco usb.JPG|RTENOTITLE]]
 +
 
 
Type command below to flash eMMC:
 
Type command below to flash eMMC:
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">$ sudo ./uuu -b emmc_all&nbsp;&nbsp;</div>  
+
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">
[[File:ROM-2620 uuu flash.png|RTENOTITLE]]
+
<span lang="EN-US" style="font-size:10.0pt"># </span><span lang="EN-US" style="font-size:10.0pt">tar -xvzf 2820A1AIM36LIVD0042_iMX93_2G_flash_tool.tgz</span>
 +
 
 +
<span lang="EN-US" style="font-size:10.0pt"># cd 2820A1AIM36LIVD0042_iMX93_2G_flash_tool/image/</span>
 +
 
 +
<span style="line-height:102%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:102%"># sudo ./uuu -b emmc_all imx-image-full-imx93rom2820a1-20240321094239.rootfs.wic</span></span></span>
 +
</div>  
 +
[[File:ROM-2820 UUU flash Done.png|RTENOTITLE]]
 +
 
 +
=== '''Display Setting (ROM-2820)''' ===
 +
 
 +
=== '''LVDS''' ===
 +
 
 +
Single Channel LVDS: G070VW01 (VDD: 3.3V, Backlight Power: 12V)
  
&nbsp;
+
Step 1: Connect G070VW01 LVDS panel with the LVDS cable. Connect this to the LVDS. Connect the Backlight cable to LVDS_BKLT_PWR.<br/> Step 2: Connect another 12V adapter to the DC-Jack on the backlight cable.&nbsp;<br/> Step 3: Power on RSB-2820 and the extra 12V adapter.<br/> Step 4: Press enter after boot. The system will stop at u-boot as demonstrated below, enter the command in red and press enter.
 +
 
 +
[[File:ROM-2820 LVDS setting.jpg|RTENOTITLE]]
  
&nbsp;
+
'''<span style="line-height:120%">(LVDS_BPLT_SLT&nbsp;: 2&3 jumper short)</span>'''
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Normal Boot<br/> Hit any key to stop autoboot: &nbsp;0<br/> => setenv fdtfile imx93-rom2820-a1-lvds.dtb<br/> => saveenv<br/> => boot</div>
 +
=== '''MIPI HDMI'''&nbsp; ===
  
&nbsp;
+
Single Channel MIPI HDMI: (VDD: 3.3V, Backlight Power: 5V)
  
=== '''Display Setting (ROM-2820)''' ===
+
Step 1: Connect another 5V adapter to the DC-Jack on the backlight cable.&nbsp;<br/> Step 2: Power on RSB-2820 and the extra 5V adapter.<br/> Step 3: Press enter after boot. The system will stop at u-boot as demonstrated below, enter the command in red and press enter.
  
'''&nbsp; &nbsp; &nbsp; U-boot&nbsp;Command&nbsp;:'''
+
[[File:ROM-2820 MIPI HDMI setting1.JPG|RTENOTITLE]]
  
*Display
+
'''<span style="line-height:120%">(LVDS_BPLT_SLT&nbsp;: 2&3 jumper short)</span>'''
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">=> setenv fdtfile imx8ulp-rom2820-a1-lt9211.dtb<br/> => saveenv<br/> => boot</div>  
+
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">&nbsp;Normal Boot<br/> Hit any key to stop autoboot: &nbsp;0<br/> => setenv fdtfile imx93-rom2820-a1.dtb<br/> => saveenv<br/> => boot</div>  
[[File:ROM-2620 2CH LVDS uboot.png|RTENOTITLE]]
+
=== '''MIPI DSI''' ===
  
&nbsp;
+
Single Channel LVDS: G101UAN02.0 (VDD: 3.3V, Backlight Power: 12V)<br/> Step 1: Connect G101UAN02.0 LVDS panel with the LVDS cable. Connect this to theLVDS. Connect the Backlight cable to DSI_BKLT_PWR.<br/> Step 2: Connect another 12V adapter to the DC-Jack on the backlight cable.&nbsp;<br/> Step 3: Power on RSB-2820 and the extra 12V adapter.<br/> Step 4: Press enter after boot. The system will stop at u-boot as demonstrated below, enter the command in red and press enter.
  
&nbsp;
+
[[File:ROM-2820 MIPI DSI setting.jpg|RTENOTITLE]]
  
 +
'''(DSI_BKLT_SLT: 2&3 jumper short)'''
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Normal Boot<br/> Hit any key to stop autoboot: &nbsp;0<br/> => setenv fdtfile imx93-rom2820-a1-auog101uan02.dtb<br/> => saveenv<br/> => boot</div>
 
=== '''Audio(Audio Testing Methid)''' ===
 
=== '''Audio(Audio Testing Methid)''' ===
  
Line 491: Line 509:
 
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">&nbsp;#modprobe moal mod_para=nxp/wifi_mod_para.conf</div>  
 
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">&nbsp;#modprobe moal mod_para=nxp/wifi_mod_para.conf</div>  
 
&nbsp;Step3:&nbsp;4G test command.
 
&nbsp;Step3:&nbsp;4G test command.
<pre style="margin: 1.25pt 0cm 0.0001pt 2pt;"><span lang="EN-US" style="font-size:10.0pt"># stty -F /dev/ttyUSB1 speed 115200 -echo</span>
+
<pre style="margin: 1.25pt 0cm 0.0001pt 2pt;"># stty -F /dev/ttyUSB1 speed 115200 -echo
 +
# cat /dev/ttyUSB1 &
 +
# echo "AT+CSQ" > /dev/ttyUSB1
  
<span lang="EN-US" style="font-size:10.0pt"># cat /dev/ttyUSB1 &</span>
+
Console message:
 +
AT+CSQ
  
<span lang="EN-US" style="font-size:10.0pt"># echo "AT+CSQ" > /dev/ttyUSB1</span>
+
+CSQ: 25,99
<span lang="EN-US" style="font-size:10.0pt">Console message:</span>
+
 
<span lang="EN-US" style="font-size:10.0pt">AT+CSQ</span>
+
OK
<span lang="EN-US" style="font-size:10.0pt">+CSQ: 25,99</span>
+
# pppd connect 'chat -v -s -t 10 "" "AT" "" "ATDT*99#" "CONNECT" ""' user username password password /dev/ttyUSB2 460800 nodetach crtscts debug usepeerdns defaultroute &
<span lang="EN-US" style="font-size:10.0pt">OK</span>
+
# ping 8.8.8.8
<span lang="EN-US" style="font-size:10.0pt"># pppd connect 'chat -v -s -t 10 "" "AT" "" "ATDT*99#" "CONNECT" ""' user username password password /dev/ttyUSB2 460800 nodetach crtscts debug usepeerdns defaultroute &</span>
+
64 bytes from 8.8.8.8: icmp_seq=1 ttl=56 time=222 ms</pre>
<span lang="EN-US" style="font-size:10.0pt"># ping 8.8.8.8</span>
 
<span lang="EN-US" style="font-size:10.0pt">64 bytes from 8.8.8.8: icmp_seq=1 ttl=56 time=222 ms</span></pre>
 
  
 
&nbsp;
 
&nbsp;
Line 508: Line 527:
 
=== '''Serial Port測試方法(Serial Testing Method)(COM A/C)''' ===
 
=== '''Serial Port測試方法(Serial Testing Method)(COM A/C)''' ===
  
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
+
==== '''RS-232''' ====
|-
 
| COMA
 
| &nbsp;
 
|-
 
| COMB(M33 Domain)
 
| &nbsp;
 
|-
 
| COMC&nbsp;
 
| &nbsp;
 
|-
 
| COMD&nbsp;
 
| &nbsp;
 
|-
 
| COME_DEBUG
 
| &nbsp;
 
|}
 
  
 
*'''RS-232 Loopback Test (eg. COMA: ttyLP0):'''  
 
*'''RS-232 Loopback Test (eg. COMA: ttyLP0):'''  
Line 536: Line 539:
 
<span lang="EN-US" style="font-size:10.0pt"># echo "Serial Port Test" > /dev/ttyLP4</span>
 
<span lang="EN-US" style="font-size:10.0pt"># echo "Serial Port Test" > /dev/ttyLP4</span>
 
</div>  
 
</div>  
*'''RS-422 Test:'''
+
&nbsp;
  
Step 1: First change ROM-ED91 SW1201 to ‘11’.<br/> Step 2: Test RS-422 with Adam-4520. Connect Adam-4520 with COMA with DB9 as the following:
+
=== '''RS-485''' ===
  
Adam-4520 RX- <-->ROM-2820 COMA DB9 Pin 1,<br/> Adam-4520 RX+ <-->ROM-2820 COMA DB9 Pin 2,<br/> Adam-4520 TX- <-->ROM-2820 COMA DB9 Pin 4,<br/> Adam-4520 TX+ <--> ROM-2820 COMA DB9 Pin 3
+
'''RS-485 Test:'''
 +
 
 +
<span style="line-height:102%">Step 1: Test RS-485 with Adam-4520. Connect Adam-4520 with COMA with DB9 as the following(COMA(ttyLP4)&COMB(ttyLP5))</span>
 +
 
 +
Adam-4520 RX- <-->ROM-2820 COMA DB9 Pin&nbsp; 1,<br/> Adam-4520 RX+ <-->ROM-2820 COMA DB9 Pin&nbsp; 2,<br/> Adam-4520 TX- <-->ROM-2820 COMB&nbsp;DB9 Pin&nbsp; &nbsp;1,<br/> Adam-4520 TX+ <--> ROM-2820 COMB&nbsp;DB9 Pin&nbsp; 2
 +
 
 +
[[File:ROM-2820 RS-485.JPG|RTENOTITLE]]
  
 
Step 3: Run below command:
 
Step 3: Run below command:
 
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># stty -F /dev/ttyLP0 speed 115200 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke<br/> # cat /dev/ttyLP0 &<br/> # echo "Serial Test" > /dev/ttyLP0</div>  
 
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># stty -F /dev/ttyLP0 speed 115200 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke<br/> # cat /dev/ttyLP0 &<br/> # echo "Serial Test" > /dev/ttyLP0</div>  
*'''RS-485 Test:'''
+
Step 2&nbsp;:Create the following file and save it as rs485.sh
 +
<pre style="margin: 0.5pt 0cm 0.0001pt 2.05pt;">#!/bin/sh
  
Step 1: First change ROM-ED91 SW1201 to ‘10’.<br/> Step 2: Test RS-485 with Adam-4520. Connect Adam-4520 with COMA with DB9 as the following:
+
i2cset -y -f 4 0x21 0x00 0x10
 +
i2cset -y -f 4 0x21 0x01 0x01
 +
i2cset -y -f 4 0x21 0x02 0xdf
 +
i2cset -y -f 4 0x21 0x03 0xfd
 +
i2cset -y -f 4 0x21 0x04 0x00
 +
i2cset -y -f 4 0x21 0x05 0x00
 +
i2cset -y -f 4 0x21 0x06 0xcf
 +
i2cset -y -f 4 0x21 0x07 0xfc
 +
</pre>
  
Adam-4520 Data- <-->ROM-2820 COMA DB9 Pin 1,<br/> Adam-4520 Data+ <-->ROM-2820 COMA DB9 Pin 2
+
<span style="line-height:120%">Step 3: Run below command:</span>
 +
<pre style="margin: 0.5pt 0cm 0.0001pt 2.05pt;"># sudo chmod 775 rs485.sh
 +
# ./rs485.sh
 +
# stty -F /dev/ttyLP4 -echo -onlcr 115200
 +
# cat /dev/ttyLP4 &
 +
# echo "Serial Port Test" > /dev/ttyLP4
 +
</pre>
  
Step 3: Run below command:
+
Step 4:&nbsp;<span style="line-height:120%">You need to open two terminals: one to connect to the debug port of the ROM2820, and the other to connect to the Adam-4520.</span>
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># stty -F /dev/ttyLP0 speed 115200 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke<br/> # cat /dev/ttyLP0 &<br/> # echo "Serial Test" > /dev/ttyLP0</div>  
+
 
&nbsp;
+
Step 5:<span style="line-height:120%">You can send data from the ROM2820's debug port to the Adam-4520, and you can also input text from the Adam-4520's terminal using the keyboard so that the ROM2820's debug port can receive it.</span>
 +
 
 +
<span style="line-height:120%">[[File:ROM-2820 485 test.png|RTENOTITLE]]</span>
 +
 
 +
'''I2C測試方法(I2C Testing Method)'''
 +
 
 +
&nbsp;Step 1: Test command
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">
 +
<span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%"># i2cdetect -l</span></span></span>
 +
 
 +
<span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%">i2c-0&nbsp;&nbsp; i2c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 44340000.i2c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I2C adapter</span></span></span>
 +
 
 +
<span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%">i2c-1&nbsp;&nbsp; i2c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 44350000.i2c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;I2C adapter</span></span></span>
  
&nbsp;
+
<span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%">i2c-2&nbsp;&nbsp; i2c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 42530000.i2c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I2C adapter</span></span></span>
  
&nbsp;
+
<span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%">i2c-4&nbsp;&nbsp; i2c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 426b0000.i2c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I2C adapter</span></span></span>
  
=== '''I2C測試方法(I2C Testing Method)''' ===
+
<span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%">i2c-7&nbsp;&nbsp; i2c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 426e0000.i2c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; I2C adapter</span></span></span>
 +
</div>
 +
=== '''RS-422&nbsp;''' ===
  
Step 1: Plug in ROM-EG70<br/> Step 2: Test by below command (eg. I2C-6 I2C_1101):
+
'''RS-422 Test&nbsp;'''
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># modprobe at24<br/> # echo -n $'\x06\x05\x04\x03\x02\x01' > test<br/> # dd if=test of=/sys/bus/i2c/devices/6-0050/eeprom<br/> # hexdump -C /sys/bus/i2c/devices/6-0050/eeprom -n 64</div>  
+
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">#!/bin/sh</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">i2cset -y -f 4 0x21 0x00 0x10</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">i2cset -y -f 4 0x21 0x01 0x01</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">i2cset -y -f 4 0x21 0x02 0xff</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">i2cset -y -f 4 0x21 0x03 0xfd</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">i2cset -y -f 4 0x21 0x04 0x00</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">i2cset -y -f 4 0x21 0x05 0x00</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">i2cset -y -f 4 0x21 0x06 0xcf</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">i2cset -y -f 4 0x21 0x07 0xfc</div>  
 
&nbsp;
 
&nbsp;
  
Line 568: Line 606:
 
=== '''USB測試方法(USB Testing Method)''' ===
 
=== '''USB測試方法(USB Testing Method)''' ===
  
USB disk test (USB 2.0)<br/> Step 1: Issue the following command (lsusb -t) after inserting a USB disk into the USB 2.0 port to check if the USB device is listed. Step 2: Test (eg. if usb disk is /dev/sda)
+
USB disk test (USB 2.0)
<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>  
+
 
&nbsp;
+
<br/> Step 1:Issue the following command (lsusb -t) after inserting a USB disk into the&nbsp;USB 2.0 port to check if the USB device is listed.
 +
 
 +
Step 2:&nbsp;Test (eg. if usb disk is /dev/sda)
 +
<pre style="margin: 0.1pt 0cm 0.0001pt 2.05pt;"># dd if=/dev/urandom of=data bs=1 count=1024
 +
# 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</pre>
  
 
&nbsp;
 
&nbsp;
Line 577: Line 621:
  
 
Step 1: Set system time to current, then write to RTC
 
Step 1: Set system time to current, then write to RTC
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># date 021010452023 && hwclock -w && date</div>  
+
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%">root@imx93rom2820a1:~# date 010100002025 && hwclock -w && date</span></span></span></div>  
 
Step 2: Set one incorrect time, then read time from RTC to verify
 
Step 2: Set one incorrect time, then read time from RTC to verify
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">#&nbsp;date 010100002000 && hwclock -r && date</div>  
+
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%">root@imx93rom2820a1:~# hwclock -r && date</span></span></span></div>  
&nbsp;
+
Step 3:&nbsp;&nbsp;Restore the RTC time to system time
 +
<pre style="margin: 1.35pt 196.45pt 0.0001pt 2.05pt;"> root@imx93rom2820a1:~# date </pre>
  
 
=== '''eMMC/SD測使方法(eMMC/SD Testing Method)''' ===
 
=== '''eMMC/SD測使方法(eMMC/SD Testing Method)''' ===
Line 589: Line 634:
  
 
'''Step 1: Test command:'''
 
'''Step 1: Test command:'''
<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/mmcblk0 of=backup bs=1 count=1024 skip=4096<br/> # dd if=data of=/dev/mmcblk0 bs=1 seek=4096<br/> # dd if=/dev/mmcblk0 of=data1 bs=1 count=1024 skip=4096<br/> # diff data data1<br/> # dd if=backup of=/dev/mmcblk0 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/mmcblk0 of=backup bs=1 count=1024 skip=4096<br/> # dd if=data of=/dev/mmcblk0 bs=1 seek=4096<br/> # dd if=/dev/mmcblk0 of=data1 bs=1 count=1024 skip=4096<br/> # diff data data1<br/> # dd if=backup of=/dev/mmcblk0 bs=1 seek=4096</div>  
 
&nbsp;
 
&nbsp;
  
Line 596: Line 641:
 
'''Command&nbsp;: ifconfig&nbsp;'''
 
'''Command&nbsp;: ifconfig&nbsp;'''
  
&nbsp;
+
[[File:ROM-2820 Eth test.JPG|RTENOTITLE]]
  
 
'''Command: Ping - I eth1 8.8.8.8&nbsp; or Ping - I eth0 8.8.8.8&nbsp;&nbsp;'''
 
'''Command: Ping - I eth1 8.8.8.8&nbsp; or Ping - I eth0 8.8.8.8&nbsp;&nbsp;'''
  
&nbsp;
+
[[File:ROM-2820 Eth0 test.JPG|RTENOTITLE]]
 
 
&nbsp;
 
 
 
&nbsp;
 
  
 
=== '''GPIO使用方法(GPIO Operating Method)''' ===
 
=== '''GPIO使用方法(GPIO Operating Method)''' ===
Line 612: Line 653:
 
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;"
 
|-
 
|-
| GPIO1101 pin
+
| CPU pin to GPIO
| Pin Name
+
| GPIO 1101
| CPU Ball Name
+
| Number
| GPIO number
 
 
|-
 
|-
 +
| GPIO1(shared pin)
 
| 1
 
| 1
| GPIO_A_0
+
| 496
| PTC0
 
| 416
 
 
|-
 
|-
 +
| GPIO2
 
| 2
 
| 2
| GPIO_A_1
+
| 497
| PTC1
 
| 417
 
 
|-
 
|-
 +
| GPIO3
 
| 3
 
| 3
| GPIO_A_2
+
| 498
| PTC2
 
| 418
 
 
|-
 
|-
 +
| GPIO4
 
| 4
 
| 4
| GPIO_A_3
+
| 499
| PTC3
 
| 419
 
 
|-
 
|-
 +
| GPIO5
 
| 5
 
| 5
| GPIO_A_4
+
| 500
| PTC4
 
| 420
 
 
|-
 
|-
 +
| GPIO6
 
| 6
 
| 6
| GPIO_A_5
+
| 501
| PTC12
 
| 428
 
 
|-
 
|-
 +
| GPIO7
 
| 7
 
| 7
| GPIO_B_0
+
| 502
| PTC18
 
| 434
 
 
|-
 
|-
 +
| GPIO8
 
| 8
 
| 8
| GPIO_B_1
+
| 503
| PTC19
 
| 435
 
 
|-
 
|-
 +
| GPIO9
 
| 9
 
| 9
| GPIO_B_2
+
| 504
| PTC20
 
| 436
 
 
|-
 
|-
 +
| GPIO10
 
| 10
 
| 10
| GPIO_B_3
+
| 505
| PTC21
 
| 437(Use for M2_SDIO_RST)
 
 
|-
 
|-
 +
| GPIO11
 
| 11
 
| 11
| GPIO_B_4
+
| 506
| PTC22
 
| 438(Use for M2_W_DISABLE2)
 
 
|-
 
|-
 +
| GPIO12
 
| 12
 
| 12
| GPIO_B_5
+
| 507
| PTC23
 
| 439(Use for M2_W_DISABLE1)
 
|-
 
| 13
 
| GPIO_B_6
 
| PTB0
 
| 448
 
|-
 
| 14
 
| GPIO_B_7
 
| PTB1
 
| 449
 
|-
 
| 15
 
| GPIO_C_0
 
| PTD12
 
| 140
 
|-
 
| 16
 
| GPIO_C_1
 
| PTD13
 
| 141
 
|-
 
| 17
 
| GPIO_C_2
 
| PTF1
 
| 193
 
|-
 
| 18
 
| GPIO_C_3
 
| PTF7
 
| 199(Use for LVDS_Bridge_RST)
 
|-
 
| 19
 
| PTB6
 
| PTB6
 
| 454
 
|-
 
| 20
 
| PTA5
 
| PTA5
 
| 485
 
 
|}
 
|}
  
GPIO Loopback Test (Using GPIO1 and GPIO2 as examples)
+
GPIO loop test:
 +
<pre>Connect GPIO pin#3 and GPIO pin#4
  
Step 1: Connect GPIO1 and GPIO2
+
root@imx93rom2820a1:/# echo 498 > /sys/class/gpio/export
  
Step 2: Export GPIO interface
+
root@imx93rom2820a1:/# echo 499 > /sys/class/gpio/export
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># echo 416 > /sys/class/gpio/export<br/> # echo 417 > /sys/class/gpio/export</div>
 
Step 3: Set GPIO direction
 
<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
 
<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>
 
=== '''Camera使用方法(Camera Testing Method)''' ===
 
  
MIPI-CSI0 (Tested with OV5640 + mini-SAS to MIPI-CSI Cable): OV5640 CSI (CN701): Connect OV5640 camera to EG-55 CAM3
+
root@imx93rom2820a1:/# echo out > /sys/class/gpio/gpio498/direction
  
Step 1: Take pictures
+
root@imx93rom2820a1:/# echo in  > /sys/class/gpio/gpio499/direction
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># 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</div>
 
Step 2: View on panel
 
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># gplay-1.0 sample.jpeg</div>
 
&nbsp;
 
  
=== '''PWM測試方法(PWM Testing Method)''' ===
+
root@imx93rom2820a1:/#cat /sys/class/gpio/gpio498/value
  
Please use oscilloscope to check waveform.
+
0
  
PWM1:
+
root@imx93rom2820a1:/# echo 1 > /sys/class/gpio/gpio498/value
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># echo 4 > /sys/class/pwm/pwmchip0/export<br/> # echo 1000000 > /sys/class/pwm/pwmchip0/pwm4/period<br/> # echo 500000 > /sys/class/pwm/pwmchip0/pwm4/duty_cycle<br/> # echo 1 > /sys/class/pwm/pwmchip0/pwm4/enable</div>
 
PWM2:
 
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># echo 5 > /sys/class/pwm/pwmchip6/export<br/> # echo 1000000 > /sys/class/pwm/pwmchip6/pwm5/period<br/> # echo 500000 > /sys/class/pwm/pwmchip6/pwm5/duty_cycle<br/> # echo 1 > /sys/class/pwm/pwmchip6/pwm5/enable</div>
 
PWM3:
 
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># echo 2 > /sys/class/pwm/pwmchip6/export<br/> # echo 1000000 > /sys/class/pwm/pwmchip6/pwm2/period<br/> # echo 500000 > /sys/class/pwm/pwmchip6/pwm2/duty_cycle<br/> # echo 1 > /sys/class/pwm/pwmchip6/pwm2/enable</div>
 
PWM4:
 
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># echo 3 > /sys/class/pwm/pwmchip6/export<br/> # echo 1000000 > /sys/class/pwm/pwmchip6/pwm3/period<br/> # echo 500000 > /sys/class/pwm/pwmchip6/pwm3/duty_cycle<br/> # echo 1 > /sys/class/pwm/pwmchip6/pwm3/enable</div>
 
PWM5:
 
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># echo 4 > /sys/class/pwm/pwmchip6/export<br/> # echo 1000000 > /sys/class/pwm/pwmchip6/pwm4/period<br/> # echo 500000 > /sys/class/pwm/pwmchip6/pwm4/duty_cycle<br/> # echo 1 > /sys/class/pwm/pwmchip6/pwm4/enable</div>
 
'''&nbsp;'''
 
  
&nbsp;
+
root@imx93rom2820a1:/# cat /sys/class/gpio/gpio498/value
  
==== '''CAN Bus''' ====
+
1</pre>
  
'''Step 1: Prepare two pcs rom-2820. One for ‘Node A’ one for ‘Node B’<br/> Step 2: Connect these two boards (HI-HI/LO-LO)<br/> Step 3: The test steps and screen are as below&nbsp;:'''
+
[[File:ROM-2820 GPIO 3 4.png|RTENOTITLE]]
 +
<pre>Connect GPIO pin#5 and GPIO pin #6
  
&nbsp;
+
root@imx93rom2820a1:/# echo 500 > /sys/class/gpio/export
  
&nbsp;
+
root@imx93rom2820a1:/# echo 501 > /sys/class/gpio/export
  
&nbsp;
+
root@imx93rom2820a1:/# echo out > /sys/class/gpio/gpio500/direction
  
==== '''LPUART''' ====
+
root@imx93rom2820a1:/# echo in  > /sys/class/gpio/gpio501/direction
  
Step 1: Change ROM-ED91 SW1203 to '01'.<br/> Step 2: Connect COM-B and COM-E to PC.<br/> Step 3: Set RTS/CTS flow control for COM-B in Putty.exe
+
root@imx93rom2820a1:/# cat /sys/class/gpio/gpio500/value
  
[[File:ROM-2620 M33 COMB.png|RTENOTITLE]]
+
0
  
Step 4: After select the test mode ‘U’ to verify LPUART2, you will see below screen.
+
root@imx93rom2820a1:/# echo 1 > /sys/class/gpio/gpio500/value
  
&nbsp;
+
root@imx93rom2820a1:/# cat /sys/class/gpio/gpio501/value
  
Step 5: If tester can input any characters/strings and show that at COM-B means test successful.
+
1</pre>
  
=== '''遠程訪問及文件傳輸(Remote Access and File Transimmion)''' ===
+
[[File:ROM-2820 GPIO 5 6.png|RTENOTITLE]]
 +
<pre>Connect GPIO pin#7 and GPIO pin#8
  
'''&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 查看主板IP位址&nbsp;(&nbsp;Chech IP Address ):'''​&nbsp;?'"`UNIQ--pre-00000002-QINU`"'?
+
root@imx93rom2820a1:/# echo 502 > /sys/class/gpio/export
  
&nbsp;
+
root@imx93rom2820a1:/# echo 503 > /sys/class/gpio/export
  
==== SSH访问及文件传输 ====
+
root@imx93rom2820a1:/# echo out > /sys/class/gpio/gpio502/direction
  
SSH Remote Log into Device&nbsp;
+
root@imx93rom2820a1:/# echo in  > /sys/class/gpio/gpio503/direction
  
*SSH远程登录,以putty选择putty.exe(或者使用Xshell、SecureCRT等类似软件)
+
root@imx93rom2820a1:/# cat /sys/class/gpio/gpio502/value
*需要设置远程设备的IP、通讯端口(默认22)、通讯方式,登录后验证用户名密码
 
  
[[File:ROM-2620 SSH.png|RTENOTITLE]]
+
0
  
= '''通用方法(General Method)''' =
+
root@imx93rom2820a1:/# echo 1 > /sys/class/gpio/gpio502/value
  
=== '''查看CPU温度(Check CPU Temperature)''' ===
+
root@imx93rom2820a1:/# cat /sys/class/gpio/gpio503/value
  
?'"`UNIQ--pre-00000003-QINU`"'?
+
1</pre>
  
=== '''查看内存容量(Check Memory&nbsp;Capacity)''' ===
+
[[File:ROM-2820 GPIO 7 8.png|RTENOTITLE]]
 +
<pre>Connect GPIO pin#9 and GPIO pin#10
  
?'"`UNIQ--pre-00000004-QINU`"'?
+
root@imx93rom2820a1:/# echo 504 > /sys/class/gpio/export
  
=== '''查看存储容量(Check Storage Capacity)''' ===
+
root@imx93rom2820a1:/# echo 505 > /sys/class/gpio/export
  
?'"`UNIQ--pre-00000005-QINU`"'?
+
root@imx93rom2820a1:/# echo out > /sys/class/gpio/gpio504/direction
  
&nbsp;
+
root@imx93rom2820a1:/# echo in  > /sys/class/gpio/gpio505/direction
  
 +
root@imx93rom2820a1:/# cat /sys/class/gpio/gpio504/value
  
 +
0
  
=== '''設置RTC (RTC Setting)&nbsp;''' ===
+
root@imx93rom2820a1:/# echo 1 > /sys/class/gpio/gpio504/value
  
查看系統時間 (Check the system)&nbsp;
+
root@imx93rom2820a1:/# cat /sys/class/gpio/gpio505/value
  
root@imx8ulprom2820a1:/# timedatectl<br/> [ &nbsp; 41.402592] kauditd_printk_skb: 6 callbacks suppressed<br/> [ &nbsp; 41.402611] audit: type=1334 audit(45.332:16): prog-id=15 op=LOAD<br/> [ &nbsp; 41.417884] audit: type=1334 audit(45.344:17): prog-id=16 op=LOAD<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Local time: Thu 1970-01-01 00:00:46 UTC<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Universal time: Thu 1970-01-01 00:00:46 UTC&nbsp; &nbsp; &nbsp;&nbsp;<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;RTC time: Thu 1970-01-01 00:00:45&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <-----&nbsp;&nbsp;Real-Time Clock,RTC&nbsp;<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Time zone: Universal (UTC, +0000)&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <------&nbsp;Time zone&nbsp;目前<br/> System clock synchronized: no<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; NTP service: active<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RTC in local TZ: no&nbsp; '''&nbsp; &nbsp; &nbsp; &nbsp;'''
+
1</pre>
  
Note&nbsp;:&nbsp;
+
[[File:ROM-2820 GPIO 9 10-1.png|RTENOTITLE]]
 +
<pre>Connect GPIO pin#11 and GPIO pin#12
  
Change Time Zone&nbsp;
+
root@imx93rom2820a1:/# echo 506 > /sys/class/gpio/export
  
<code data-highlighted="yes">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Local time: Fri 2024-05-03 09:07:42 CST<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Universal time: Fri 2024-05-03 01:07:42 UTC<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RTC time: Fri 2024-05-03 09:07:42<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Time zone: Asia/Taipei (CST, +0800)<br/> System clock synchronized: yes<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; NTP service: active<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RTC in local TZ: yes</code>
+
root@imx93rom2820a1:/# echo 507 > /sys/class/gpio/export
  
Time Zone List&nbsp;
+
root@imx93rom2820a1:/# echo out > /sys/class/gpio/gpio506/direction
  
&nbsp;
+
root@imx93rom2820a1:/# echo in  > /sys/class/gpio/gpio507/direction
  
$ sudo timedatectl list-timezones
+
root@imx93rom2820a1:/# cat /sys/class/gpio/gpio507/value
  
Africa/Abidjan
+
0
  
Africa/Accra
+
root@imx93rom2820a1:/# echo 1 > /sys/class/gpio/gpio506/value
  
Africa/Addis_Ababa
+
root@imx93rom2820a1:/# cat /sys/class/gpio/gpio507/value
  
Africa/Algiers
+
1</pre>
  
Africa/Asmara
+
[[File:ROM-2820 GPIO 11 12-1.png|RTENOTITLE]]
  
Africa/Bamako
+
=== '''Camera使用方法(Camera Testing Method)''' ===
  
Africa/Bangui
+
MIPI-CSI0 (Tested with OV5640 + mini-SAS to MIPI-CSI Cable): OV5640 CSI (CN701): Connect OV5640 camera to EG-55 CAM3
  
Africa/Banjul
+
Step 1: Take pictures
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># 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</div>
 +
Step 2: View on panel
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># gplay-1.0 sample.jpeg</div>
 +
&nbsp;
  
Africa/Bissau
+
=== '''PWM測試方法(PWM Testing Method)''' ===
  
Africa/Blantyre
+
TBD
  
Africa/Brazzaville
+
&nbsp;
  
Africa/Bujumbura
+
=== '''CAN Bus''' ===
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><span style="tab-stops:127.55pt"><span lang="EN-US" style="letter-spacing:-.2pt">Step 1: Connect can1 and can2</span></span></div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><span style="tab-stops:127.55pt"><span lang="EN-US" style="letter-spacing:-.2pt">Step 2 </span>Test command</span></div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%"># ip link set can0 up type can bitrate 125000</span></span></span></div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%"># ip link set can1 up type can bitrate 125000</span></span></span></div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%"># candump can1 &</span></span></span></div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%"># cansend can0 12345678#123412341234</span></span></span></div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%">The following shows the result</span></span></span></div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><span style="line-height:103%"><span lang="EN-US" style="font-size:10.0pt"><span style="line-height:103%">can1&nbsp; 12345678&nbsp;&nbsp; [6]&nbsp; 12 34 12 34 12 34</span></span></span></div>
 +
[[File:ROM-2820 CAN BUS.png|RTENOTITLE]]
  
Africa/Cairo
+
= '''通用方法(General Method)''' =
  
Africa/Casablanca
+
=== '''查看CPU温度(Check CPU Temperature)''' ===
<div id="gtx-trans" style="position: absolute; left: 121px; top: 381.057px;"><div class="gtx-trans-icon">&nbsp;</div> </div>
+
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">root@imx93rom2820a1:/home# cat /sys/devices/virtual/thermal/thermal_zone0/temp<br/> 39850<br/> root@imx93rom2820a1:/home#</div>
 +
=== '''查看内存容量(Check Memory&nbsp;Capacity)''' ===
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">root@imx93rom2820a1:/home# free -h<br/> &nbsp; &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<br/> Mem: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 1.9Gi &nbsp; &nbsp; &nbsp; 197Mi &nbsp; &nbsp; &nbsp; 1.6Gi &nbsp; &nbsp; &nbsp; 9.6Mi &nbsp; &nbsp; &nbsp; 215Mi &nbsp; &nbsp; &nbsp; 1.7Gi<br/> Swap: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 0B &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0B &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0B<br/> root@imx93rom2820a1:/home#</div>  
 +
=== '''查看存储容量(Check Storage Capacity)''' ===
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">root@imx93rom2820a1:/home# df -hT<br/> Filesystem &nbsp; &nbsp; Type &nbsp; &nbsp; &nbsp;Size &nbsp;Used Avail Use% Mounted on<br/> /dev/root &nbsp; &nbsp; &nbsp;ext4 &nbsp; &nbsp; &nbsp;6.1G &nbsp;3.5G &nbsp;2.4G &nbsp;60% /<br/> devtmpfs &nbsp; &nbsp; &nbsp; devtmpfs &nbsp;716M &nbsp;4.0K &nbsp;716M &nbsp; 1% /dev<br/> tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;tmpfs &nbsp; &nbsp; 973M &nbsp; &nbsp; 0 &nbsp;973M &nbsp; 0% /dev/shm<br/> tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;tmpfs &nbsp; &nbsp; 390M &nbsp;9.5M &nbsp;380M &nbsp; 3% /run<br/> tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;tmpfs &nbsp; &nbsp; 4.0M &nbsp; &nbsp; 0 &nbsp;4.0M &nbsp; 0% /sys/fs/cgroup<br/> tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;tmpfs &nbsp; &nbsp; 973M &nbsp;4.0K &nbsp;973M &nbsp; 1% /tmp<br/> tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;tmpfs &nbsp; &nbsp; 973M &nbsp;196K &nbsp;973M &nbsp; 1% /var/volatile<br/> /dev/mmcblk0p1 vfat &nbsp; &nbsp; &nbsp; 84M &nbsp; 33M &nbsp; 51M &nbsp;39% /run/media/boot-mmcblk0p1<br/> tmpfs &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;tmpfs &nbsp; &nbsp; 195M &nbsp; &nbsp; 0 &nbsp;195M &nbsp; 0% /run/user/0<br/> root@imx93rom2820a1:/home#</div>  
 +
'''設置RTC (RTC Setting)&nbsp;'''
  
 +
查看系統時間 (Check the system)&nbsp;
 +
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">root@imx8ulprom2820a1:/# timedatectl<br/> [ &nbsp; 41.402592] kauditd_printk_skb: 6 callbacks suppressed<br/> [ &nbsp; 41.402611] audit: type=1334 audit(45.332:16): prog-id=15 op=LOAD<br/> [ &nbsp; 41.417884] audit: type=1334 audit(45.344:17): prog-id=16 op=LOAD<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Local time: Thu 1970-01-01 00:00:46 UTC<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Universal time: Thu 1970-01-01 00:00:46 UTC&nbsp; &nbsp; &nbsp;&nbsp;<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;RTC time: Thu 1970-01-01 00:00:45&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <-----&nbsp;&nbsp;Real-Time Clock,RTC&nbsp;<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Time zone: Universal (UTC, +0000)&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <------&nbsp;Time zone&nbsp;目前<br/> System clock synchronized: no<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; NTP service: active<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RTC in local TZ: no&nbsp; '''&nbsp; &nbsp; &nbsp; &nbsp;'''</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Note&nbsp;:&nbsp;</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Change Time Zone&nbsp;</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"><code data-highlighted="yes">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Local time: Fri 2024-05-03 09:07:42 CST<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Universal time: Fri 2024-05-03 01:07:42 UTC<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RTC time: Fri 2024-05-03 09:07:42<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Time zone: Asia/Taipei (CST, +0800)<br/> System clock synchronized: yes<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; NTP service: active<br/> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RTC in local TZ: yes</code></div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Time Zone List&nbsp;</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">&nbsp;</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">$ sudo timedatectl list-timezones</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Abidjan</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Accra</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Addis_Ababa</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Algiers</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Asmara</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Bamako</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Bangui</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Banjul</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Bissau</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Blantyre</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Brazzaville</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Bujumbura</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Cairo</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">Africa/Casablanca</div>
 
= '''Linux&nbsp;BSP編譯方法(Linux&nbsp;BSP Compile Method)''' =
 
= '''Linux&nbsp;BSP編譯方法(Linux&nbsp;BSP Compile Method)''' =
  
 
=== '''[https://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX8/Yocto_LBVD_User_Guide Yocto 4.2]''' ===
 
=== '''[https://ess-wiki.advantech.com.tw/view/IoTGateway/BSP/Linux/iMX8/Yocto_LBVD_User_Guide Yocto 4.2]''' ===
<div id="gtx-trans" style="position: absolute; left: 36px; top: 18701.3px;"><div class="gtx-trans-icon">&nbsp;</div> </div>
 

Latest revision as of 08:46, 2 July 2024

Contents

產品介紹

產品特性(Features)

  • NXP i.MX 93 Cortex-A55 Dual-core (up to 1.7GHz)
  • 1 x Arm Cortex-M33 core
  • 1 x Ethos®-U65 microNPU
  • 1 x 2GB LPDDR4X up to 3733MT/s
  • 1 x 4 lane MIPI-DSI
  • 2 x USB 2.0, 5 x UART, 4 x I2C, 16 x GPIO, 2 x PWM, 2 x CAN-FD 
  • Compact size form factor - OSM Size L (45 x 45 mm)
  • Support Ycoto Linux

 

產品官網連結(Product information Link)

ROM-2820

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

ROM-2820 接口布局圖 Board Dimension Layout 

RTENOTITLE       RTENOTITLE

 

ROM-ED93 接口布局圖 Board Dimension Layout

 RTENOTITLE

主板内置插针式引脚排序方式 (Pin Header defination) 

Internal I/O, Jummper/Switch List:

Position Description
AT801 AT/ATX select header
AUDIO1 Line Out Connector
BAT601 Battery Connector
CN1301 Camera FPC connector
CN1801 CANA terminal resistor enable jumper
CN1802 CANB terminal resistor enable jumper
CANA CAN Bus Connector
CANB CAN Bus Connector
COMA RS232/422/485
COMB RS232/422/485
COMC COM A port wafer
COMD COM D port wafer
COME_DEBUG Debug console wafer
CN1601 RJ45 1x2
DCIN701 12V DCIN connector
DSI DSI connector
DSI_BKLT_PWR DSI blacklight wafer
DSI_BKLT_SLT DSI blacklight power select
DSI_VDD_SLT DSI VDD power select
GPIO GPIO header
I2S_CN Audio expander pin header
LVDS LVDS connector
LVDS_BKLT_PWR LVDS blacklight wafer
LVDS_BKLT_SLT LVDS blacklight power select
LVDS_VDD_SLT LVDS VDD power select
M2B_CN M2 Key B connector
M2E_CN M2 Key E connector
MIC MIC Connector
SD_CARD Micro SD slot
SD2001 SDIO device select jumper
SD2002 SDIO device select jumper
SD2003 SDIO device select jumper
SD2005 SDIO device select jumper
SD2004 SDIO device select jumper
SD2006 SDIO device select jumper
SIM SIM card connector
SPI SPI pin header
SW1001 Boot select switch
SW1002 Reset button
SW1003 Power button
SW1104 COMA UART setting switch
SW1103 COMB UART setting switch
USB1201 USB2.0 2x1 Connector
USB0_OTG1 Micro USB Connector

RTENOTITLE

RTENOTITLE

RTENOTITLE

快速入門 (Quick Start)

系统下载 (OS Download)

  • 'Linux系统 (Linux OS)'   

Yocto 4.2: IoTGateway/BSP/Linux/iMX8/OS Support List 4.2 release ROM-2820 - ESS-WIKI (advantech.com.tw) 

 

Linux 燒錄方法 (Linux Flash eMMC Method)

使用Flash tool 燒錄鏡像到eMMC (Flash image into eMMC by Flash Tools) 

Step0: 檢查SD卡在Linux 環境的代號 (check SD card symbol in Linux system) 

RTENOTITLE

Step1: 創造一張可開機的SD 卡 (Create a bootable SD card)

Command :

sudo dd if=2820A1AIM36LIVD0042_iMX93_2G_2024-05-26.img of=/dev/sdh bs=1M conv=fsync
RTENOTITLE

Step2: 將可開機的SD 卡插入底板SD卡卡槽(Plug the SD card into Carrier board 's SD card slot)

Step3: 確認開機選擇指撥開關

SD  boot: 1 on , 2on
EMMC boot: 1 off , 2 on 

AT/ATX mode Jumper 

AT mode 2&3
ATX mode 1&2

RTENOTITLE

System ID : root

Password : 12345678

Step4:打開電源 和 終端機 (Turn on the Power & Terminal)

RTENOTITLE

RTENOTITLE

Step 5:  按下Power 開關 (Turn on Power , open terminal , then press the Power Button ) 

SW1003 : PWR_Button , SW1002: Reset_Button

RTENOTITLE

RTENOTITLE

Step6: 複製flash tool到U盤中, 解壓縮flash tools檔案,(copy to USB Disk, then unzip the flash tools file)(Test with 32G SD card)

    複製檔案到U盤中 (Copy the flash file to USB Disk), 解壓縮flash tool到home目錄(Unzip the file to home)

  1.  Format your USB Disk to ext2 format  

            Command :  sudo mkfs.ext2 -F /dev/sdX 

       2. Unzip the flash file in your linux system 

           RTENOTITLE

     3. Copy the flash file into USB DISK 

          RTENOTITLE

     4. 進入flsah tool下的mk_inand資歷夾, 執行指令./mksd-linux.sh /dev/mmcblk0燒錄image到eMMC(Connect USB Disk to ROM-2820 system, extract the flash tool and browser to mk_inand folder and execute flash shell script "./mksd-linux.sh /dev/mmcblk0"

解壓縮後如果沒有mksd-linux.sh檔案, 可以到以下連結下載並複製到mk_inand資料夾下(If there is no mksd-linux.sh file in mk_inand directory. Please download from the link below and place it in mk_inand directory:

下載 mksd-linux.sh

ROM-2820 Device node
SD card /dev/mmcblk1
eMMC /dev/mmcblk0

RTENOTITLE

Step 7 . 移除SD card , 切換開機switch來設定成從eMMC開機(Romve SD card and  Change boot switch to boot from eMMC. Reboot system). 

SD  boot: 1 on , 2on
EMMC boot: 1 off , 2 on 

RTENOTITLE

Debug 串口調試 (Debug port Setting)

以 Tera Term  为例介绍如何使用串口调试功能  

Tera Term Tool 

RTENOTITLE

RTENOTITLE

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

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

RTENOTITLE

Debug port connection (串口連接) 

Log into Terminal  Tool (进入串口调试终端):

RTENOTITLE

Linux系统的基本使用(Linux System Basic Operating Method)

Recovery by UUU Tool  使用方法(Mirco USB Connection (OTG port))

Connect Mirco USB cable to USB OTG port.

RTENOTITLE

Change boot switch to "SW1001 " to boot from force recovery mode.

RTENOTITLE

Serial download: 1on , 2 off

 

Download uuu tool from link below:

Releases · nxp-imx/mfgtools (github.com)

The uuu verison we tested is 1.4.193: uuu

uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.193-0-ge56424c

Perpare uboot and image files below:

 

1. Download uuu

$ wget https://github.com/nxp-imx/mfgtools/releases/download/uuu_1.4.193/uuu
$ chmod a+x uuu
  

Connect OTG to Ubuntu System(x86 PC)  , make sure the device was identified

RTENOTITLE

Type command below to flash eMMC:

# tar -xvzf 2820A1AIM36LIVD0042_iMX93_2G_flash_tool.tgz

# cd 2820A1AIM36LIVD0042_iMX93_2G_flash_tool/image/

# sudo ./uuu -b emmc_all imx-image-full-imx93rom2820a1-20240321094239.rootfs.wic

RTENOTITLE

Display Setting (ROM-2820)

LVDS

Single Channel LVDS: G070VW01 (VDD: 3.3V, Backlight Power: 12V)

Step 1: Connect G070VW01 LVDS panel with the LVDS cable. Connect this to the LVDS. Connect the Backlight cable to LVDS_BKLT_PWR.
Step 2: Connect another 12V adapter to the DC-Jack on the backlight cable. 
Step 3: Power on RSB-2820 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.

RTENOTITLE

(LVDS_BPLT_SLT : 2&3 jumper short)

Normal Boot
Hit any key to stop autoboot:  0
=> setenv fdtfile imx93-rom2820-a1-lvds.dtb
=> saveenv
=> boot

MIPI HDMI 

Single Channel MIPI HDMI: (VDD: 3.3V, Backlight Power: 5V)

Step 1: Connect another 5V adapter to the DC-Jack on the backlight cable. 
Step 2: Power on RSB-2820 and the extra 5V adapter.
Step 3: Press enter after boot. The system will stop at u-boot as demonstrated below, enter the command in red and press enter.

RTENOTITLE

(LVDS_BPLT_SLT : 2&3 jumper short)

 Normal Boot
Hit any key to stop autoboot:  0
=> setenv fdtfile imx93-rom2820-a1.dtb
=> saveenv
=> boot

MIPI DSI

Single Channel LVDS: G101UAN02.0 (VDD: 3.3V, Backlight Power: 12V)
Step 1: Connect G101UAN02.0 LVDS panel with the LVDS cable. Connect this to theLVDS. Connect the Backlight cable to DSI_BKLT_PWR.
Step 2: Connect another 12V adapter to the DC-Jack on the backlight cable. 
Step 3: Power on RSB-2820 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.

RTENOTITLE

(DSI_BKLT_SLT: 2&3 jumper short)

Normal Boot
Hit any key to stop autoboot:  0
=> setenv fdtfile imx93-rom2820-a1-auog101uan02.dtb
=> saveenv
=> boot

Audio(Audio Testing Methid)

Step 1: Check audio codec

# cat /proc/asound/cards

0 [sgtl5000       ]: sgtl5000 - sgtl5000 sgtl5000

 

 

Step 2: Audio codec (sgtl5000):

  1. Set MIC and headphone:

# amixer set Mic 100%

# amixer set Headphone 100%

Record and playback:

#  

Record

# arecord -D plughw:0,0 -r 16000 -f S16_LE ./f-16000.wav

Playback

# aplay -D plughw:0,0 f-16000.wav

 

M.2 WiFi/BT測試方法(M.2 WiFi/BT Testing Method)

  • Test Wi-Fi with  NXP IW-612 Module (SDIO Interface)

Step 1: Switch jumper SD2001~SD2006(2&3 jumper short)

RTENOTITLE

Step 2: Press enter after boot. The system will stop at u-boot, and change dtb file by below command.

# setenv fdtfile imx93-rom2820-a1-m2-sdio.dtb

# saveenv

# boot

RTENOTITLE

Step 3: Install driver by below command.

# modprobe moal mod_para=nxp/wifi_mod_para.conf

RTENOTITLE

Step 4: WIFI test command.

#ifconfig mlan0 up

#wpa_passphrase ${SSID} ${PASSWORD} > /tmp/wpa.conf

#wpa_supplicant -BDwext -imlan0 -c/tmp/wpa.conf

#udhcpc -b -i mlan0

RTENOTITLE

RTENOTITLE

Test Bluetooth with NXP IW-612 Module (UART Interface):

Step 1: Please refer to the 3.3.1 step 1.

Step 2: Please refer to the 3.3.1 step 2.

Step 3: Please refer to the 3.3.1 step 3.

Step 4: Bluetooth test command.

# modprobe btnxpuart

# hciconfig hci0 up

# bluetoothctl

# discoverable on

# pairable on

# scan on

 [NEW] FC:18:3C:8D:75:F4 myphone

# scan off

# pair FC:18:3C:8D:75:F4

# connect FC:18:3C:8D:75:F4

  • Test 4G with EWM-C401CQE01 Module (UART Interface)

Step1 :You need to connect two antennas.

Step2 : Uboot command 

  1. setenv fdtfile imx93-rom2820-a1-m2-sdio.dtb
  1. saveenv
  1. reset

Step 2: Install driver by below command.

 #modprobe moal mod_para=nxp/wifi_mod_para.conf

 Step3: 4G test command.

# stty -F /dev/ttyUSB1 speed 115200 -echo
# cat /dev/ttyUSB1 &
# echo "AT+CSQ" > /dev/ttyUSB1

Console message:
AT+CSQ

+CSQ: 25,99

OK
# pppd connect 'chat -v -s -t 10 "" "AT" "" "ATDT*99#" "CONNECT" ""' user username password password /dev/ttyUSB2 460800 nodetach crtscts debug usepeerdns defaultroute &
# ping 8.8.8.8
64 bytes from 8.8.8.8: icmp_seq=1 ttl=56 time=222 ms

 

Serial Port測試方法(Serial Testing Method)(COM A/C)

RS-232

  • RS-232 Loopback Test (eg. COMA: ttyLP0):

Step 1:. Connect loopback with COMA(ttyLP4)&COMB(ttyLP5)
Step 2: Run test command.

# stty -F /dev/ttyLP4 -echo -onlcr 115200

# cat /dev/ttyLP4 &

# echo "Serial Port Test" > /dev/ttyLP4

 

RS-485

RS-485 Test:

Step 1: Test RS-485 with Adam-4520. Connect Adam-4520 with COMA with DB9 as the following(COMA(ttyLP4)&COMB(ttyLP5))

Adam-4520 RX- <-->ROM-2820 COMA DB9 Pin  1,
Adam-4520 RX+ <-->ROM-2820 COMA DB9 Pin  2,
Adam-4520 TX- <-->ROM-2820 COMB DB9 Pin   1,
Adam-4520 TX+ <--> ROM-2820 COMB DB9 Pin  2

RTENOTITLE

Step 3: Run below command:

# stty -F /dev/ttyLP0 speed 115200 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke
# cat /dev/ttyLP0 &
# echo "Serial Test" > /dev/ttyLP0

Step 2 :Create the following file and save it as rs485.sh

#!/bin/sh

i2cset -y -f 4 0x21 0x00 0x10
i2cset -y -f 4 0x21 0x01 0x01
i2cset -y -f 4 0x21 0x02 0xdf
i2cset -y -f 4 0x21 0x03 0xfd
i2cset -y -f 4 0x21 0x04 0x00
i2cset -y -f 4 0x21 0x05 0x00
i2cset -y -f 4 0x21 0x06 0xcf
i2cset -y -f 4 0x21 0x07 0xfc

Step 3: Run below command:

# sudo chmod 775 rs485.sh
# ./rs485.sh
# stty -F /dev/ttyLP4 -echo -onlcr 115200
# cat /dev/ttyLP4 &
# echo "Serial Port Test" > /dev/ttyLP4

Step 4: You need to open two terminals: one to connect to the debug port of the ROM2820, and the other to connect to the Adam-4520.

Step 5:You can send data from the ROM2820's debug port to the Adam-4520, and you can also input text from the Adam-4520's terminal using the keyboard so that the ROM2820's debug port can receive it.

RTENOTITLE

I2C測試方法(I2C Testing Method)

 Step 1: Test command

# i2cdetect -l

i2c-0   i2c             44340000.i2c                            I2C adapter

i2c-1   i2c             44350000.i2c                            I2C adapter

i2c-2   i2c             42530000.i2c                            I2C adapter

i2c-4   i2c             426b0000.i2c                            I2C adapter

i2c-7   i2c             426e0000.i2c                            I2C adapter

RS-422 

RS-422 Test 

#!/bin/sh
i2cset -y -f 4 0x21 0x00 0x10
i2cset -y -f 4 0x21 0x01 0x01
i2cset -y -f 4 0x21 0x02 0xff
i2cset -y -f 4 0x21 0x03 0xfd
i2cset -y -f 4 0x21 0x04 0x00
i2cset -y -f 4 0x21 0x05 0x00
i2cset -y -f 4 0x21 0x06 0xcf
i2cset -y -f 4 0x21 0x07 0xfc

 

 

USB測試方法(USB Testing Method)

USB disk test (USB 2.0)


Step 1:Issue the following command (lsusb -t) after inserting a USB disk into the USB 2.0 port to check if the USB device is listed.

Step 2: Test (eg. if usb disk is /dev/sda)

# dd if=/dev/urandom of=data bs=1 count=1024
# 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 Testing Method)

Step 1: Set system time to current, then write to RTC

root@imx93rom2820a1:~# date 010100002025 && hwclock -w && date

Step 2: Set one incorrect time, then read time from RTC to verify

root@imx93rom2820a1:~# hwclock -r && date

Step 3:  Restore the RTC time to system time

 root@imx93rom2820a1:~# date 

eMMC/SD測使方法(eMMC/SD Testing Method)

Device Routes
eMMC: /dev/mmcblk0 
SD: /dev/mmcblk2

Test (eg. emmc)

Step 1: Test command:

# dd if=/dev/urandom of=data bs=1 count=1024
# dd if=/dev/mmcblk0 of=backup bs=1 count=1024 skip=4096
# dd if=data of=/dev/mmcblk0 bs=1 seek=4096
# dd if=/dev/mmcblk0 of=data1 bs=1 count=1024 skip=4096
# diff data data1
# dd if=backup of=/dev/mmcblk0 bs=1 seek=4096

 

乙太網路使用方法(Ethernent Testing Method)

Command : ifconfig 

RTENOTITLE

Command: Ping - I eth1 8.8.8.8  or Ping - I eth0 8.8.8.8  

RTENOTITLE

GPIO使用方法(GPIO Operating Method)

GPIO pin:

CPU pin to GPIO GPIO 1101 Number
GPIO1(shared pin) 1 496
GPIO2 2 497
GPIO3 3 498
GPIO4 4 499
GPIO5 5 500
GPIO6 6 501
GPIO7 7 502
GPIO8 8 503
GPIO9 9 504
GPIO10 10 505
GPIO11 11 506
GPIO12 12 507

GPIO loop test:

Connect GPIO pin#3 and GPIO pin#4

root@imx93rom2820a1:/# echo 498 > /sys/class/gpio/export

root@imx93rom2820a1:/# echo 499 > /sys/class/gpio/export

root@imx93rom2820a1:/# echo out > /sys/class/gpio/gpio498/direction

root@imx93rom2820a1:/# echo in  > /sys/class/gpio/gpio499/direction

root@imx93rom2820a1:/#cat /sys/class/gpio/gpio498/value

0

root@imx93rom2820a1:/# echo 1 > /sys/class/gpio/gpio498/value

root@imx93rom2820a1:/# cat /sys/class/gpio/gpio498/value

1

RTENOTITLE

Connect GPIO pin#5 and GPIO pin #6

root@imx93rom2820a1:/# echo 500 > /sys/class/gpio/export

root@imx93rom2820a1:/# echo 501 > /sys/class/gpio/export

root@imx93rom2820a1:/# echo out > /sys/class/gpio/gpio500/direction

root@imx93rom2820a1:/# echo in  > /sys/class/gpio/gpio501/direction

root@imx93rom2820a1:/# cat /sys/class/gpio/gpio500/value

0

root@imx93rom2820a1:/# echo 1 > /sys/class/gpio/gpio500/value

root@imx93rom2820a1:/# cat /sys/class/gpio/gpio501/value

1

RTENOTITLE

Connect GPIO pin#7 and GPIO pin#8

root@imx93rom2820a1:/# echo 502 > /sys/class/gpio/export

root@imx93rom2820a1:/# echo 503 > /sys/class/gpio/export

root@imx93rom2820a1:/# echo out > /sys/class/gpio/gpio502/direction

root@imx93rom2820a1:/# echo in  > /sys/class/gpio/gpio503/direction

root@imx93rom2820a1:/# cat /sys/class/gpio/gpio502/value

0

root@imx93rom2820a1:/# echo 1 > /sys/class/gpio/gpio502/value

root@imx93rom2820a1:/# cat /sys/class/gpio/gpio503/value

1

RTENOTITLE

Connect GPIO pin#9 and GPIO pin#10

root@imx93rom2820a1:/# echo 504 > /sys/class/gpio/export

root@imx93rom2820a1:/# echo 505 > /sys/class/gpio/export

root@imx93rom2820a1:/# echo out > /sys/class/gpio/gpio504/direction

root@imx93rom2820a1:/# echo in  > /sys/class/gpio/gpio505/direction

root@imx93rom2820a1:/# cat /sys/class/gpio/gpio504/value

0

root@imx93rom2820a1:/# echo 1 > /sys/class/gpio/gpio504/value

root@imx93rom2820a1:/# cat /sys/class/gpio/gpio505/value

1

RTENOTITLE

Connect GPIO pin#11 and GPIO pin#12

root@imx93rom2820a1:/# echo 506 > /sys/class/gpio/export

root@imx93rom2820a1:/# echo 507 > /sys/class/gpio/export

root@imx93rom2820a1:/# echo out > /sys/class/gpio/gpio506/direction

root@imx93rom2820a1:/# echo in  > /sys/class/gpio/gpio507/direction

root@imx93rom2820a1:/# cat /sys/class/gpio/gpio507/value

0

root@imx93rom2820a1:/# echo 1 > /sys/class/gpio/gpio506/value

root@imx93rom2820a1:/# cat /sys/class/gpio/gpio507/value

1

RTENOTITLE

Camera使用方法(Camera Testing Method)

MIPI-CSI0 (Tested with OV5640 + mini-SAS to MIPI-CSI Cable): OV5640 CSI (CN701): Connect OV5640 camera to EG-55 CAM3

Step 1: Take pictures

# gst-launch-1.0 v4l2src num-buffers=1 device=/dev/video0 ! video/x-raw,width=640,height=480 ! jpegenc ! filesink location=sample.jpeg

Step 2: View on panel

# gplay-1.0 sample.jpeg

 

PWM測試方法(PWM Testing Method)

TBD

 

CAN Bus

Step 1: Connect can1 and can2
Step 2 Test command
# ip link set can0 up type can bitrate 125000
# ip link set can1 up type can bitrate 125000
# candump can1 &
# cansend can0 12345678#123412341234
The following shows the result
can1  12345678   [6]  12 34 12 34 12 34

RTENOTITLE

通用方法(General Method)

查看CPU温度(Check CPU Temperature)

root@imx93rom2820a1:/home# cat /sys/devices/virtual/thermal/thermal_zone0/temp
39850
root@imx93rom2820a1:/home#

查看内存容量(Check Memory Capacity)

root@imx93rom2820a1:/home# free -h
               total        used        free      shared  buff/cache   available
Mem:           1.9Gi       197Mi       1.6Gi       9.6Mi       215Mi       1.7Gi
Swap:             0B          0B          0B
root@imx93rom2820a1:/home#

查看存储容量(Check Storage Capacity)

root@imx93rom2820a1:/home# df -hT
Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/root      ext4      6.1G  3.5G  2.4G  60% /
devtmpfs       devtmpfs  716M  4.0K  716M   1% /dev
tmpfs          tmpfs     973M     0  973M   0% /dev/shm
tmpfs          tmpfs     390M  9.5M  380M   3% /run
tmpfs          tmpfs     4.0M     0  4.0M   0% /sys/fs/cgroup
tmpfs          tmpfs     973M  4.0K  973M   1% /tmp
tmpfs          tmpfs     973M  196K  973M   1% /var/volatile
/dev/mmcblk0p1 vfat       84M   33M   51M  39% /run/media/boot-mmcblk0p1
tmpfs          tmpfs     195M     0  195M   0% /run/user/0
root@imx93rom2820a1:/home#

設置RTC (RTC Setting) 

查看系統時間 (Check the system) 

root@imx8ulprom2820a1:/# timedatectl
[   41.402592] kauditd_printk_skb: 6 callbacks suppressed
[   41.402611] audit: type=1334 audit(45.332:16): prog-id=15 op=LOAD
[   41.417884] audit: type=1334 audit(45.344:17): prog-id=16 op=LOAD
               Local time: Thu 1970-01-01 00:00:46 UTC
           Universal time: Thu 1970-01-01 00:00:46 UTC      
                 RTC time: Thu 1970-01-01 00:00:45            <-----  Real-Time Clock,RTC 
                Time zone: Universal (UTC, +0000)              <------ Time zone 目前
System clock synchronized: no
              NTP service: active
              RTC in local TZ: no         
Note : 
Change Time Zone 
           Local time: Fri 2024-05-03 09:07:42 CST
           Universal time: Fri 2024-05-03 01:07:42 UTC
                RTC time: Fri 2024-05-03 09:07:42
                Time zone: Asia/Taipei (CST, +0800)
System clock synchronized: yes
              NTP service: active
              RTC in local TZ: yes
Time Zone List 
 
$ sudo timedatectl list-timezones
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
Africa/Asmara
Africa/Bamako
Africa/Bangui
Africa/Banjul
Africa/Bissau
Africa/Blantyre
Africa/Brazzaville
Africa/Bujumbura
Africa/Cairo
Africa/Casablanca

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

Yocto 4.2