华为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