Project

General

Profile

SB30 OTA Guide » History » Version 2

Lion Wang, 08/06/2021 09:47 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 2 Lion Wang
sb30_ota.patch can download from 
13
https://support.innocomm.com/redmine/attachments/download/3/sb30_ota.patch
14 1 Lion Wang
15
16
3. Build OTA package
17
$ export INOCO_RPI=yes
18
$ source build/envsetup.sh
19
$ lunch sb30-userdebug
20
$ make -j8
21
$ make otapackage
22
$ export INOCO_RPI=
23
24
The ota package will be located at out/target/product/sb30/sb30-ota-???.zip
25
26
OTA by local
27
ABOTAUpdate App > Option menu > Pick File > Select "sb30-ota-???.zip"
28
29
OTA by server
30
Extract "sb30-ota-???.zip", you can find version/hash/size/incremental information as below to modify SB30.json.
31
32
For example, extract sb30-ota-eng.lin.zip:
33
34
sb30-ota-eng.lin/payload.bin (This is the OTA download file)
35
sb30-ota-eng.lin/payload_properties.txt
36
FILE_HASH=KrcnrqCzAIcnnjc1ysoVY0jpIgDPsVPB9oGjjyg34fI=
37
FILE_SIZE=411430579
38
METADATA_HASH=ePssh8AaT6JuDcQznmqq/kHi+ZwSUr2tBXEXwq4xLnQ=
39
METADATA_SIZE=110793
40
41
sb30-ota-eng.lin/META-INF/com/android/metadata
42
post-build-incremental=1581318174
43
Upload SB30.json to https://www.custurl.com/download/
44
Upload payload.bin to https://www.custurl.com/download/
45
46
SB30.json:
47
48
{
49
    "master":{
50
        "version":"1581318174",
51
        "url":"https://www.custurl.com/download/payload.bin",
52
        "description":"This is Note for Master, upgrade to version 1581318174",
53
        "FILE_HASH":"KrcnrqCzAIcnnjc1ysoVY0jpIgDPsVPB9oGjjyg34fI=",
54
        "FILE_SIZE":411430579,
55
        "METADATA_HASH":"ePssh8AaT6JuDcQznmqq/kHi+ZwSUr2tBXEXwq4xLnQ=",
56
        "METADATA_SIZE":110793
57
    }
58
}
59
ABOTAUpdate App will compare "version"(the value of ro.build.version.incremental) from this content and then use TAG "url" as downloading path.
60
If your firmware version is NUM_VERSION_A and then you will download version_a+.bin as your new firmware.
61
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.
62
Sample Content of SB30.json
63
64
{
65
66
    "master":{
67
        "version":"NUM_VERSION_B",
68
        "url":"https://www.custurl.com/download/version_b.bin",
69
...
70
    },
71
    "NUM_VERSION_A":{
72
        "version":"NUM_VERSION_A+",
73
        "url":"https://www.custurl.com/download/version_a+.bin",
74
...
75
    }
76
}