Difference between revisions of "IoTGateway/BSP/Android/Android BSP User Guide 7.1.2 for rk"

From ESS-WIKI
Jump to: navigation, search
 
Line 1: Line 1:
 +
 
== <span style="color:#0070c0">Android BSP Version</span> ==
 
== <span style="color:#0070c0">Android BSP Version</span> ==
  
Line 11: Line 12:
 
Docker command:
 
Docker command:
 
<syntaxhighlight lang="bash">docker pull advrisc/u16.04-imx6abv5:20170523 </syntaxhighlight>
 
<syntaxhighlight lang="bash">docker pull advrisc/u16.04-imx6abv5:20170523 </syntaxhighlight>
 +
 
== <span style="color:#0070c0">Run Docker example</span> ==
 
== <span style="color:#0070c0">Run Docker example</span> ==
  
 
Step1 Run docker container (example)
 
Step1 Run docker container (example)
 
<syntaxhighlight lang="bash"> $ docker run -it --name android_n7 -v /home/bsp/myandroid:/home/adv/BSP:rw advrisc/u16.04-imx6abv5:20170523 /bin/bash
 
<syntaxhighlight lang="bash"> $ docker run -it --name android_n7 -v /home/bsp/myandroid:/home/adv/BSP:rw advrisc/u16.04-imx6abv5:20170523 /bin/bash
</syntaxhighlight>Step2 In container, change the user. (example)
+
</syntaxhighlight>
 +
 
 +
Step2 In container, change the user. (example)
  
 +
&nbsp;
 
<syntaxhighlight lang="bash"> adv@7cc0fa834366:~$ sudo chown adv:adv -R BSP
 
<syntaxhighlight lang="bash"> adv@7cc0fa834366:~$ sudo chown adv:adv -R BSP
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 
== <span style="color:#0070c0">Getting Android Source Code</span> ==
 
== <span style="color:#0070c0">Getting Android Source Code</span> ==
  
Line 33: Line 39:
 
--------------------------------------------------------------------------------------------------
 
--------------------------------------------------------------------------------------------------
 
$ chmod a+x ../bin/repo
 
$ chmod a+x ../bin/repo
$ ../bin/repo init -u https://gitlab.wise-paas.com/Rockchip/android-manifest.git -b android-7.1.2
+
$ ../bin/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/Rockchip/_git/android-manifest -b android-7.1.2
 
or
 
or
$ ../bin/repo init -u https://gitlab.wise-paas.com/Rockchip/android-manifest.git -b android-mid
+
$ ../bin/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/Rockchip/_git/android-manifest -b android-mid
 
or for deviceON + imm
 
or for deviceON + imm
$ ../bin/repo init -u https://gitlab.wise-paas.com/Rockchip/android-manifest.git -b android-imm
+
$ ../bin/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/Rockchip/_git/android-manifest -b android-imm
 
or for DS211
 
or for DS211
$ ../bin/repo init -u https://gitlab.wise-paas.com/Rockchip/android-manifest.git -b android-7.1.2_r6_ds211
+
$ ../bin/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/Rockchip/_git/android-manifest -b android-7.1.2_r6_ds211
 
or for Chengdu Airport
 
or for Chengdu Airport
$ ../bin/repo init -u https://gitlab.wise-paas.com/Rockchip/android-manifest.git -b android-7.1.2_r6_ds211cd
+
$ ../bin/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/Rockchip/_git/android-manifest -b android-7.1.2_r6_ds211cd
 
$ ../bin/repo sync
 
$ ../bin/repo sync
 
</syntaxhighlight>
 
</syntaxhighlight>
Line 47: Line 53:
 
== <span style="color:#0070c0">Build Instructions</span> ==
 
== <span style="color:#0070c0">Build Instructions</span> ==
  
 
+
&nbsp;
 
<syntaxhighlight lang="bash">$ export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
 
<syntaxhighlight lang="bash">$ export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
 
$ export PATH=$JAVA_HOME/bin:$PATH
 
$ export PATH=$JAVA_HOME/bin:$PATH
 
$ export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
 
$ export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 
== <span style="color:#0070c0">Build U-boot</span> ==
 
== <span style="color:#0070c0">Build U-boot</span> ==
  
 
+
&nbsp;
 
<syntaxhighlight lang="bash">$ cd u-boot
 
<syntaxhighlight lang="bash">$ cd u-boot
 
$ make rk3399_box_defconfig
 
$ make rk3399_box_defconfig
 
$ make ARCHV=aarch64 -j12
 
$ make ARCHV=aarch64 -j12
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 
== <span style="color:#0070c0">Build Kernel</span> ==
 
== <span style="color:#0070c0">Build Kernel</span> ==
  
 
=== Build for DS-100 platform ===
 
=== Build for DS-100 platform ===
  
 
+
&nbsp;
 
<syntaxhighlight lang="bash">$ cd kernel
 
<syntaxhighlight lang="bash">$ cd kernel
 
$ make ARCH=arm64 rockchip_ds100_defconfig
 
$ make ARCH=arm64 rockchip_ds100_defconfig
 
$ make ARCH=arm64 rk3399-ds100.img -j16
 
$ make ARCH=arm64 rk3399-ds100.img -j16
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 
=== Build for DS-100Lite platform ===
 
=== Build for DS-100Lite platform ===
  
 
+
&nbsp;
 
<syntaxhighlight lang="bash">$ cd kernel
 
<syntaxhighlight lang="bash">$ cd kernel
 
$ make ARCH=arm64 rockchip_ds100l_defconfig
 
$ make ARCH=arm64 rockchip_ds100l_defconfig
 
$ make ARCH=arm64 rk3399-ds100l.img -j16
 
$ make ARCH=arm64 rk3399-ds100l.img -j16
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 
=== Build for DS-211 platform ===
 
=== Build for DS-211 platform ===
  
 
+
&nbsp;
 
<syntaxhighlight lang="bash">$ cd kernel
 
<syntaxhighlight lang="bash">$ cd kernel
 
$ make ARCH=arm64 rockchip_ds211_defconfig
 
$ make ARCH=arm64 rockchip_ds211_defconfig
 
$ make ARCH=arm64 rk3399-ds211.img -j16
 
$ make ARCH=arm64 rk3399-ds211.img -j16
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 
== <span style="color:#0070c0">Build Android</span> ==
 
== <span style="color:#0070c0">Build Android</span> ==
  
 
+
&nbsp;
 
<syntaxhighlight lang="bash">$ source build/envsetup.sh  
 
<syntaxhighlight lang="bash">$ source build/envsetup.sh  
 
$ lunch rk3399_box-userdebug  
 
$ lunch rk3399_box-userdebug  
 
$ make -j4 2>&1 | tee build-log.txt
 
$ make -j4 2>&1 | tee build-log.txt
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 
== <span style="color:#0070c0">Push all image to rockdev folder</span> ==
 
== <span style="color:#0070c0">Push all image to rockdev folder</span> ==
  
 +
&nbsp;
 +
<syntaxhighlight lang="bash">$ ./mkimage.sh
 +
</syntaxhighlight>
  
<syntaxhighlight lang="bash">$ ./mkimage.sh
+
All image in rockdev/Image-rk3399_box ./mkimage.sh at previous step will repack boot.img and system.img, and copy other related image files to the rockdev/Image-rk3399_box/ directory. The common image files are listed below:
</syntaxhighlight>All image in rockdev/Image-rk3399_box ./mkimage.sh at previous step will repack boot.img and system.img, and copy other related image files to the rockdev/Image-rk3399_box/ directory. The common image files are listed below:
 
  
 +
&nbsp;
 
<syntaxhighlight lang="bash"># boot.img : Android's initramfs, to initialize and mount system partition.  
 
<syntaxhighlight lang="bash"># boot.img : Android's initramfs, to initialize and mount system partition.  
 
# kernel.img : Kernel image.
 
# kernel.img : Kernel image.
Line 106: Line 121:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 +
&nbsp;
  
 
== <span style="color:#0070c0">ADB</span> ==
 
== <span style="color:#0070c0">ADB</span> ==
Line 119: Line 135:
 
'''<big>Step1</big>''' After Build Android, you will be create image for OTA update.
 
'''<big>Step1</big>''' After Build Android, you will be create image for OTA update.
 
<syntaxhighlight lang="bash">$ ./mkimage.sh ota
 
<syntaxhighlight lang="bash">$ ./mkimage.sh ota
</syntaxhighlight> '''<big>Step2</big>''' Package the update.zip<syntaxhighlight lang="bash">$ make otapackage
 
</syntaxhighlight> '''<big>Step3</big>'''Rename the out/target/product/rk3399_box/rk3399_box-ota-eng.adv.zip to update.zip<syntaxhighlight lang="bash">$mv out/target/product/rk3399_box/rk3399_box-ota-eng.adv.zip update.zip
 
 
</syntaxhighlight>
 
</syntaxhighlight>
'''<big>Step4</big>'''Copy the update.zip to SD or USB disk.  
+
 
 +
'''<big>Step2</big>''' Package the update.zip
 +
<syntaxhighlight lang="bash">$ make otapackage
 +
</syntaxhighlight>
 +
 
 +
'''<big>Step3</big>'''Rename the out/target/product/rk3399_box/rk3399_box-ota-eng.adv.zip to update.zip
 +
<syntaxhighlight lang="bash">$mv out/target/product/rk3399_box/rk3399_box-ota-eng.adv.zip update.zip
 +
</syntaxhighlight>
 +
 
 +
'''<big>Step4</big>'''Copy the update.zip to SD or USB disk.
  
 
'''<big>Step5</big>'''Follow Android update.
 
'''<big>Step5</big>'''Follow Android update.
  
 
+
&nbsp;
  
 
== <span style="color:#0070c0">How to do about update DS100 and DS100L Platform?</span> ==
 
== <span style="color:#0070c0">How to do about update DS100 and DS100L Platform?</span> ==
Line 166: Line 189:
 
LAN2 setting static ip example
 
LAN2 setting static ip example
  
 
+
&nbsp;
 
<syntaxhighlight lang="bash">$ ip rule add from all lookup main pref 9999
 
<syntaxhighlight lang="bash">$ ip rule add from all lookup main pref 9999
 
$ ifconfig eth1 172.12.1.2 netmask 255.255.0.0
 
$ ifconfig eth1 172.12.1.2 netmask 255.255.0.0
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 +
&nbsp;
  
 
== <span style="color:#0070c0">How to do about update form USB or SD card?</span> ==
 
== <span style="color:#0070c0">How to do about update form USB or SD card?</span> ==
Line 176: Line 200:
 
Step1 Create the OTA update.zip
 
Step1 Create the OTA update.zip
  
 
+
&nbsp;
 
<syntaxhighlight lang="bash">$ cd ~/rk3399/
 
<syntaxhighlight lang="bash">$ cd ~/rk3399/
 
$ make -j4
 
$ make -j4
 
$ make otapackage -j4
 
$ make otapackage -j4
 
$ ./mkimage.sh ota
 
$ ./mkimage.sh ota
</syntaxhighlight>Step2 Rename rk3399/out/target/product/rk3399_box/rk3399_box-ota-eng.adv.zip to update.zip Step3 Copy to the SD or USB disk
+
</syntaxhighlight>
  
<syntaxhighlight lang="bash">$ mv rk3399_box-ota-eng.adv.zip update.zip</syntaxhighlight> Step4 Insert the USB to DS100 or DS100Lite
+
Step2 Rename rk3399/out/target/product/rk3399_box/rk3399_box-ota-eng.adv.zip to update.zip Step3 Copy to the SD or USB disk
  
 +
&nbsp;
 +
<syntaxhighlight lang="bash">$ mv rk3399_box-ota-eng.adv.zip update.zip</syntaxhighlight>
 +
 +
Step4 Insert the USB to DS100 or DS100Lite
  
 
[[File:OTG1.JPG|400px|OTG1.JPG]]
 
[[File:OTG1.JPG|400px|OTG1.JPG]]
  
 
+
&nbsp;
  
 
Step5 Choose the Install
 
Step5 Choose the Install
  
 
+
&nbsp;
  
 
Step6
 
Step6
Line 198: Line 226:
 
[[File:OTG2.JPG|400px|OTG2.JPG]]
 
[[File:OTG2.JPG|400px|OTG2.JPG]]
  
 
+
&nbsp;
  
 
Step7
 
Step7
Line 204: Line 232:
 
[[File:OTG3.JPG|400px|OTG3.JPG]]
 
[[File:OTG3.JPG|400px|OTG3.JPG]]
  
== ==
+
== &nbsp; ==
  
 
== <span style="color:#0070c0">SD Card Update Solution</span> ==
 
== <span style="color:#0070c0">SD Card Update Solution</span> ==
Line 216: Line 244:
 
'''<big>Step2</big>''' Copy the Linux_rockdev_2015-06-17_for_RK3399.zip to Linux OS PC and Unzip it. You will get the rockdev folder.
 
'''<big>Step2</big>''' Copy the Linux_rockdev_2015-06-17_for_RK3399.zip to Linux OS PC and Unzip it. You will get the rockdev folder.
  
 
+
&nbsp;
 
<syntaxhighlight lang="bash">$ unzip Linux_rockdev_2015-06-17_for_RK3399.zip
 
<syntaxhighlight lang="bash">$ unzip Linux_rockdev_2015-06-17_for_RK3399.zip
 
$ cd rockdev
 
$ cd rockdev
 
$ sudo chmod -R 755 *
 
$ sudo chmod -R 755 *
</syntaxhighlight>'''<big>Step3</big>''' Create the new system image and boot image and revoery image. "./mkimage.sh ota"
+
</syntaxhighlight>
 +
 
 +
'''<big>Step3</big>''' Create the new system image and boot image and revoery image. "./mkimage.sh ota"
  
 +
&nbsp;
 
<syntaxhighlight lang="bash">$ cd ~/rk3399/
 
<syntaxhighlight lang="bash">$ cd ~/rk3399/
 
$ make -j4
 
$ make -j4
 
$ ./mkimage.sh ota
 
$ ./mkimage.sh ota
</syntaxhighlight> '''<big>Step4</big>''' Copy the "MiniLoaderAll.bin parameter.txt uboot.img trust.img misc.img kernel.img resource.img boot.img recovery.img system.img" to rockdev/Image '''<big>Step5</big>''' Modify the MiniLoader.bin path. (./rkImageMaker -RK330C Image/MiniLoaderAll.bin Image/update.img update.img -os_type:androidos || pause)<syntaxhighlight lang="bash">$ cd rockdev
+
</syntaxhighlight>
 +
 
 +
'''<big>Step4</big>''' Copy the "MiniLoaderAll.bin parameter.txt uboot.img trust.img misc.img kernel.img resource.img boot.img recovery.img system.img" to rockdev/Image '''<big>Step5</big>''' Modify the MiniLoader.bin path. (./rkImageMaker -RK330C Image/MiniLoaderAll.bin Image/update.img update.img -os_type:androidos || pause)
 +
<syntaxhighlight lang="bash">$ cd rockdev
 
$ vim mkupdate.sh
 
$ vim mkupdate.sh
</syntaxhighlight> '''<big>Step6</big>''' Run mkupdate.sh<syntaxhighlight lang="bash">$ ./mkupdate.sh
+
</syntaxhighlight>
  
</syntaxhighlight> '''<big>Step7</big>''' Get ok message&nbsp;: Making update.img OK.
+
'''<big>Step6</big>''' Run mkupdate.sh
[[File:Mkupdate.jpg|600px|Mkupdate.jpg]]
+
<syntaxhighlight lang="bash">$ ./mkupdate.sh
  
 +
</syntaxhighlight>
  
 +
'''<big>Step7</big>''' Get ok message&nbsp;: Making update.img OK. [[File:Mkupdate.jpg|600px|Mkupdate.jpg]]
 +
 +
&nbsp;
  
 
'''<big>Step8</big>''' Unzip SD_Firmware_Tool._v1.46.zip in Windows OS and Copy the update.img to SD_Firmware_Tool
 
'''<big>Step8</big>''' Unzip SD_Firmware_Tool._v1.46.zip in Windows OS and Copy the update.img to SD_Firmware_Tool
  
 
+
&nbsp;
  
 
'''<big>Step9</big>''' Please follow the picture (Red word). &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
 
'''<big>Step9</big>''' Please follow the picture (Red word). &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
Line 250: Line 288:
 
[[File:Sd tool.jpg|400px|Sd tool.jpg]]
 
[[File:Sd tool.jpg|400px|Sd tool.jpg]]
  
 
+
&nbsp;
  
 
'''<big>Step10</big>''' Create the Update SD card Success
 
'''<big>Step10</big>''' Create the Update SD card Success
Line 278: Line 316:
 
== <span style="color:#0070c0">Change Host/Client in OTG port?</span> ==
 
== <span style="color:#0070c0">Change Host/Client in OTG port?</span> ==
  
*[[IoTGateway/BSP/Android/Change_HOST/Client_Mode_in_OTG_port|Change HOST/Client Mode in OTG port]]
+
*[[IoTGateway/BSP/Android/Change_HOST/Client_Mode_in_OTG_port|Change HOST/Client Mode in OTG port]]  
  
 
[[File:Ds100.png|800px|Ds100.png]]
 
[[File:Ds100.png|800px|Ds100.png]]
  
 
[[File:Ds100l.png|800px|Ds100l.png]]
 
[[File:Ds100l.png|800px|Ds100l.png]]
 +
 
[[Category:Pages with broken file links]]
 
[[Category:Pages with broken file links]]

Latest revision as of 07:46, 28 October 2022

Android BSP Version

Android 7.1.2

Build Environment on Host

Currently, we adopt Docker as build environment.

You can get the latest version of advrisc/u16.04-imx6abv5 Docker image for developing Rockchip RK3399 projects.

Docker command:

docker pull advrisc/u16.04-imx6abv5:20170523 

Run Docker example

Step1 Run docker container (example)

 $ docker run -it --name android_n7 -v /home/bsp/myandroid:/home/adv/BSP:rw advrisc/u16.04-imx6abv5:20170523 /bin/bash

Step2 In container, change the user. (example)

 

 adv@7cc0fa834366:~$ sudo chown adv:adv -R BSP

Getting Android Source Code

To pull down the Android source tree to your working directory from the repositories as specified in the default manifest

$ mkdir myandroid
$ mkdir bin
$ cd myandroid/
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ../bin/repo
--------------------------------------------------------------------------------------------------
some time will be get the error message error [Errno 101] Network is unreachable
you can try
$ git clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo
$ cp -a git-repo/repo ../bin 
--------------------------------------------------------------------------------------------------
$ chmod a+x ../bin/repo
$ ../bin/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/Rockchip/_git/android-manifest -b android-7.1.2
or
$ ../bin/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/Rockchip/_git/android-manifest -b android-mid
or for deviceON + imm
$ ../bin/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/Rockchip/_git/android-manifest -b android-imm
or for DS211
$ ../bin/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/Rockchip/_git/android-manifest -b android-7.1.2_r6_ds211
or for Chengdu Airport
$ ../bin/repo init -u https://AIM-Linux@dev.azure.com/AIM-Linux/Rockchip/_git/android-manifest -b android-7.1.2_r6_ds211cd
$ ../bin/repo sync

Build Instructions

 

$ export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
$ export PATH=$JAVA_HOME/bin:$PATH
$ export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

Build U-boot

 

$ cd u-boot
$ make rk3399_box_defconfig
$ make ARCHV=aarch64 -j12

Build Kernel

Build for DS-100 platform

 

$ cd kernel
$ make ARCH=arm64 rockchip_ds100_defconfig
$ make ARCH=arm64 rk3399-ds100.img -j16

Build for DS-100Lite platform

 

$ cd kernel
$ make ARCH=arm64 rockchip_ds100l_defconfig
$ make ARCH=arm64 rk3399-ds100l.img -j16

Build for DS-211 platform

 

$ cd kernel
$ make ARCH=arm64 rockchip_ds211_defconfig
$ make ARCH=arm64 rk3399-ds211.img -j16

Build Android

 

$ source build/envsetup.sh 
$ lunch rk3399_box-userdebug 
$ make -j4 2>&1 | tee build-log.txt

Push all image to rockdev folder

 

$ ./mkimage.sh

All image in rockdev/Image-rk3399_box ./mkimage.sh at previous step will repack boot.img and system.img, and copy other related image files to the rockdev/Image-rk3399_box/ directory. The common image files are listed below:

 

# boot.img : Android's initramfs, to initialize and mount system partition. 
# kernel.img : Kernel image.
# misc.img : Misc partition image, to switch boot mode and pass parameter in recovery mode.
# recovery.img : Recovery mode image.
# resource.img : Resource image, containing boot logo and kernel's device tree info.
# system.img : System partition image with ext4 filesystem format.
# trust.img :File about sleep
# RK3399MiniLoaderAll_V1.05.bin :Loader
# uboot.img :uboot

 

ADB

1. Download adb tool in Windows system. Download path : *Platform-tools-windows

2. Check ADB : adb devices

3. ADB Connect : adb shell

Create OTA zip

Step1 After Build Android, you will be create image for OTA update.

$ ./mkimage.sh ota

Step2 Package the update.zip

$ make otapackage

Step3Rename the out/target/product/rk3399_box/rk3399_box-ota-eng.adv.zip to update.zip

$mv out/target/product/rk3399_box/rk3399_box-ota-eng.adv.zip update.zip

Step4Copy the update.zip to SD or USB disk.

Step5Follow Android update.

 

How to do about update DS100 and DS100L Platform?

Download AndroidTool_Release_v2.42.zip and DriverAssitant_v4.5.zip

https://github.com/ADVANTECH-Rockchip/rk3399_tools/tree/android_7.1.2

Step1 Connect with the OTG port and PC.

DS100Lite

Otg_ds100.jpeg

DS100

20180719_181034.jpg

Step2 Double click DriverInstall.

DriverAssitant.jpg

Step3 ADB or Debug console, send command "reboot bootloader"

242.jpg

Step4 Select the image path.

2422.jpg

Step5 Finish the update

24222.jpg

How to do about test LAN1 and LAN2?

DS100 : LAN1 support DHCP , LAN2 support Static IP

LAN2 setting static ip example

 

$ ip rule add from all lookup main pref 9999
$ ifconfig eth1 172.12.1.2 netmask 255.255.0.0

 

How to do about update form USB or SD card?

Step1 Create the OTA update.zip

 

$ cd ~/rk3399/
$ make -j4
$ make otapackage -j4
$ ./mkimage.sh ota

Step2 Rename rk3399/out/target/product/rk3399_box/rk3399_box-ota-eng.adv.zip to update.zip Step3 Copy to the SD or USB disk

 

$ mv rk3399_box-ota-eng.adv.zip update.zip

Step4 Insert the USB to DS100 or DS100Lite

OTG1.JPG

 

Step5 Choose the Install

 

Step6

OTG2.JPG

 

Step7

OTG3.JPG

 

SD Card Update Solution

RK3399 provide the tools for create the SD Card Update Solution.

Step1 Download tool Linux_rockdev_2015-06-17_for_RK3399.zip and SD_Firmware_Tool._v1.46.zip.

Download path : https://github.com/ADVANTECH-Rockchip/rk3399_tools/tree/android_7.1.2

Step2 Copy the Linux_rockdev_2015-06-17_for_RK3399.zip to Linux OS PC and Unzip it. You will get the rockdev folder.

 

$ unzip Linux_rockdev_2015-06-17_for_RK3399.zip
$ cd rockdev
$ sudo chmod -R 755 *

Step3 Create the new system image and boot image and revoery image. "./mkimage.sh ota"

 

$ cd ~/rk3399/
$ make -j4
$ ./mkimage.sh ota

Step4 Copy the "MiniLoaderAll.bin parameter.txt uboot.img trust.img misc.img kernel.img resource.img boot.img recovery.img system.img" to rockdev/Image Step5 Modify the MiniLoader.bin path. (./rkImageMaker -RK330C Image/MiniLoaderAll.bin Image/update.img update.img -os_type:androidos || pause)

$ cd rockdev
$ vim mkupdate.sh

Step6 Run mkupdate.sh

$ ./mkupdate.sh

Step7 Get ok message : Making update.img OK. Mkupdate.jpg

 

Step8 Unzip SD_Firmware_Tool._v1.46.zip in Windows OS and Copy the update.img to SD_Firmware_Tool

 

Step9 Please follow the picture (Red word).            

Step1 Choose the SD device.

Step2 Choose the "firmware update"

Step3. Choose the update.img path

Step4. Create the update SD

Sd tool.jpg

 

Step10 Create the Update SD card Success

Sd tool success.jpg

Step11 Please power off in DS100Lite.

Step12 Insert the SD card.

SD.JPG

Step13 Power on in DS100Lite.

Step14 Installing system update

UPDATE.JPG

Step15 Please Remove the SD Card when DS100Lite show the message "Doing Action succeeded. please remove the sdcard......".

REMOVE_SD.JPG

Step16 Reset DS100Lite.

Modules

Change Host/Client in OTG port?

Ds100.png

Ds100l.png