Adding support for Sercomm S1500 clones (Beeline SmartBox PRO, WiFire S1500.NBN)

Tag Header Kernel - factory image - Beeline SmartBox Pro:

Start Size Value(HEX) Value Description
0x0 0x4 53657200 Ser(ASCII) Signature Sercomm*
0x4 0x4 2e6f9601 01966f2e(LE) Start address Kernel + Size Kernel
0x8 0x4 002031e2 CRC32 Tag Header Kernel*
0xC 0x4 02ffffff Constant (Number of slots?)
0x10 0x4 00017001 01700100(LE) Start address Kernel (0x1700100 - Slot1)
0x14 0x4 2e6e2600 00266e2e(LE) Size Kernel (HEX)
0x18 0x4 639d177c CRC32 Kernel
0x1c 0x4 00000000 Zeros
0x20 0x4 ffffffff 0xFFFFFFFF
0x24 0x4 ffffffff 0xFFFFFFFF
0x28 0x4 0000f001 01f00000(LE) Start address RootFS (0x1f00000 - Slot1)
0x2c 0x4 00003e01 013e0000(LE) Size RootFS (HEX)
0x30 0x4 7ca3482c CRC32 RootFS
0x34 0x4 00000000 Zeros
0x38 0x4 ffffffff 0xFFFFFFFF to end of file
  • * At the time of calculation, CRC32 Tag Header Kernel, Signature Sercomm (0x0) & CRC32 Tag Header Kernel (0x4) are filled with 0xFFFFFFFF.
  • LE - Little Endian

Tag Header Kernel for Slot 1

xxd -c 4 -s $((0x200)) -l $((0x100)) SmartboxPro2015.img

00000200: 5365 7200  Ser.
00000204: 2e6f 9601  .o..
00000208: 0020 31e2  . 1.
0000020c: 02ff ffff  ....
00000210: 0001 7001  ..p.
00000214: 2e6e 2600  .n&.
00000218: 639d 177c  c..|
0000021c: 0000 0000  ....
00000220: ffff ffff  ....
00000224: ffff ffff  ....
00000228: 0000 f001  ....
0000022c: 0000 3e01  ..>.
00000230: 7ca3 482c  |.H,
00000234: 0000 0000  ....
00000238: ffff ffff  ....
*
000002fc: ffff ffff  ....
hexdump -C -s $((0x200)) -n $((0x100)) SmartboxPro2015.img
00000200  53 65 72 00 2e 6f 96 01  00 20 31 e2 02 ff ff ff  |Ser..o... 1.....|
00000210  00 01 70 01 2e 6e 26 00  63 9d 17 7c 00 00 00 00  |..p..n&.c..|....|
00000220  ff ff ff ff ff ff ff ff  00 00 f0 01 00 00 3e 01  |..............>.|
00000230  7c a3 48 2c 00 00 00 00  ff ff ff ff ff ff ff ff  ||.H,............|
00000240  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
00000300

Tag Header Kernel for Slot 2

xxd -c 4 -s $((0x300)) -l $((0x100)) SmartboxPro2015.img
00000300: 5365 7200  Ser.
00000304: 2e6f d601  .o..
00000308: faa9 c143  ...C
0000030c: 02ff ffff  ....
00000310: 0001 b001  ....
00000314: 2e6e 2600  .n&.
00000318: 639d 177c  c..|
0000031c: 0000 0000  ....
00000320: ffff ffff  ....
00000324: ffff ffff  ....
00000328: 0000 d003  ....
0000032c: 0000 3e01  ..>.
00000330: 7ca3 482c  |.H,
00000334: 0000 0000  ....
00000338: ffff ffff  ....
*
000003fc: ffff ffff  ....
hexdump -C -s $((0x300)) -n $((0x100)) SmartboxPro2015.img
00000300  53 65 72 00 2e 6f d6 01  fa a9 c1 43 02 ff ff ff  |Ser..o.....C....|
00000310  00 01 b0 01 2e 6e 26 00  63 9d 17 7c 00 00 00 00  |.....n&.c..|....|
00000320  ff ff ff ff ff ff ff ff  00 00 d0 03 00 00 3e 01  |..............>.|
00000330  7c a3 48 2c 00 00 00 00  ff ff ff ff ff ff ff ff  ||.H,............|
00000340  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
00000400

Differences between slots

Slot Kernel RootFS
1 0x01700100 0x01f00000
2 0x01b00100 0x03d00000
Add support for Sercomm S3 on stock uboot - #11 by kar200

Thanks for the help @kar200

1 Like