Difference between revisions of "AIMLinux/AddOn/DeviceOn"
Darren.huang (talk | contribs) |
Darren.huang (talk | contribs) |
||
Line 18: | Line 18: | ||
== <span style="color:#0070c0">Bundle Mechanism</span> == | == <span style="color:#0070c0">Bundle Mechanism</span> == | ||
− | To generate an eMMC hex binary which is a specific BSP official release with DeviceOn enabled | + | To generate an eMMC hex binary which is a specific BSP official release with DeviceOn enabled. |
== <span style="color:#0070c0">DeviceOn Installation</span> == | == <span style="color:#0070c0">DeviceOn Installation</span> == |
Revision as of 07:57, 1 April 2022
Contents
DeviceOn
This section describes the information about How to install the DeviceOn on RISC platform.
Get the following required files from PM or AE members
- WISE-Agent
- EX: wise-agent-Poky_3.0.4-imx8-1.4.31.0.run
- CreateAccount
- EX: createaccount_2020_04_10_a59cbe72.tar.gz
- Service-SDK
- EX: Service-SDK_Release_20200421_fsl_imx8_yocto_3f5ea785.tar.gz
- SUSI-IoT
- EX: SusiIoT_Release_2021_08_31_Poky_3.0.4-imx8_x64_16490.tar.gz
- SUSI 4.0
- EX: SUSI4.0_Release_2021_10_29_Poky_3.0.4-imx8_x64_16557.tar.gz
Bundle Mechanism
To generate an eMMC hex binary which is a specific BSP official release with DeviceOn enabled.
DeviceOn Installation
1. Install WISE-Agent
./wise-agent-Poky_xxx.run
During the installation, do not configure at this moment.
* Setup Agent [y/n](default:n): y * Do you want to configure RMM Agent now? [y/n](default: y) n * Do you want to start RMM Agent now? [y/n](default: y) n
2. Install CreateAccount
Get CreateAccount program and install with npm.
tar -zxvf createaccount_xxx.tar.gz cd createaccount cp -a * /usr/local/AgentService/
3. Set up Zero-Config service
[System V]
vi zero-config cp ./zero-config /etc/init.d chown root:root /etc/init.d/zero-config chmod 0750 /etc/init.d/zero-config update-rc.d -f zero-config remove update-rc.d zero-config defaults 99 20
The content of zero-config:
#!/bin/sh SERVICE_PATH="/usr/local/AgentService/" SERVICE_PROGRAM="node index.js" # Source function library. . /etc/init.d/functions case "$1" in start) echo -n "Starting CreateAccount: " cd $SERVICE_PATH $SERVICE_PROGRAM > /dev/null 2>&1 RETVAL=$? if [ $RETVAL -eq 0 ]; then echo "OK" else echo "Failure" fi ;; *) echo "Usage: $0 {start}" exit 1 ;; esac exit 0
[System D]
cp zero-config.service /etc/systemd/system chown root:root /etc/systemd/system/zero-config.service chmod 750 /etc/systemd/system/zero-config.service systemctl enable zero-config.service
The content of zero-config.service:
[Unit] Description=CreatAccount After=saagent.service [Service] User=root Group=root Type=idle WorkingDirectory=/usr/local/AgentService/ ExecStartPre=/bin/sleep 10 ExecStart=/usr/bin/node /usr/local/AgentService/index.js [Install] WantedBy=multi-user.target
4. Install Service-SDK
tar -zxvf Service-SDK_Release_xxx.tar.gz cp -a Service-SDK/.libs/libEIServiceSDK.so* /usr/lib/
5. Install SUSI-IoT
tar -zxvf SusiIoT_Release_xxx.tar.gz cd release/library sudo ./install.sh
6. Install SUSI 4.0
tar -zxvf SUSI4.0_Release_xxx.tar.gz cd SUSI4.x.x/Driver sudo ./install.sh
PS. Please make sure the owner of files above are 'root:root'.
DeviceOn EMMC dump
- After all, remove all installation files and clean history
rm /etc/boottimes rm /var/log/* history -c
- Finally, you can dump the eMMC hex binary.
PS. If the eMMC size is larger that 4GB, you may need to use exFat filesystem to store the dump binary.
First Boot
During the first boot procedure, the agent_config.xml will be updated by saagent service firstly. The MAC address is used as an unique device id for DeviceOn.
<DeviceName>imx6dlubc220a1</DeviceName> <DevID>00000001-0000-0000-0000-00049F0130E0</DevID> <SN>00049F0130E0</SN> <UserName>00049F0130E0@advtrial.net</UserName>
Then, zero-config service will register this account to the server. Once successful, the agent_config.xml will be updated again with corresponding credentials.
<CredentialURL>https://deviceonapp.wise-paas.com/rmm/v1/iothub/credential</CredentialURL> <IoTKey>10da34e72025c137618bb4d4aefff18d</IoTKey>
These procedures are automatically complete during first booting up. Users only need to power up device and connect with network.
Connect to Server
On PC or cellular phone, connect to DeviceQRCode website and input the MAC address of your target device.
If your target device has multiple Ethernet interfaces, use the following command to confirm the associated MAC.
$ cat /usr/local/AgentService/agent_config.xml | grep SN <SN>00049F0130E0</SN>
Follow the steps to connect to DeviceOn server
1. Click the button to generate QR code
2. Click the QR code or scan it with camera
The QR code will re-direct to DeviceOn home page. Enjoy it!
If the DeviceQRCode website appear the mac address does not exist, the mac account may have expired (six month trial period) or you can check the <IoTKey> exist or not in the /usr/local/AgentService/agent_config.xml.
If the <IoTKey> is empty, please connect the internet and reboot the device again.