Generic NAND backup FW OEM
Connect via SSH or via UART
Create dumpCSN=$(hexdump -e '/2 "%1s"' -n $((0xC)) -s $((0x21010)) /dev/mtd2)
mkdir /tmp/$CSN; cd /tmp/$CSN;
for i in 0 1 2 3 4 5 6 7; do
echo "===Dump mtd$i.bin backup===";
nanddump -f mtd$i.bin /dev/mtd$i;
done
pwd
Copy the directory via SFTP or via TFTP, USB or any other method convenient for you. Example:
$ scp -r SuperUser@192.168.1.1:/tmp/SD2134F98765 SD2134F98765
with a client on a PC
Delete backup images from RAM router.
rm -r /tmp/$CSN
Create the remaining backupsmkdir /tmp/$CSN; cd /tmp/$CSN;
for i in 8 9 10; do
echo "===Dump mtd$i.bin backup===";
nanddump -f mtd$i.bin /dev/mtd$i;
done
Copy the directory via SFTP on PC.
Delete backup images from RAM.
Reference
Memoirs
The creation of a backup takes place in several stages due to the fact that the size of RAM and NAND are the same (128 MiB).
CSN - Serial Number Device.
A directory will be created with the name in the form of the serial number of the device in the /tmp directory with the images of the partitions.
Can be improved. Tried using GZ but no TAR. It turned out the wrong action, there is one combined file in the archive.
Old example for GIGA
CSN=$(hexdump -e '/2 "%1s"' -n $((0xC)) -s $((0x21010)) /dev/mtd2)
for i in 0 1 2 3 4 5 6 7 8 9 10; do
echo "===Dump mtd$i.bin backup===";
nanddump -f mtd$i.bin /dev/mtd$i;
md5sum mtd$i.bin >> mtd.md5;
gzip -c mtd$i.bin >> $CSN.gz;
done
gzip -c mtd.md5 >> $CSN.gz
1 Like
Image's OEM Stock FirmWare
SmartBox TURBO+
SmartBox TURBO
v. 1.0.02 - (build @ 2020-06-05, 19:08:35)
v. 1.0.03 - (build @ 2020-07-08, 02:15:32) - No URL
Etisalat S3
v. 2.0.05 - (build @ 2020-04-10, 23:52:54) - t.me
v. 3.0.04 - (build @ 2020-09-27, 06:31:51) - t.me
If there are more versions and/or links, let me know I will add it.
Example
wget -P /tmp https://static.beeline.ru/upload/images/Smart_Box_Turbo_v2.img
Notification of the Eurasian Economic Union
RU0000037523 - SmartBox Turbo
RU0000038338 - SmartBox Turbo+
RU0000043673 - RT-FE-1, RT-FL-1, RT-GE-1 GPON, RT-GM-1 GPON, S2, S3, Smart Box GIGA, Smart Box 2
RU0000051838 - RT-FE-1A, RT-SF-1, RT-GE-1A, RT-SG-1
URL
2 Likes
OpenWRT images for testing on a device
Have not yet accepted a Pull Request in OpenWRT
Development Snapshot builds
Old
Stable Release builds
Sercomm S3 CQR - Beeline SmartBox TURBO+
Sercomm S3 DF3 - Beeline SmartBox TURBO
Sercomm S3 DDK - Etisalat Sercomm S3
Sercomm S3 DKG - Rostelecom Sercomm RT-SF-1
Sercomm S3 CX4 - Rostelecom Sercomm RT-FE-1(A)
OpenWrt for:
Beeline Smartbox Turbo+
Beeline Smartbox GIGA
Beeline Smartbox Turbo
Beeline Smartbox PRO
WiFire S1500.NBN
Device commit has not been accepted yet, so here is the compiled OpenWrt release binaries:
Old <a href="https://mega.nz/file/w0pRiI4B#mOE_Ektpw8s2QtVtWkSIVBZFo6b1N_f7_CC71FRyxEk" rel="noopener nofollow ugc">https://mega.nz/file/w0pRiI4B#mOE_Ektpw8s2QtVtWkSIVBZFo6b1N_f7_CC71FRyxEk</a>
v2:
<a href="https://mega.nz/file/9soVRIrA#-_hXso…
1 Like
Beeline SmartBox TURBO (not +)
There is information about the existence of another Sercomm S3 clone - Beeline SmartBox Turbo. There is not much known information yet.
Differences
NAND flash: 256 MiB
Ethetnet interfaces have LEDs (Green)
CSN: SN2F********
MAC LAN: E0:0E:E4:**:**:**
Manufacturer's code: 0DF30500QW1
NFS? code (Код НФС): 930000610
Thank neopiten [1] [2] .
NAND device: Manufacturer ID: 0x2c, Chip ID: 0xda (Micron NAND 256MiB 3,3V 8-bit), 128MiB, page size: 2048, OOB size: 128
Photo Device
Hide
Screenshot of the stock firmware web interface
Hide
Thank MellonMike [1] [2] .
Firmware
In web interface - TURBO+
view @ Smart Box TURBO> show sysinfo
Vendor: Sercomm
Model: Smart Box TURBO
CPU: MT7621
Firmware Version: v1.0.03
Build Time: (build @ 2020-07-08, 02:15:32)
Hardware Version: v1
Bootloader Version: 2.0.1.0
Serial Number: SN2F********
Time Since Last Boot: 0:48:09
Reboot Cause:
Product Class: Smart Box TURBO
Current Time: 2020-07-08 03:03:02
1 Like
ZigBee on SmartBox TURBO+
EFR32MG1B232GG
Baudrate - 57600
UART-EZSP Gateway Protocol
Probe CLI
opkg update
opkg install git-http python3-pip
cd /tmp
git clone https://github.com/Elelabs/elelabs-zigbee-ezsp-utility.git
cd elelabs-zigbee-ezsp-utility
pip3 install -r requirements.txt
python3 Elelabs_EzspFwUtility.py probe -p /dev/ttyS1 -b 57600
root@OpenWrt:/tmp/elelabs-zigbee-ezsp-utility# python3 Elelabs_EzspFwUtility.py
restart -m btl -p /dev/ttyS1 -b 57600
2022/01/22 19:36:32 Elelabs_EzspFwUtility: Generic Zigbee EZSP adapter detected:
2022/01/22 19:36:32 Elelabs_EzspFwUtility: Firmware: 6.2.0-147
2022/01/22 19:36:32 Elelabs_EzspFwUtility: EZSP v6
2022/01/22 19:36:32 Elelabs_EzspFwUtility: Launch in bootloader mode
2022/01/22 19:36:43 Elelabs_EzspFwUtility: EZSP adapter in bootloader mode detected:
2022/01/22 19:36:43 Elelabs_EzspFwUtility: EFR32 Serial Btl v6.2.1.3 b0
On Home Assistant
Example
opkg install ser2net luci-i18n-ser2net-ru
vi /etc/ser2net.conf
5000:raw:0:/dev/ttyS1:57600 NONE 1STOPBIT 8DATABITS XONXOFF LOCAL -RTSCTS remctl
# on Host
sudo socat pty,raw,link=/dev/ttyVS1 tcp:192.168.1.1:5000
Thank Harwest & lmahmutov
URLs:
1 Like
SSH for FirmWare OEM v1.0.03 on Beeline SmartBox TURBO
Login to the web interface http://192.168.1.1/ (by default) under SuperUser (root) credentials. Password: SDXXXXXXXXXX, where SDXXXXXXXXXX is serial number of the device written on the backplate stick.
Login: SuperUser
Password: SNXXXXXXXXXX
Configure WAN. Navigate to:
->Setting
-> WAN
-> ADD
* Name - WAN1
* Connection Type - Static
* IP Address - 172.16.0.1
* Netmask - 255.255.255.0
-> Save
-> Apply
Default WAN1
Enable SSH and HTTP on WAN.
->Setting
-> Remote control
-> ADD
* Protocol - SSH
* Port - 22
* IP Address - 172.16.0.1
* Netmask - 255.255.255.0
* WAN Interface - WAN1
-> Save
-> Apply
-> ADD
* Protocol - HTTP
* Port - 80
* IP Address - 172.16.0.1
* Netmask - 255.255.255.0
* WAN Interface - WAN1
-> Save
-> Apply
Set up on PC
* Connection Type - Static
* IP Address - 172.16.0.2
* Netmask - 255.255.255.0
* Gateway - 172.16.0.1
Connect PC cable to WAN TURBO
Connect SSH. Example on Linux without key saving.
$ ssh -o "UserKnownHostsFile /dev/null" SuperUser@172.16.0.1
Start shell
view @ Smart Box TURBO+> sh
Referance:
1 Like
Generic NAND backup FW OEM via TFTP
Prepare TFTP server* on PC - Setting up a TFTP server for TFTP Recovery/Install
Connect via SSH
Create dump mtd. Enter your address in the "IP=" variable.
CSN=$(hexdump -e '/2 "%1s"' -n $((0xC)) -s $((0x21010)) /dev/mtd2)
IP=172.16.0.2
cd /tmp
echo $CSN >> mtd.md5
for i in 0 1 2 3 4 5 6 7 8 9 10; do
echo "===Dump mtd$i.bin backup===";
nanddump -f mtd$i.bin /dev/mtd$i;
tftp -l mtd$i.bin -p $IP;
md5sum mtd$i.bin >> mtd.md5;
rm mtd$i.bin;
done
tftp -l mtd.md5 -p $IP
rm mtd.md5
echo "=== Finish backup ==="
Thank @csharper2005
*People are reporting that dnsmasq is not working.
tftp: server error: (4) unsupported request from 172.16.0.1
Version
Dnsmasq version 2.86 Copyright (c) 2000-2021 Simon Kelley
Compile time options: IPv6 GNU-getopt DBus no-UBus i18n IDN2 DHCP DHCPv6 no-Lua TFTP conntrack ipset auth cryptohash DNSSEC loop-detect inotify dumpfile
The method seems to be universal for the entire CPE Sercomm mt7621, only the number of required mtd partitions differs.
Vendor
Label
MTD**
Sercomm S1500 AWI
Beeline SmartBox PRO
12
Sercomm S1500 BUC
WiFire S1500.NBN
10
Sercomm S3 CQR
Beeline SmartBox TURBO+
9
Sercomm S3 DF3
Beeline SmartBox TURBO
10
Sercomm S3 DDK
Etisalat Sercomm S3
9
Sercomm S2 DBE
Beeline SmartBox GIGA
10
** The number of the last required mtd from mtd0 (skipping the section if there is one with BBT).
An alternative way using gz & tar on TURBO sends as a single file.
CSN=$(hexdump -e '/2 "%1s"' -n $((0xC)) -s $((0x21010)) /dev/mtd2)
IP=10.10.10.3
mkdir /tmp/$CSN; cd /tmp/$CSN;
for i in 0 1 2 3 4 5 6 7 8 9 10; do
echo "===Dump mtd$i.bin backup===";
nanddump -f mtd$i.bin /dev/mtd$i;
md5sum mtd$i.bin >> mtd.md5;
gzip -c mtd$i.bin >> mtd$i.gz;
rm mtd$i.bin;
done
tar -cvf $CSN.gz.tar .
tftp -l $CSN.gz.tar -p $IP
cd /tmp; rm -r /tmp/$CSN
echo "=== Finish backup ==="
Reference
1 Like
Installing OpenWRT on SmartBox TURBO via mtd-utils
Generic NAND backup
Prepare TFTP server on PC (Or directly from a USB flash drive)
sudo atftpd --daemon --no-fork --user $USER.users --logfile - CatalogFolderOpenWRT
Connect via SSH (Or directly with UART)
cd /tmp
tftp -r openwrt-21.02.2-ramips-mt7621-beeline_smartbox-turbo-squashfs-kernel.bin -g 172.16.0.1
tftp -r openwrt-21.02.2-ramips-mt7621-beeline_smartbox-turbo-squashfs-rootfs.bin -g 172.16.0.1
mtd_debug erase /dev/mtd4 0x0 0x600000
mtd_debug write /dev/mtd4 0 $(ls -l openwrt-21.02.2-ramips-mt7621-beeline_smartbox-turbo-squashfs-kernel.bin | awk -F' ' '{print $5}') openwrt-21.02.2-ramips-mt7621-beeline_smartbox-turbo-squashfs-kernel.bin
mtd_debug erase /dev/mtd6 0x0 0x2000000
mtd_debug write /dev/mtd6 0 $(ls -l openwrt-21.02.2-ramips-mt7621-beeline_smartbox-turbo-squashfs-rootfs.bin | awk -F' ' '{print $5}') openwrt-21.02.2-ramips-mt7621-beeline_smartbox-turbo-squashfs-rootfs.bin
printf 0 | dd of=/dev/mtdblock3 bs=1 seek=7 count=1
reboot
2 Likes
Repository for ongoing development and testing
GitLab.com
United devices on the same S3 platform:
Beeline SmartBox TURBO+
Beeline SmartBox TURBO
Etisalat Sercomm S3
A little bump for the best value router aka SmartBox TURBO+. When is it gonna be added to the official openwrt repo?
Also wanted to point out that your patches have been working very well so far, I've been using TURBO+ for almost a year now. It's kinda sad that getting them in mainstream is taking so long.
1 Like
I wonder if Turbo+ can benefit from this Users needed to test 2 Gbps WAN/LAN NAT Routing on ramips MT7621 devices . I really hope maintainers would approve Turbo+ PR so the mux switch dev could look into our device.
1 Like
Yes, this PR will be useful for TURBO+ & TURBO .
arinc9
July 15, 2022, 9:42pm
50
Why not incorporate my patch series into your own patch?
for-turbo-plus.patch
From 000f4561bb3f2947ab983f6633249c346440aedf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ar=C4=B1n=C3=A7=20=C3=9CNAL?= <nospam>
Date: Fri, 15 Jul 2022 23:52:43 +0300
Subject: [PATCH] fixup! ramips: Add support for Beeline SmartBox TURBO+
---
.../mt7621_beeline_smartbox-turbo-plus.dts | 2 +-
.../linux/ramips/dts/mt7621_sercomm_s3.dtsi | 24 +++++++++----------
2 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/target/linux/ramips/dts/mt7621_beeline_smartbox-turbo-plus.dts b/target/linux/ramips/dts/mt7621_beeline_smartbox-turbo-plus.dts
index 547848a3c5..10968abc09 100644
--- a/target/linux/ramips/dts/mt7621_beeline_smartbox-turbo-plus.dts
+++ b/target/linux/ramips/dts/mt7621_beeline_smartbox-turbo-plus.dts
@@ -125,7 +125,7 @@
nvmem-cell-names = "mac-address";
};
-&wan {
+&gmac1 {
nvmem-cells = <&macaddr_factory_21000>;
nvmem-cell-names = "mac-address";
mac-address-increment = <1>;
diff --git a/target/linux/ramips/dts/mt7621_sercomm_s3.dtsi b/target/linux/ramips/dts/mt7621_sercomm_s3.dtsi
index c783883b18..fe1bf23108 100644
--- a/target/linux/ramips/dts/mt7621_sercomm_s3.dtsi
+++ b/target/linux/ramips/dts/mt7621_sercomm_s3.dtsi
@@ -76,13 +76,20 @@
};
};
+&gmac1 {
+ status = "okay";
+ label = "wan";
+ phy-handle = <ðphy0>;
+};
+
+&mdio {
+ ethphy0: ethernet-phy@0 {
+ reg = <0>;
+ };
+};
+
&switch0 {
ports {
- wan: port@0 {
- status = "okay";
- label = "wan";
- };
-
port@1 {
status = "okay";
label = "lan1";
@@ -104,10 +111,3 @@
};
};
};
-
-&state_default {
- gpio {
- groups = "jtag", "uart2";
- function = "gpio";
- };
-};
--
2.34.1
for-turbo.patch
From 46fc1e7cbd7cb9ba292c6afabbf1db9694085add Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ar=C4=B1n=C3=A7=20=C3=9CNAL?= <nospam>
Date: Sat, 16 Jul 2022 00:20:16 +0300
Subject: [PATCH] fixup! ramips: add support for Beeline SmartBox TURBO
---
.../dts/mt7621_beeline_smartbox-turbo.dts | 32 +++++++++----------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/target/linux/ramips/dts/mt7621_beeline_smartbox-turbo.dts b/target/linux/ramips/dts/mt7621_beeline_smartbox-turbo.dts
index d987046a0f..bb7de2842e 100644
--- a/target/linux/ramips/dts/mt7621_beeline_smartbox-turbo.dts
+++ b/target/linux/ramips/dts/mt7621_beeline_smartbox-turbo.dts
@@ -202,17 +202,24 @@
nvmem-cell-names = "mac-address";
};
-&switch0 {
- ports {
- port@0 {
- status = "okay";
- label = "wan";
+&gmac1 {
+ status = "okay";
+ label = "wan";
+ phy-handle = <ðphy0>;
- nvmem-cells = <&macaddr_factory_21000>;
- nvmem-cell-names = "mac-address";
- mac-address-increment = <(1)>;
- };
+ nvmem-cells = <&macaddr_factory_21000>;
+ nvmem-cell-names = "mac-address";
+ mac-address-increment = <(1)>;
+};
+&mdio {
+ ethphy0: ethernet-phy@0 {
+ reg = <0>;
+ };
+};
+
+&switch0 {
+ ports {
port@1 {
status = "okay";
label = "lan1";
@@ -238,10 +245,3 @@
&uartlite3 {
status = "okay";
};
-
-&state_default {
- gpio {
- groups = "jtag", "uart2";
- function = "gpio";
- };
-};
--
2.34.1
Apply the patch file with git am
, apply the fixup on your original commit with git rebase -i --autosquash HEAD~2
.
2 Likes
I thought that we also need the changes in mt7621.dtsi. if I understand you correctly this not required for turbo(+). Right?
arinc9
July 16, 2022, 7:14am
52
That’s right. There’s only the patch for removing the DTS_LEGACY flag you should care about, which only matters for the 5.15 kernel. However, by the time the 5.15 kernel is taken out of the testing stage, my patch series are likely to be already applied.
1 Like
Ok)
Need to add commits from your PR and patch above?
arinc9
July 16, 2022, 9:25am
54
My PR is irrelevant in this case. Just apply the patch I've sent here.