Project

General

Profile

SB30 OTA Guide » History » Version 1

Lion Wang, 08/06/2021 09:46 AM

1 1 Lion Wang
h1. SB30 OTA Guide
2
3
Update device.mk & BoardConfig.mk
4
5
1. Modify device/inoco/sb30/device.mk
6
Update OTA url (persist.vendor.otaurl) to customer's server.
7
For example, update OTA url to "https://www.custurl.com"
8
9
persist.vendor.otaurl=https://www.custurl.com/download/SB30.json
10
11
2. Apply "sb30_ota.patch"
12
13
Index: device/inoco/sb30/BoardConfig.mk
14
===================================================================
15
--- device/inoco/sb30/BoardConfig.mk
16
+++ device/inoco/sb30/BoardConfig.mk
17
@@ -16,6 +16,9 @@
18
 endif
19
 BOARD_FLASH_BLOCK_SIZE := 4096
20
21
+#build timestamp
22
+BUILD_NUMBER := $(shell date +%s)
23
+
24
 # Add path of project sepolicy folder
25
 BOARD_SEPOLICY_DIRS += \
26
     device/inoco/$(MTK_TARGET_PROJECT)/sepolicy
27
28
3. Build OTA package
29
$ export INOCO_RPI=yes
30
$ source build/envsetup.sh
31
$ lunch sb30-userdebug
32
$ make -j8
33
$ make otapackage
34
$ export INOCO_RPI=
35
36
The ota package will be located at out/target/product/sb30/sb30-ota-???.zip
37
38
OTA by local
39
ABOTAUpdate App > Option menu > Pick File > Select "sb30-ota-???.zip"
40
41
OTA by server
42
Extract "sb30-ota-???.zip", you can find version/hash/size/incremental information as below to modify SB30.json.
43
44
For example, extract sb30-ota-eng.lin.zip:
45
46
sb30-ota-eng.lin/payload.bin (This is the OTA download file)
47
sb30-ota-eng.lin/payload_properties.txt
48
FILE_HASH=KrcnrqCzAIcnnjc1ysoVY0jpIgDPsVPB9oGjjyg34fI=
49
FILE_SIZE=411430579
50
METADATA_HASH=ePssh8AaT6JuDcQznmqq/kHi+ZwSUr2tBXEXwq4xLnQ=
51
METADATA_SIZE=110793
52
53
sb30-ota-eng.lin/META-INF/com/android/metadata
54
post-build-incremental=1581318174
55
Upload SB30.json to https://www.custurl.com/download/
56
Upload payload.bin to https://www.custurl.com/download/
57
58
SB30.json:
59
60
{
61
    "master":{
62
        "version":"1581318174",
63
        "url":"https://www.custurl.com/download/payload.bin",
64
        "description":"This is Note for Master, upgrade to version 1581318174",
65
        "FILE_HASH":"KrcnrqCzAIcnnjc1ysoVY0jpIgDPsVPB9oGjjyg34fI=",
66
        "FILE_SIZE":411430579,
67
        "METADATA_HASH":"ePssh8AaT6JuDcQznmqq/kHi+ZwSUr2tBXEXwq4xLnQ=",
68
        "METADATA_SIZE":110793
69
    }
70
}
71
ABOTAUpdate App will compare "version"(the value of ro.build.version.incremental) from this content and then use TAG "url" as downloading path.
72
If your firmware version is NUM_VERSION_A and then you will download version_a+.bin as your new firmware.
73
If your firmware version can't be found through JSON file, and your firmware version is older than NUM_VERSION_B, then you will download "master" url specified version_b.bin as your new firmware.
74
Sample Content of SB30.json
75
76
{
77
78
    "master":{
79
        "version":"NUM_VERSION_B",
80
        "url":"https://www.custurl.com/download/version_b.bin",
81
...
82
    },
83
    "NUM_VERSION_A":{
84
        "version":"NUM_VERSION_A+",
85
        "url":"https://www.custurl.com/download/version_a+.bin",
86
...
87
    }
88
}