Difference between revisions of "ROM-2820 user guide"
Line 1: | Line 1: | ||
− | |||
| | ||
Line 7: | Line 6: | ||
== '''產品特性(Features)''' == | == '''產品特性(Features)''' == | ||
− | *NXP | + | *NXP i.MX 93 Cortex-A55 Dual-core (up to 1.7GHz) |
*1 x Arm Cortex-M33 core | *1 x Arm Cortex-M33 core | ||
− | * | + | *1 x Ethos®-U65 microNPU |
− | *1 x 4 lane MIPI-DSI | + | *1 x 2GB LPDDR4X up to 3733MT/s |
− | * | + | *1 x 4 lane MIPI-DSI |
− | *Support Ycoto Linux | + | *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 | ||
| | ||
Line 18: | Line 19: | ||
== '''產品官網連結(Product information Link)''' == | == '''產品官網連結(Product information Link)''' == | ||
− | [https://www.advantech.com/zh-tw/products/8fc6f753-ca1d-49f9-8676-10d53129570f/rom- | + | [https://www.advantech.com/zh-tw/products/8fc6f753-ca1d-49f9-8676-10d53129570f/rom-2820/mod_bb82922e-d3a2-49d7-80ff-dc57f400185e '''ROM-2820'''] |
= '''接口布局和尺寸(Layout and Sizes)''' = | = '''接口布局和尺寸(Layout and Sizes)''' = | ||
− | === '''ROM- | + | === '''ROM-2820 接口布局圖 Board Dimension Layout ''' === |
− | [[File:ROM- | + | [[File:ROM-2820 Module A.PNG]] [[File:ROM-2820 Module B.PNG]] |
| | ||
Line 30: | Line 31: | ||
=== '''ROM-ED91 接口布局圖 Board Dimension Layout''' === | === '''ROM-ED91 接口布局圖 Board Dimension Layout''' === | ||
− | + | | |
| | ||
Line 211: | Line 212: | ||
=== '''机械尺寸 ('''Mechanical Characteristics) === | === '''机械尺寸 ('''Mechanical Characteristics) === | ||
− | '''ROM- | + | '''ROM-2820''' |
− | + | | |
---- | ---- | ||
Line 223: | Line 224: | ||
*'''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: ''' | ||
| | ||
Line 243: | Line 242: | ||
<span style="font-size:small;">Command :</span> | <span style="font-size:small;">Command :</span> | ||
− | <span style="font-size:small;">'''~$ sudo dd if= | + | <span style="font-size:small;">'''~$ sudo dd if=2820A1AIM34LIVC0054_iMX8ULP_1G_flash_tool/image/imx-image-full-imx8ulprom2820a1-20230627062759.rootfs.wic of=/dev/sde bs=1M conv=fsync status=progress'''</span> |
− | + | | |
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 251: | Line 250: | ||
Step3: 確認開機選擇指撥開關 | Step3: 確認開機選擇指撥開關 | ||
− | + | | |
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;" | {| border="1" cellpadding="1" cellspacing="1" style="width: 500px;" | ||
Line 267: | Line 266: | ||
Step4:打開電源 和 終端機 (Turn on the Power & Terminal) | Step4:打開電源 和 終端機 (Turn on the Power & Terminal) | ||
− | + | | |
Step5: 複製flash tool到U盤中, 解壓縮flash tools檔案,(copy to USB Disk, then unzip the flash tools file)(Test with 32G SD card) | Step5: 複製flash tool到U盤中, 解壓縮flash tools檔案,(copy to USB Disk, then unzip the flash tools file)(Test with 32G SD card) | ||
Line 273: | Line 272: | ||
複製檔案到U盤中 (Copy the flash file to USB Disk), 解壓縮flash tool到home目錄(Unzip the file to home) | 複製檔案到U盤中 (Copy the flash file to USB Disk), 解壓縮flash tool到home目錄(Unzip the file to home) | ||
− | #tar zxvf /run/media/New\ Volume-sda/ | + | #tar zxvf /run/media/New\ Volume-sda/2820A1AIM34LIVC0054_iMX8ULP_1G_flash_tool.tgz -C ~ |
− | + | | |
− | 5. 進入flsah tool下的mk_inand資歷夾, 執行指令./mksd-linux.sh /dev/mmcblk0燒錄image到eMMC(Connect USB Disk to ROM- | + | 5. 進入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檔案, 可以到以下連結下載並複製到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: | ||
Line 285: | Line 284: | ||
{| border="1" cellpadding="1" cellspacing="1" style="width: 500px;" | {| border="1" cellpadding="1" cellspacing="1" style="width: 500px;" | ||
|- | |- | ||
− | | ROM- | + | | ROM-2820 |
| Device node | | Device node | ||
|- | |- | ||
Line 295: | Line 294: | ||
|} | |} | ||
− | + | | |
6. 切換開機switch來設定成從eMMC開機(Change boot switch to boot from eMMC. Reboot system). | 6. 切換開機switch來設定成從eMMC開機(Change boot switch to boot from eMMC. Reboot system). | ||
Line 303: | Line 302: | ||
=== '''Debug 串口調試 (Debug port Setting)''' === | === '''Debug 串口調試 (Debug port Setting)''' === | ||
− | 以 Tera Term 为例介绍如何使用串口调试功能 | + | 以 Tera Term 为例介绍如何使用串口调试功能 ?'"`UNIQ--pre-00000001-QINU`"'? |
− | |||
Tera Term Tool | Tera Term Tool | ||
Line 332: | Line 330: | ||
'''Connect USB cable to USB OTG port.''' | '''Connect USB cable to USB OTG port.''' | ||
− | '''Change boot switch to " | + | '''Change boot switch to " " to boot from force recovery mode.''' |
| | ||
Line 339: | Line 337: | ||
|- | |- | ||
| Serial download: | | Serial download: | ||
− | | | + | | |
|} | |} | ||
− | + | | |
Download uuu tool from link below: | Download uuu tool from link below: | ||
Line 354: | Line 352: | ||
Perpare uboot and image files below: | Perpare uboot and image files below: | ||
− | + | | |
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/> $ | + | <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/> $ <br/> $ </div> |
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 | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">$ sudo ./uuu -b emmc_all </div> |
[[File:ROM-2620 uuu flash.png|RTENOTITLE]] | [[File:ROM-2620 uuu flash.png|RTENOTITLE]] | ||
Line 368: | Line 366: | ||
| | ||
− | === '''Display Setting (ROM- | + | === '''Display Setting (ROM-2820)''' === |
''' U-boot Command :''' | ''' U-boot Command :''' | ||
*Display | *Display | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">=> setenv fdtfile imx8ulp- | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">=> setenv fdtfile imx8ulp-rom2820-a1-lt9211.dtb<br/> => saveenv<br/> => boot</div> |
[[File:ROM-2620 2CH LVDS uboot.png|RTENOTITLE]] | [[File:ROM-2620 2CH LVDS uboot.png|RTENOTITLE]] | ||
Line 383: | Line 381: | ||
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># cat /proc/asound/cards</div> | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># cat /proc/asound/cards</div> | ||
0 [sgtl5000 ]: sgtl5000 - sgtl5000 <br/> sgtl5000 | 0 [sgtl5000 ]: sgtl5000 - sgtl5000 <br/> sgtl5000 | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"> | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"> </div> |
'''Record and playback:''' | '''Record and playback:''' | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">'''# | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">'''# '''</div> <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">'''# '''</div> |
| | ||
=== '''M.2 WiFi/BT測試方法(M.2 WiFi/BT Testing Method)''' === | === '''M.2 WiFi/BT測試方法(M.2 WiFi/BT Testing Method)''' === | ||
− | *Test Wi-Fi with EWM- | + | *Test Wi-Fi with EWM-xxxx on C0048 version: Change SD_SLT to 2-3 |
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">=> setenv fdtfile imx8ulp- | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">=> setenv fdtfile imx8ulp-rom2820-a1-m2-sdio.dtb<br/> => saveenv<br/> => boot</div> |
In Linux user space: | In Linux user space: | ||
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># iwconfig<br/> # ifconfig wlan0 up<br/> # iwlist wlan0 scan | grep ESSID<br/> # killall wpa_supplicant<br/> # ifconfig wlan0 up<br/> # wpa_passphrase "Pilimao" "0913079939" > /tmp/wpa.conf<br/> # wpa_supplicant -BDwext -iwlan0 -c/tmp/wpa.conf<br/> # udhcpc -b -i wlan0<br/> # ping 8.8.8.8</div> | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># iwconfig<br/> # ifconfig wlan0 up<br/> # iwlist wlan0 scan | grep ESSID<br/> # killall wpa_supplicant<br/> # ifconfig wlan0 up<br/> # wpa_passphrase "Pilimao" "0913079939" > /tmp/wpa.conf<br/> # wpa_supplicant -BDwext -iwlan0 -c/tmp/wpa.conf<br/> # udhcpc -b -i wlan0<br/> # ping 8.8.8.8</div> | ||
Line 401: | Line 399: | ||
Step 1: Press enter after boot. The system will stop at u-boot, and change dtb file by below command. | Step 1: Press enter after boot. The system will stop at u-boot, and change dtb file by below command. | ||
− | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">=> setenv fdtfile imx8ulp- | + | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;">=> setenv fdtfile imx8ulp-rom2820-a1-m2-sdio-88w8997.dtb<br/> => saveenv<br/> => boot</div> |
Step 2: Install driver by below command. | Step 2: Install driver by below command. | ||
<div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># rmmod mwifiex_sdio mwifiex<br/> # modprobe moal mod_para=nxp/wifi_mod_para.conf<br/> # modprobe btnxpuart</div> | <div style="background:#eeeeee;border:1px solid #cccccc;padding:5px 10px;"># rmmod mwifiex_sdio mwifiex<br/> # modprobe moal mod_para=nxp/wifi_mod_para.conf<br/> # modprobe btnxpuart</div> | ||
Line 421: | Line 419: | ||
|- | |- | ||
| COMA | | COMA | ||
− | | | + | | |
|- | |- | ||
| COMB(M33 Domain) | | COMB(M33 Domain) | ||
| | | | ||
|- | |- | ||
− | | COMC | + | | COMC |
− | | | + | | |
|- | |- | ||
− | | COMD | + | | COMD |
− | | | + | | |
|- | |- | ||
| COME_DEBUG | | COME_DEBUG | ||
− | | | + | | |
|} | |} | ||
Line 444: | Line 442: | ||
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: | 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: | ||
− | Adam-4520 RX- <-->ROM- | + | 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 |
Step 3: Run below command: | Step 3: Run below command: | ||
Line 452: | Line 450: | ||
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: | 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: | ||
− | Adam-4520 Data- <-->ROM- | + | Adam-4520 Data- <-->ROM-2820 COMA DB9 Pin 1,<br/> Adam-4520 Data+ <-->ROM-2820 COMA DB9 Pin 2 |
Step 3: Run below command: | Step 3: Run below command: | ||
Line 500: | Line 498: | ||
'''Command : ifconfig ''' | '''Command : ifconfig ''' | ||
− | + | | |
'''Command: Ping - I eth1 8.8.8.8 or Ping - I eth0 8.8.8.8 ''' | '''Command: Ping - I eth1 8.8.8.8 or Ping - I eth0 8.8.8.8 ''' | ||
− | + | | |
| | ||
Line 656: | Line 654: | ||
PWM5: | 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> | <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> | ||
− | | + | ''' ''' |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| | ||
Line 672: | Line 660: | ||
==== '''CAN Bus''' ==== | ==== '''CAN Bus''' ==== | ||
− | '''Step 1: Prepare two pcs rom- | + | '''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 :''' |
− | |||
− | |||
− | |||
− | |||
| | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| | ||
Line 714: | Line 676: | ||
Step 4: After select the test mode ‘U’ to verify LPUART2, you will see below screen. | Step 4: After select the test mode ‘U’ to verify LPUART2, you will see below screen. | ||
− | + | | |
Step 5: If tester can input any characters/strings and show that at COM-B means test successful. | Step 5: If tester can input any characters/strings and show that at COM-B means test successful. | ||
Line 720: | Line 682: | ||
=== '''遠程訪問及文件傳輸(Remote Access and File Transimmion)''' === | === '''遠程訪問及文件傳輸(Remote Access and File Transimmion)''' === | ||
− | ''' 查看主板IP位址 ( Chech IP Address ):''' | + | ''' 查看主板IP位址 ( Chech IP Address ):''' ?'"`UNIQ--pre-00000002-QINU`"'? |
− | |||
| | ||
Line 737: | Line 698: | ||
=== '''查看CPU温度(Check CPU Temperature)''' === | === '''查看CPU温度(Check CPU Temperature)''' === | ||
− | + | ||
+ | ?'"`UNIQ--pre-00000003-QINU`"'? | ||
=== '''查看内存容量(Check Memory Capacity)''' === | === '''查看内存容量(Check Memory Capacity)''' === | ||
− | + | ||
+ | ?'"`UNIQ--pre-00000004-QINU`"'? | ||
=== '''查看存储容量(Check Storage Capacity)''' === | === '''查看存储容量(Check Storage Capacity)''' === | ||
− | + | ||
+ | ?'"`UNIQ--pre-00000005-QINU`"'? | ||
| | ||
=== '''設置RTC (RTC Setting) ''' === | === '''設置RTC (RTC Setting) ''' === | ||
− | + | ||
+ | ?'"`UNIQ--pre-00000006-QINU`"'? | ||
| | ||
Line 754: | Line 719: | ||
查看系統時間 (Check the system) | 查看系統時間 (Check the system) | ||
− | root@ | + | root@imx8ulprom2820a1:/# timedatectl<br/> [ 41.402592] kauditd_printk_skb: 6 callbacks suppressed<br/> [ 41.402611] audit: type=1334 audit(45.332:16): prog-id=15 op=LOAD<br/> [ 41.417884] audit: type=1334 audit(45.344:17): prog-id=16 op=LOAD<br/> Local time: Thu 1970-01-01 00:00:46 UTC<br/> Universal time: Thu 1970-01-01 00:00:46 UTC <br/> RTC time: Thu 1970-01-01 00:00:45 <----- Real-Time Clock,RTC <br/> Time zone: Universal (UTC, +0000) <------ Time zone 目前<br/> System clock synchronized: no<br/> NTP service: active<br/> RTC in local TZ: no ''' ''' |
Note : | Note : | ||
− | Change Time Zone | + | Change Time Zone ?'"`UNIQ--pre-00000007-QINU`"'? |
− | |||
<code data-highlighted="yes"> Local time: Fri 2024-05-03 09:07:42 CST<br/> Universal time: Fri 2024-05-03 01:07:42 UTC<br/> RTC time: Fri 2024-05-03 09:07:42<br/> Time zone: Asia/Taipei (CST, +0800)<br/> System clock synchronized: yes<br/> NTP service: active<br/> RTC in local TZ: yes</code> | <code data-highlighted="yes"> Local time: Fri 2024-05-03 09:07:42 CST<br/> Universal time: Fri 2024-05-03 01:07:42 UTC<br/> RTC time: Fri 2024-05-03 09:07:42<br/> Time zone: Asia/Taipei (CST, +0800)<br/> System clock synchronized: yes<br/> NTP service: active<br/> RTC in local TZ: yes</code> |
Revision as of 02:20, 30 May 2024
Contents
- 1 產品介紹
- 2 接口布局和尺寸(Layout and Sizes)
- 3 快速入门 (Quick Start)
- 4 Linux系统的基本使用(Linux System Basic Operating Method)
- 4.1 UUU 使用方法(USB Connection (OTG port))
- 4.2 Display Setting (ROM-2820)
- 4.3 Audio(Audio Testing Methid)
- 4.4 M.2 WiFi/BT測試方法(M.2 WiFi/BT Testing Method)
- 4.5 Serial Port測試方法(Serial Testing Method)(COM A/C)
- 4.6 I2C測試方法(I2C Testing Method)
- 4.7 USB測試方法(USB Testing Method)
- 4.8 RTC測試方法(RTC Testing Method)
- 4.9 eMMC/SD測使方法(eMMC/SD Testing Method)
- 4.10 乙太網路使用方法(Ethernent Testing Method)
- 4.11 GPIO使用方法(GPIO Operating Method)
- 4.12 Camera使用方法(Camera Testing Method)
- 4.13 PWM測試方法(PWM Testing Method)
- 4.14 遠程訪問及文件傳輸(Remote Access and File Transimmion)
- 5 通用方法(General Method)
- 6 Linux BSP編譯方法(Linux BSP Compile Method)
產品介紹
產品特性(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)
接口布局和尺寸(Layout and Sizes)
ROM-2820 接口布局圖 Board Dimension Layout
ROM-ED91 接口布局圖 Board Dimension Layout
主板内置插针式引脚排序方式 (Pin Header defination)
Internal I/O, Jummper/Switch List:
Label | Function | Label | Function |
DCIN1401 | 12V DCIN connector | SW1301 | BT0_CFG1/4, BT1_CFG6/7/9/11 |
COMB | RS232/422/485 | SW1302 | BT0_CFG0, BT1_CFG4/5, BOOT_SEL0#/1#, MOD_ON |
COMA | RS232/422/485 | SW1203 | UARTB_MODE0, UART_MODE1 |
LAN | LAN Connector | SW1204 | UARTB_TERM, UARTB_SLEW |
USB1 | USB2.0 port Connector | SW1206 | U1205_RX_TERM, U1205_MODE2 |
USB0_OTG1 | Micro USB Connector | SW1201 | UARTA_MODE0, UART_MODE1 |
AJ | Line Out Connector | SW1202 | UARTA_TERM, UARTA_SLEW |
MIC | MIC Connector | SW1205 | U1202_RX_TERM, U1202_MODE2 |
CAN | CAN Bus Connector | SW1303 | Power button |
COME_DEBUG | M-core debug console | SW1304 | Reset button |
COMC | COM | I2S_CN | I2S Connector |
COMD | A-core debug console | CN501 | CAN0_H, CAN0_L terminatl resistors |
I2C1101 | I2C Connector | SD_SLT | SD select |
I2C1102 | I2C Connector | GPIO1101 | GPIO header |
CN601 | M.2 Key E Connector | SPI_CN1101 | PWM header |
CN701 | MIPI-CSI Connector | CN1101 | SPI header |
LVDS | LVDS Connector | LVDS_VDD_SLT | LVDS power select select header |
LVDS_BKLT_PWR | LVDS Backlight Connector | LVDS_BKLT_SLT | LVDS Backlight power select header |
BAT1 | Battery Connector |
Rear I/O
LED Function List
Location | Function |
PD1405 | +V5_MOD |
PD1502 | +V3.3 |
PD1503 | +V5 |
Switch Settings
- SW1301(BT0_CFG1/4, BT1_CFG6/7/9/11)
- SW1302(BT0_CFG0, BT1_CFG4/5, BOOT_SEL0#/1#, MOD_ON)
- SW1203 (UARTB_MODE0, UART_MODE1)
- SW1204 (UARTB_TERM,_UARTB_SLEW)
- SW1206_(U1205_RX_TERM,_U1205_MODE2)
- SW1201 (UARTA_MODE0, UART_MODE1)
- SW1202 (UARTA_TERM,_UARTA_SLEW)
- SW1205_(U1202_RX_TERM,_U1202_MODE2)
- SW1303_(Power_button)
- SW1304_(Reset_button)
- SD_SLT_(SD_select)
- LVDS_VDD_SLT_(LVDS_power_select_select_header)
- LVDS_BKLT_SLT_(LVDS_Backlight_power_select_header)
接口引脚定義 (Connector Pin definitions)
- DCIN1401
- COMB
- COMA
- LAN
- USB1
- USB0_OTG1
- AJ(Audio_Jack)
- MIC
- CAN
- COME_DEBUG(M-core_debug)
- COMC
- COMD(A-code_debug)
- I2C1101
- I2C1102
- CN601(M.2_Key_E)
- CN701(MIPI-CSI)
- LVDS
- LVDS_BKLT_PWR
- BAT1
- I2S_CN(I2S)
- CN501(CAN0_H/CAN0_L)
- GPIO1101
- SPI_CN1101(PWM)
- CN1101(SPI)
机械尺寸 (Mechanical Characteristics)
ROM-2820
快速入门 (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)
Step1: 創造一張可開機的SD 卡 (Create a bootable SD card)
Command :
~$ sudo dd if=2820A1AIM34LIVC0054_iMX8ULP_1G_flash_tool/image/imx-image-full-imx8ulprom2820a1-20230627062759.rootfs.wic of=/dev/sde bs=1M conv=fsync status=progress
Step2: 將可開機的SD 卡插入底板SD卡卡槽(Plug the SD card into Carrier board 's SD card slot)
Step3: 確認開機選擇指撥開關
EMMC boot: | SW1301: 1_2_5_6 ON SW1302: 4_6 ON |
SD boot: | SW1301: 1_2_3_4 ON SW1302: 4_6 ON |
Serial download: | SW1301: All OFF SW1302: 5_6 ON |
Step4:打開電源 和 終端機 (Turn on the Power & Terminal)
Step5: 複製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)
- tar zxvf /run/media/New\ Volume-sda/2820A1AIM34LIVC0054_iMX8ULP_1G_flash_tool.tgz -C ~
5. 進入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:
ROM-2820 | Device node |
SD card | /dev/mmcblk2 |
eMMC | /dev/mmcblk0 |
6. 切換開機switch來設定成從eMMC開機(Change boot switch to boot from eMMC. Reboot system).
Debug 串口調試 (Debug port Setting)
以 Tera Term 为例介绍如何使用串口调试功能 ?'"`UNIQ--pre-00000001-QINU`"'?
Tera Term Tool
Check the Sriel port in Device Manager (查看PC端的串口号):
if you can not identify the Serial device , please check your serial driver.
Debug port connection (串口連接)
Log into Terminal Tool (进入串口调试终端):
Linux系统的基本使用(Linux System Basic Operating Method)
UUU 使用方法(USB Connection (OTG port))
Connect USB cable to USB OTG port.
Change boot switch to " " to boot from force recovery mode.
Serial download: |
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
Type command below to flash eMMC:
Display Setting (ROM-2820)
U-boot Command :
- Display
=> saveenv
=> boot
Audio(Audio Testing Methid)
0 [sgtl5000 ]: sgtl5000 - sgtl5000
sgtl5000
Record and playback:
M.2 WiFi/BT測試方法(M.2 WiFi/BT Testing Method)
- Test Wi-Fi with EWM-xxxx on C0048 version: Change SD_SLT to 2-3
=> saveenv
=> boot
In Linux user space:
# ifconfig wlan0 up
# iwlist wlan0 scan | grep ESSID
# killall wpa_supplicant
# ifconfig wlan0 up
# wpa_passphrase "Pilimao" "0913079939" > /tmp/wpa.conf
# wpa_supplicant -BDwext -iwlan0 -c/tmp/wpa.conf
# udhcpc -b -i wlan0
# ping 8.8.8.8
Add name server: nameserver 8.8.8.8 in resolv.conf file
# ping google.com
Test BT:
# ./start_bt.sh ttyLP0
# hciconfig hci0 up
# hciconfig
# bluetoothctl
# discoverable on
# pairable on
# scan on
# info 84:C5:A6:D3:AF:E4
# pair 84:C5:A6:D3:AF:E4
# connect 84:C5:A6:D3:AF:E4
# paired-devices
# disconnect 84:C5:A6:D3:AF:E4
# remove 84:C5:A6:D3:AF:E4
- Test Wi-Fi with EWM-W194M201E Module (SDIO Interface)
Step 1: Press enter after boot. The system will stop at u-boot, and change dtb file by below command.
=> saveenv
=> boot
Step 2: Install driver by below command.
# modprobe moal mod_para=nxp/wifi_mod_para.conf
# modprobe btnxpuart
Step 3: WIFI test command.
# wpa_passphrase ASUS-917C qwert12345 > /tmp/wpa.conf
# wpa_supplicant -d -B -i mlan0 -c /tmp/wpa.conf
# udhcpc -i mlan0
- Test Bluetooth with EWM-W194M201E Module (UART Interface)
Step 1: Please refer to above step 1.
Step 2: Please refer to above step 2.
Step 3: Bluetooth test command.
# 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
Serial Port測試方法(Serial Testing Method)(COM A/C)
COMA | |
COMB(M33 Domain) | |
COMC | |
COMD | |
COME_DEBUG |
- RS-232 Loopback Test (eg. COMA: ttyLP0):
Step 1: First change ROM-ED91 SW1201 to ‘01’.
Step 2: Run test command.
# cat /dev/ttyLP0 &
# echo test > /dev/ttyLP0
- RS-422 Test:
Step 1: First change ROM-ED91 SW1201 to ‘11’.
Step 2: Test RS-422 with Adam-4520. Connect Adam-4520 with COMA with DB9 as the following:
Adam-4520 RX- <-->ROM-2820 COMA DB9 Pin 1,
Adam-4520 RX+ <-->ROM-2820 COMA DB9 Pin 2,
Adam-4520 TX- <-->ROM-2820 COMA DB9 Pin 4,
Adam-4520 TX+ <--> ROM-2820 COMA DB9 Pin 3
Step 3: Run below command:
# cat /dev/ttyLP0 &
# echo "Serial Test" > /dev/ttyLP0
- RS-485 Test:
Step 1: First change ROM-ED91 SW1201 to ‘10’.
Step 2: Test RS-485 with Adam-4520. Connect Adam-4520 with COMA with DB9 as the following:
Adam-4520 Data- <-->ROM-2820 COMA DB9 Pin 1,
Adam-4520 Data+ <-->ROM-2820 COMA DB9 Pin 2
Step 3: Run below command:
# cat /dev/ttyLP0 &
# echo "Serial Test" > /dev/ttyLP0
I2C測試方法(I2C Testing Method)
Step 1: Plug in ROM-EG70
Step 2: Test by below command (eg. I2C-6 I2C_1101):
# echo -n $'\x06\x05\x04\x03\x02\x01' > test
# dd if=test of=/sys/bus/i2c/devices/6-0050/eeprom
# hexdump -C /sys/bus/i2c/devices/6-0050/eeprom -n 64
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/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
Step 2: Set one incorrect time, then read time from RTC to verify
eMMC/SD測使方法(eMMC/SD Testing Method)
Device Routes
eMMC: /dev/mmcblk0
SD: /dev/mmcblk2
Test (eg. emmc)
Step 1: Test command:
# 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
Command: Ping - I eth1 8.8.8.8 or Ping - I eth0 8.8.8.8
GPIO使用方法(GPIO Operating Method)
GPIO pin:
GPIO1101 pin | Pin Name | CPU Ball Name | GPIO number |
1 | GPIO_A_0 | PTC0 | 416 |
2 | GPIO_A_1 | PTC1 | 417 |
3 | GPIO_A_2 | PTC2 | 418 |
4 | GPIO_A_3 | PTC3 | 419 |
5 | GPIO_A_4 | PTC4 | 420 |
6 | GPIO_A_5 | PTC12 | 428 |
7 | GPIO_B_0 | PTC18 | 434 |
8 | GPIO_B_1 | PTC19 | 435 |
9 | GPIO_B_2 | PTC20 | 436 |
10 | GPIO_B_3 | PTC21 | 437(Use for M2_SDIO_RST) |
11 | GPIO_B_4 | PTC22 | 438(Use for M2_W_DISABLE2) |
12 | GPIO_B_5 | 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)
Step 1: Connect GPIO1 and GPIO2
Step 2: Export GPIO interface
# echo 417 > /sys/class/gpio/export
Step 3: Set GPIO direction
# echo in > /sys/class/gpio/gpio2/direction
Step 4: Read value and set output value than check
# echo 1 > /sys/class/gpio/gpio1/value
# cat /sys/class/gpio/gpio2/value
1
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
Step 2: View on panel
PWM測試方法(PWM Testing Method)
Please use oscilloscope to check waveform.
PWM1:
# echo 1000000 > /sys/class/pwm/pwmchip0/pwm4/period
# echo 500000 > /sys/class/pwm/pwmchip0/pwm4/duty_cycle
# echo 1 > /sys/class/pwm/pwmchip0/pwm4/enable
PWM2:
# echo 1000000 > /sys/class/pwm/pwmchip6/pwm5/period
# echo 500000 > /sys/class/pwm/pwmchip6/pwm5/duty_cycle
# echo 1 > /sys/class/pwm/pwmchip6/pwm5/enable
PWM3:
# echo 1000000 > /sys/class/pwm/pwmchip6/pwm2/period
# echo 500000 > /sys/class/pwm/pwmchip6/pwm2/duty_cycle
# echo 1 > /sys/class/pwm/pwmchip6/pwm2/enable
PWM4:
# echo 1000000 > /sys/class/pwm/pwmchip6/pwm3/period
# echo 500000 > /sys/class/pwm/pwmchip6/pwm3/duty_cycle
# echo 1 > /sys/class/pwm/pwmchip6/pwm3/enable
PWM5:
# echo 1000000 > /sys/class/pwm/pwmchip6/pwm4/period
# echo 500000 > /sys/class/pwm/pwmchip6/pwm4/duty_cycle
# echo 1 > /sys/class/pwm/pwmchip6/pwm4/enable
CAN Bus
Step 1: Prepare two pcs rom-2820. One for ‘Node A’ one for ‘Node B’
Step 2: Connect these two boards (HI-HI/LO-LO)
Step 3: The test steps and screen are as below :
LPUART
Step 1: Change ROM-ED91 SW1203 to '01'.
Step 2: Connect COM-B and COM-E to PC.
Step 3: Set RTS/CTS flow control for COM-B in Putty.exe
Step 4: After select the test mode ‘U’ to verify LPUART2, you will see below screen.
Step 5: If tester can input any characters/strings and show that at COM-B means test successful.
遠程訪問及文件傳輸(Remote Access and File Transimmion)
查看主板IP位址 ( Chech IP Address ): ?'"`UNIQ--pre-00000002-QINU`"'?
SSH访问及文件传输
SSH Remote Log into Device
- SSH远程登录,以putty选择putty.exe(或者使用Xshell、SecureCRT等类似软件)
- 需要设置远程设备的IP、通讯端口(默认22)、通讯方式,登录后验证用户名密码
通用方法(General Method)
查看CPU温度(Check CPU Temperature)
?'"`UNIQ--pre-00000003-QINU`"'?
查看内存容量(Check Memory Capacity)
?'"`UNIQ--pre-00000004-QINU`"'?
查看存储容量(Check Storage Capacity)
?'"`UNIQ--pre-00000005-QINU`"'?
設置RTC (RTC Setting)
?'"`UNIQ--pre-00000006-QINU`"'?
查看系統時間 (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 ?'"`UNIQ--pre-00000007-QINU`"'?
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