1. 程式人生 > 其它 >華為AR502H-CN 邊緣計算物聯閘道器 除錯總結

華為AR502H-CN 邊緣計算物聯閘道器 除錯總結

賬號密碼:wd Wd123456

ip route add 192.168.100.10 dev GE0 via 192.168.100.12

打包
tar -cvf hello.tar ./
解壓
tar xf eciot-ova.tar.gz -C ./eciot-ova

build/
sed -i s#http://ftp.cn.debian.org/#http://mirrors.tuna.tsinghua.edu.cn/#g ../system/sdk/Dockerfile_base

通過docker run命令可以從基礎映象中執行基礎編譯環境,在基礎編譯環境中進行第三方開源元件的編譯。
docker run -v /home/wt/ar502h:/data -it --rm --hostname base huawei-ec-iot/sdk:base /bin/bash

•編譯32位容器中的開源元件,使用如下命令:
./build_opensrc.sh armel

•編譯64位容器中的開源元件,使用如下命令:
./build_opensrc.sh arm64
開源元件編譯完成後,在頂層目錄下的custom_deb資料夾中生成相關開源軟體的deb包
編譯完成後使用以下命令退出基礎編譯環境,回到進入基礎編譯環境前的路徑。

製作最終編譯映象
./build_sdk.sh

會在當前環境中生成最終的編譯環境
sudo docker images

加埠對映
sudo docker run -v /home/wt/ar502h:/data --hostname sdk --privileged -it -p 8080:8080 -p 502:502 --rm huawei-ec-iot/sdk:buster /bin/bash

sudo docker run -v /home/wt/ar502h:/data --hostname sdk --privileged -it --rm huawei-ec-iot/sdk:buster /bin/bash

使用tar命令打包檔案作為docker映象:
tar -cvf wgapp.tar ./

生成ova映象
create-ova -t docker -di /data/wgwebserver/hello.tar -dt tar -dc ./usr/bin/hello -tl demo:hello -o /data/wgwebserver/
create-ova -t docker -di /data/wgwebserver/wgapp.tar -dt tar -dc ./bin/sh -tl demo:wgapp -o /data/wgwebserver/

container install hello1 hello.ova disk 50 memory 100
container install docker01 hello.ova


停止容器 container stop container
刪除容器 container uninstall container
檢視容器日誌 journalctl CONTAINER_NAME=container
檢視docker安裝狀態
container status

啟動docker
container start hello

停止
container stop hello

檢視
container list

檢視log
journalctl CONTAINER_NAME=hello

檢視實時log
journalctl -fa

檢視n行
journalctl -n 200

串列埠部分
1、RX1/TX1 為232介面,D1+/D1- 為:485介面 對應軟體系統tty裝置為:/dev/ttyAMA1

RX2/TX2 為232介面,D2+/D2- 為:485介面 對應軟體系統tty裝置為:/dev/ttyAMA2

2、由於485介面為半雙工通道,軟體APP在收發資料時,需要進行收發時序控制:

例如:裝置:/dev/rs485Ctrl0 對應控制 /dev/ttyAMA1;

裝置:/dev/rs485Ctrl1 對應控制 /dev/ttyAMA2;

操作方法為:對rs485Ctrl裝置進行正常的0/1讀寫控制。

備註:當前AR502H正在開發階段,早期版本中部分功能未開發全面,請獲取最新版本進行除錯。

3、232和485是通過軟體命令進行切換使用,請參考產品命令使用文件:

命令備註:serialportctl RS232/RS485 1/2

serialportctl -m RS232 -p 1
serialportctl -s
stty -F /dev/tty* ispeed 9600 ospeed 9600
serialportctl RS232/RS485 1/2
echo “hello” > /dev/tty*
cat /dev/tty*

echo “hello” > /dev/ttyRS1


ar502配置ip連線雲端
ip addr add 10.23.2.183/24 dev GE4
ip addr show dev GE4
ip route add default via 10.23.2.254 dev GE4
route -n

刪除ip
ip addr del 192.168.1.12/24 dev GE4

註冊裝置到雲端
aclinkctl -t 172.16.148.143 -p 10021 -c true
aclinkctl

本地執行docker tar包
docker load -i wgapp.tar


ssh連線容器

獲取容器的ip
container status


192.169.100.12為裝置的IP地址
192.168.100.3為容器的IP地址

1.建立一個表
nft add table dnat1

在表裡建立一條鏈
nft add chain dnat1 prerouting { type nat hook prerouting priority 0 \; }

nft add chain dnat1 postrouting { type nat hook postrouting priority 0 \; }

在鏈裡新增入方向的一對一地址轉換規則。對滿足目的IP地址和目的埠條件的報文進行一對一地址轉換
nft add rule dnat1 prerouting ip daddr 192.169.100.12 tcp dport 1022 iif GE0 dnat 192.168.100.3:22


192.168.100.0為容器的路由
nft add rule dnat1 postrouting ip saddr 192.168.100.0 oif GE4 masquerade


使用SSH工具PuTTY登入容器。
192.169.100.12 1022

//配置ip
ip addr add 192.168.100.12/24 dev GE0
ip addr show dev GE4
ip route add 192.168.100.10 dev GE0 via 192.168.100.12
route -n

 

取日誌方法如下
journalctl -a > /mnt/internal_storage/logfile.log;
tar -czvf /mnt/internal_storage/logfile.tar.gz /mnt/log/logfile/;
diagnose -f /mnt/internal_storage/diagnose.txt;


tar -cvf hello.tar ./
create-ova -t docker -di ./hello.tar -dt tar -dc ./bin/sh -tl demo:hello -o ./

 

tar xf sqlite.tar.gz -C ./sqlite/
./configure --host=aarch64-linux-gnu --prefix=/data/release/
make
make install

./configure --host=aarch64-linux-gnu --enable-static --prefix=/data/install/
編譯
make
安裝
make install
在install生成三個目錄:include lib share