Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| inbox:toh:beeline:smartbox_giga [2022/06/23 08:08] – [Flash Layout] csharper2005 | toh:beeline:smartbox_giga [2024/09/05 19:01] (current) – [sercomm-recovery utility] csharper2005 | ||
|---|---|---|---|
| Line 5: | Line 5: | ||
| /* USE https:// | /* USE https:// | ||
| - | {{page> | + | /* {{page> |
| The Beeline SmartBox GIGA is a wireless router based on the MT7621 platform with USB 3.0 port. While it can be acquired for relatively low cost (especially on avito.ru) compared to other units with similar specifications. | The Beeline SmartBox GIGA is a wireless router based on the MT7621 platform with USB 3.0 port. While it can be acquired for relatively low cost (especially on avito.ru) compared to other units with similar specifications. | ||
| Line 13: | Line 13: | ||
| /*****/ | /*****/ | ||
| - | {{media: | + | {{media: |
| ===== Supported Versions ===== | ===== Supported Versions ===== | ||
| - | <color red> | + | <!-- ToH: { |
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } --> | ||
| - | [[https:// | + | ===== Experimental |
| - | ---- datatable ---- | + | * [[https:// |
| - | cols | + | |
| - | headers : Brand, Model, Version, Current Release, OEM Info, Forum Search, Technical Data | + | |
| - | align : c, | + | |
| - | filter | + | |
| - | filter | + | |
| - | ---- | + | |
| ===== Hardware Highlights ===== | ===== Hardware Highlights ===== | ||
| - | ---- datatable ---- | + | <!-- ToH: { |
| - | cols | + | " |
| - | header | + | " |
| - | align : c,c, | + | " |
| - | filter | + | " |
| - | filter | + | |
| - | ---- | + | |
| + | } --> | ||
| - | ===== Installation | + | ===== Backup |
| - | /* stable release */ | + | It's recommended to make a mtd backup before you start: |
| - | /* uncomment once stable release is available | + | |
| - | ---- datatable ---- | + | |
| - | cols | + | |
| - | headers : Model, Version, Current Release, Firmware OpenWrt Install, Firmware OpenWrt Upgrade, Firmware OEM Stock | + | |
| - | align : c,c,c | + | |
| - | filter | + | |
| - | filter | + | |
| - | ---- | + | |
| - | */ | + | |
| + | 1. [[: | ||
| - | /* snapshot */ | + | 2. Set up a tftp server (e.g. tftpd64 for windows) |
| - | /* delete once stable release is available */ | + | |
| - | ---- datatable ---- | + | |
| - | cols : Model, Versions, Supported Current Rel, Firmware OpenWrt snapshot Install URL_url, Firmware OpenWrt snapshot Upgrade URL_url, Firmware OEM Stock URL_url | + | |
| - | headers : Model, Version, Current Release, Firmware OpenWrt snapshot Install, Firmware OpenWrt snapshot Upgrade, Firmware OEM Stock | + | |
| - | align : c,c,c | + | |
| - | filter | + | |
| - | filter | + | |
| - | ---- | + | |
| + | 3. Connect to a router using SSH shell and run the following commands: | ||
| + | <code bash> | ||
| + | cd /tmp | ||
| + | for i in 0 1 2 3 4 5 6 7 8 9 10 11; do nanddump -f mtd$i /dev/mtd$i; \ | ||
| + | tftp -l mtd$i -p 10.0.0.2; md5sum mtd$i >> mtd.md5; rm mtd$i; done | ||
| + | tftp -l mtd.md5 -p 10.0.0.2 | ||
| + | </ | ||
| + | 10.0.0.2 - IP of the tftp server | ||
| - | -> [[docs: | + | 4. Check backups in your tftp root folder. |
| - | 1. Downgrade stock (Beeline) firmware to v.1.0.02 | ||
| - | 2. Give factory OpenWrt image a shorter name, e.g. 1001.img. Or just remove all dots (except before file extension) from the file name. | + | ===== Installation ===== |
| - | 3. Upload and update the firmware via the original web interface. | ||
| - | Remark: | + | /* stable release */ |
| - | You might need make the 3rd step twice if your running firmware is booted from the Slot 1 (Sercomm0 bootflag). The stock firmware reverses the bootflag (Sercomm0 | + | |
| - | ===== Return to Stock ===== | + | <!-- ToH: { |
| - | 1. Change the bootflag to Sercomm1 in OpenWrt CLI and then reboot: | + | " |
| - | | + | " |
| - | 2. Optional: Update with any stock (Beeline) firmware if you want to overwrite OpenWrt in Slot 0 completely. | + | " |
| + | " | ||
| + | " | ||
| + | " | ||
| + | } --> | ||
| - | ==== Flash Layout | + | -> [[docs: |
| - | <WRAP BOX> | + | |
| - | ^ mtd ^ partition | + | ==== OpenWrt installation |
| - | | 0 | u-boot | + | |
| - | | 1 | dynamic partition map | 0x100000 | + | |
| - | | 2 | Factory | + | |
| - | | 3 | Boot Flag | 0x300000 | + | |
| - | | 4 | kernel | + | |
| - | | 5 | Kernel 2 | 0xa00000 | + | |
| - | | 6 | File System 1 | 0x1000000 | + | |
| - | | 7 | File System 2 | 0x2800000 | + | |
| - | | 8 | Configuration/ | + | |
| - | | 9 | application tmp buffer (Ftool) | + | |
| - | | 10 | container | + | |
| - | | 11 | bad block reserved | + | |
| + | <WRAP round info 100%> | ||
| + | **CAUTION: | ||
| + | If you have any third-party firmware (e.g. Padavan, Keenetic, AsusWrt, non-official OpenWrt community builds (especially for Breed bootloader) etc.) installed on your device it's strongly recommended to restore original OEM firmware (including bootloader, EEPROM, partition map etc.) from your backup before you start the OpenWrt installation on your device. | ||
| </ | </ | ||
| + | |||
| + | 1. Install stock Beeline v.1.0.02 firmware twice | ||
| + | |||
| + | 2. Remove all dots from the OpenWrt //factory image// file name | ||
| + | |||
| + | 3. Install OpenWrt //factory image// via the original web interface | ||
| + | |||
| + | Remark: | ||
| + | You might need make the 3rd step twice if your running firmware is booted from the Slot 1 (Sercomm0 bootflag). The stock firmware reverses the bootflag (Sercomm0 / Sercomm1) on each firmware update. | ||
| ==== OEM easy installation ==== | ==== OEM easy installation ==== | ||
| - | See Installation section | + | See [[: |
| ==== OEM installation using the TFTP method ==== | ==== OEM installation using the TFTP method ==== | ||
| Line 108: | Line 103: | ||
| Not applicable | Not applicable | ||
| + | ===== Obtaining SSH access on the stock firmware ===== | ||
| + | |||
| + | 1. Login to the router web interface (admin: | ||
| + | |||
| + | 2. Navigate to Settings -> WAN -> Add static IP interface (e.g. 10.0.0.1/ | ||
| + | |||
| + | 3. Navigate to Settings -> Remote cotrol -> Add SSH, port 22, 10.0.0.0/ | ||
| + | |||
| + | 4. Change IP of your client to 10.0.0.2/ | ||
| + | |||
| + | 5. Connect to the router using SSH shell (SuperUser: | ||
| + | |||
| + | 6. Run in SSH shell: | ||
| + | <code bash> | ||
| + | sh | ||
| + | </ | ||
| + | |||
| + | ===== Flash Layout ===== | ||
| + | |||
| + | ^ mtd ^ partition | ||
| + | | mtd0 | u-boot | ||
| + | | mtd1 | dynamic partition map | 0x100000 | ||
| + | | mtd2 | Factory | ||
| + | | mtd3 | Boot Flag | 0x300000 | ||
| + | | mtd4 | kernel | ||
| + | | mtd5 | Kernel 2 | 0xa00000 | ||
| + | | mtd6 | File System 1 | 0x1000000 | ||
| + | | mtd7 | File System 2 | 0x2800000 | ||
| + | | mtd8 | Configuration/ | ||
| + | | mtd9 | application tmp buffer (Ftool) | ||
| + | | mtd10 | container | ||
| + | | mtd11 | bad block reserved | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| + | |||
| ===== Upgrading OpenWrt ===== | ===== Upgrading OpenWrt ===== | ||
| -> [[docs: | -> [[docs: | ||
| Line 132: | Line 165: | ||
| * Login as root via SSH on 192.168.1.1, | * Login as root via SSH on 192.168.1.1, | ||
| - | < | + | < |
| cd /tmp | cd /tmp | ||
| sysupgrade / | sysupgrade / | ||
| </ | </ | ||
| + | |||
| + | ===== Return to Stock ===== | ||
| + | 1. Change the bootflag to Sercomm1 in OpenWrt CLI and then reboot: | ||
| + | <code bash> | ||
| + | printf 1 | dd bs=1 seek=7 count=1 of=/ | ||
| + | </ | ||
| + | |||
| + | 2. Optional: Update with any stock (Beeline) firmware if you want to overwrite OpenWrt in Slot 0 completely. | ||
| ===== Debricking ===== | ===== Debricking ===== | ||
| -> [[docs: | -> [[docs: | ||
| - | ===Recovery steps=== | + | ==== sercomm-recovery utility |
| + | 1. Compile [[https:// | ||
| + | <code bash> | ||
| + | git clone https:// | ||
| + | make | ||
| + | </ | ||
| - | 1. Compile sercomm-recovery under the Linux: | ||
| - | git clone https:// | ||
| - | make | ||
| 2. Connect the router with a cable and run sercomm-recovery: | 2. Connect the router with a cable and run sercomm-recovery: | ||
| - | sudo ./ | + | <code bash> |
| + | sudo ./ | ||
| + | </ | ||
| where //enp0s3// - network interface connected the router, // | where //enp0s3// - network interface connected the router, // | ||
| 3. Wait until the router is flashed and rebooted. | 3. Wait until the router is flashed and rebooted. | ||
| - | [[https:// | + | [[https:// |
| - | ===How to make own recovery images== | + | === How to make own recovery images |
| Contcat all mtd backup into one file: | Contcat all mtd backup into one file: | ||
| - | cat mtd0 ... mtd10 > full.bin | + | <code bash> |
| + | cat mtd0 mtd1 mtd2 mtd3 mtd4 mtd5 mtd6 mtd7 mtd8 mtd9 mtd10 mtd11 > full.bin | ||
| + | </ | ||
| Add OOB data: | Add OOB data: | ||
| - | bbe -b ": | + | <code bash> |
| + | bbe -b ": | ||
| + | </ | ||
| + | |||
| + | ==== tftp method ==== | ||
| + | |||
| + | 1. Run tftp server on IP 10.10.10.3/ | ||
| + | |||
| + | 2. Rename initramfs OpenWrt image to test.bin and copy it to the tftp root | ||
| + | |||
| + | 3. Connect UART, power on the router and interrupt the boot process by pressing any key | ||
| + | |||
| + | 4. In U-Boot command console run: | ||
| + | <code bash> | ||
| + | tftpboot | ||
| + | bootm | ||
| + | </ | ||
| + | |||
| + | 5. Wait until OpenWrt boots | ||
| + | |||
| + | 6. Make sysupgrade to install OpenWrt on NAND flash of the router | ||
| ===== Failsafe mode ===== | ===== Failsafe mode ===== | ||
| -> [[docs: | -> [[docs: | ||
| Line 169: | Line 237: | ||
| ===== Specific Configuration ===== | ===== Specific Configuration ===== | ||
| - | |||
| - | <WRAP BOX> | ||
| ==== Network interfaces ==== | ==== Network interfaces ==== | ||
| The default network configuration is: | The default network configuration is: | ||
| - | ^ Interface Name ^ Description | + | ^ Interface Name ^ Description |
| - | | br-lan | + | | br-lan |
| - | | lan1, lan2 | LAN ports (1 & 2) | br-lan | + | | lan1, lan2 | LAN ports (1 & 2) |
| - | | wan | WAN port | + | | wan | WAN port | DHCP | |
| - | </ | ||
| ==== Switch Ports (for VLANs) ==== | ==== Switch Ports (for VLANs) ==== | ||
| - | <WRAP BOX> | ||
| ^ Port ^ Switch port ^ | ^ Port ^ Switch port ^ | ||
| - | | Internet (WAN) | wan | + | | Internet (WAN) | wan |
| - | | LAN 1 | lan1 | + | | LAN 1 | lan1 | |
| - | | LAN 2 | lan2 | | + | | LAN 2 | lan2 | |
| - | </ | ||
| ==== Buttons ==== | ==== Buttons ==== | ||
| Line 198: | Line 261: | ||
| The Beeline Smartbox GIGA has the following buttons: | The Beeline Smartbox GIGA has the following buttons: | ||
| - | ^ BUTTON | + | ^ BUTTON |
| - | | Reset / WPS | + | | Reset / WPS |
| Line 205: | Line 268: | ||
| ==== Info ==== | ==== Info ==== | ||
| - | ---- datatemplatelist dttpllist ---- | + | <!-- ToH: { |
| - | template: meta:template_datatemplatelist | + | " |
| - | cols | + | " |
| - | filter | + | " |
| - | filter | + | " |
| - | ---- | + | " |
| + | | ||
| + | } --> | ||
| ==== Photos ==== | ==== Photos ==== | ||
| Line 219: | Line 284: | ||
| // | // | ||
| - | {{media: | + | {{media: |
| //Back://\\ | //Back://\\ | ||
| - | {{media: | + | {{media: |
| //Backside label://\\ | //Backside label://\\ | ||
| - | {{media: | + | {{media: |
| ==== Opening the case ==== | ==== Opening the case ==== | ||
| Line 231: | Line 296: | ||
| **Note:** This will void your warranty! | **Note:** This will void your warranty! | ||
| - | <WRAP BOX> | ||
| There are crews on the backplate. There are also clips around the edge of the case you will need to prize open, using, for example, a plastic card. | There are crews on the backplate. There are also clips around the edge of the case you will need to prize open, using, for example, a plastic card. | ||
| - | </ | ||
| //Main PCB://\\ | //Main PCB://\\ | ||
| - | {{media: | + | {{media: |
| - | {{media: | + | {{media: |
| - | {{media: | + | {{media: |
| ==== Serial ==== | ==== Serial ==== | ||
| Line 246: | Line 309: | ||
| How to connect to the Serial Port of this specific device:\\ | How to connect to the Serial Port of this specific device:\\ | ||
| - | {{media: | + | {{media: |
| ^ Serial connection parameters\\ for Beeline SmartBox GIGA | 57600, 8N1, 3.3V | | ^ Serial connection parameters\\ for Beeline SmartBox GIGA | 57600, 8N1, 3.3V | | ||
| Line 257: | Line 320: | ||
| ===== Bootloader mods ===== | ===== Bootloader mods ===== | ||
| - | -> [[docs: | ||
| - | ==== Breed bootloader ==== | ||
| - | Original Breed for Xiaomi R3G can be used, but breedenter utility is required to enter the Breed. Breed web interface shouldn' | ||
| - | See //Notes -> Breed bootloader// | ||
| - | Breed settings for Beeline Smartbox GIGA: | + | ==== Restoring the original U-boot bootloader and stock firmware |
| + | |||
| + | {{page> | ||
| + | |||
| + | **Input conditions: | ||
| + | * router with Breed bootloader installed | ||
| + | |||
| + | **You will need:** | ||
| + | * PC or Virtual machine with Linux | ||
| + | * mtd partitions backup (**mtd0.bin** - //u-boot bootloader//, | ||
| + | * http server with mtd partitions backup (i.e. with IP 192.168.1.2) | ||
| + | * recovery image (see [[https:// | ||
| + | |||
| + | |||
| + | === U-Boot and stock firmware recovery steps === | ||
| + | |||
| + | **<color # | ||
| + | |||
| + | 1. Enter the Breed telnet shell (IP: 192.168.1.1) | ||
| + | |||
| + | 2. Download //dynamic partition map// backup from your http server and write it: | ||
| + | <code bash> | ||
| + | wget http:// | ||
| + | </ | ||
| + | <code bash> | ||
| + | flash erase 0x100000 0x200000 | ||
| + | </ | ||
| + | <code bash> | ||
| + | flash write 0x100000 0x80001000 0x100000 | ||
| + | </ | ||
| + | |||
| + | 2. Download //Factory// backup from your http server and write it: | ||
| + | <code bash> | ||
| + | wget http:// | ||
| + | </ | ||
| + | <code bash> | ||
| + | flash write 0x200000 0x80001000 0x100000 | ||
| + | </ | ||
| + | |||
| + | 3. Download //u-boot bootloader// | ||
| + | |||
| + | **<color # | ||
| + | |||
| + | <code bash> | ||
| + | wget http:// | ||
| + | </ | ||
| + | <code bash> | ||
| + | flash erase 0x0 0x100000 | ||
| + | </ | ||
| + | <code bash> | ||
| + | flash write 0x0 0x80001000 0x100000 | ||
| + | </ | ||
| + | |||
| + | 4. Check written data and reboot: | ||
| + | <code bash> | ||
| + | flash dump 0x0 | ||
| + | </ | ||
| + | <code bash> | ||
| + | flash dump 0x100000 | ||
| + | </ | ||
| + | <code bash> | ||
| + | flash dump 0x200000 | ||
| + | </ | ||
| - | ^ Setting | + | 5. Use [[https:// |
| - | | autoboot.command | + | |
| ===== Hardware mods ===== | ===== Hardware mods ===== | ||
| Line 275: | Line 395: | ||
| **Problem** | **Problem** | ||
| - | Hanging | + | Hanging of Fibocom L860-GL USB modem under high upload. |
| **Solution** | **Solution** | ||
| Line 282: | Line 402: | ||
| Rating 100-330 uF x 16V. | Rating 100-330 uF x 16V. | ||
| - | {{media: | + | {{media: |
| ===== Bootlogs ===== | ===== Bootlogs ===== | ||
| Line 1567: | Line 1687: | ||
| ===== Notes ===== | ===== Notes ===== | ||
| - | === OpenWrt | + | === OpenWrt |
| - | * [[https://mega.nz/fm/okoh1abA|Community builds]] | + | * [[https://firmware-selector.openwrt.org/? |
| - | === Breed bootloader | + | === OpenWrt community builds (unofficial) |
| - | * [[https://github.com/legale/breed-mt7621-xiaomi-r3g.bin-reset-button-changer/ | + | * [[https://forum.openwrt.org/t/add-support-for-beeline-smartbox-giga/ |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| - | * [[https:// | + | |
| ===== Tags ===== | ===== Tags ===== | ||
| [[meta: | [[meta: | ||
| - | {{tag> | + | {{tag> |