Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
| toh:beeline:smartbox_giga [2022/06/23 11:58] – [Debricking] csharper2005 | toh:beeline:smartbox_giga [2023/08/31 11:03] – [OpenWrt installation] csharper2005 | ||
|---|---|---|---|
| Line 13: | Line 13: | ||
| /*****/ | /*****/ | ||
| - | {{media: | + | {{media: |
| ===== Supported Versions ===== | ===== Supported Versions ===== | ||
| - | |||
| - | <color red> | ||
| - | |||
| - | [[https:// | ||
| ---- datatable ---- | ---- datatable ---- | ||
| Line 29: | Line 25: | ||
| filter | filter | ||
| ---- | ---- | ||
| + | |||
| + | ===== Experimental firmware ===== | ||
| + | |||
| + | * [[https:// | ||
| Line 41: | Line 41: | ||
| - | ===== Backup | + | ===== Backup ===== |
| - | It's recommended to make a backup before you start: | + | It's recommended to make a mtd backup before you start: |
| + | |||
| + | 1. [[: | ||
| - | * Set up a tftp server (e.g. tftpd64 for windows) | + | 2. Set up a tftp server (e.g. tftpd64 for windows) |
| - | * Connect to a router using SSH shell and run the following commands: | + | 3. Connect to a router using SSH shell and run the following commands: |
| - | < | + | < |
| cd /tmp | 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; \ | 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 192.168.1.2; md5sum mtd$i >> mtd.md5; rm mtd$i; done | + | tftp -l mtd$i -p 10.0.0.2; md5sum mtd$i >> mtd.md5; rm mtd$i; done |
| - | tftp -l mtd.md5 -p 192.168.1.2 | + | tftp -l mtd.md5 -p 10.0.0.2 |
| </ | </ | ||
| - | 192.168.1.2 - IP of the tftp server | + | 10.0.0.2 - IP of the tftp server |
| - | * Check backups in your tftp root folder. | + | 4. Check backups in your tftp root folder. |
| Line 83: | Line 85: | ||
| ---- | ---- | ||
| + | |||
| + | {{page> | ||
| -> [[docs: | -> [[docs: | ||
| - | 1. Downgrade stock (Beeline) firmware to v.1.0.02 | + | ==== OpenWrt installation ==== |
| - | 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. | + | <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 | ||
| + | </ | ||
| - | 3. Upload and update the firmware via the original web interface. | + | 1. Install stock Beeline v.1.0.02 |
| + | |||
| + | 2. Remove all dots from the OpenWrt //factory image// file name | ||
| + | |||
| + | 3. Install OpenWrt //factory image// | ||
| Remark: | 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. | 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. | ||
| - | ==== Flash Layout ==== | + | ==== OEM easy installation ==== |
| + | |||
| + | See [[: | ||
| + | |||
| + | ==== OEM installation using the TFTP method ==== | ||
| + | |||
| + | -> [[docs: | ||
| + | |||
| + | 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 | ^ mtd ^ partition | ||
| Line 112: | Line 149: | ||
| - | ==== OEM easy installation ==== | ||
| - | See Installation section | ||
| - | ==== OEM installation using the TFTP method ==== | ||
| - | -> [[docs: | ||
| - | |||
| - | Not applicable | ||
| ===== Upgrading OpenWrt ===== | ===== Upgrading OpenWrt ===== | ||
| Line 146: | Line 177: | ||
| * 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 / | ||
| Line 153: | Line 184: | ||
| ===== Return to Stock ===== | ===== Return to Stock ===== | ||
| 1. Change the bootflag to Sercomm1 in OpenWrt CLI and then reboot: | 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. | 2. Optional: Update with any stock (Beeline) firmware if you want to overwrite OpenWrt in Slot 0 completely. | ||
| Line 159: | Line 193: | ||
| -> [[docs: | -> [[docs: | ||
| + | ==== sercomm-recovery utility ==== | ||
| 1. Compile [[https:// | 1. Compile [[https:// | ||
| - | git clone https:// | + | <code bash> |
| - | | + | 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 mtd1 mtd2 mtd3 mtd4 mtd5 mtd6 mtd7 mtd8 mtd9 mtd10 mtd11 > 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 232: | Line 294: | ||
| // | // | ||
| - | {{media: | + | {{media: |
| //Back://\\ | //Back://\\ | ||
| - | {{media: | + | {{media: |
| //Backside label://\\ | //Backside label://\\ | ||
| - | {{media: | + | {{media: |
| ==== Opening the case ==== | ==== Opening the case ==== | ||
| Line 247: | Line 309: | ||
| //Main PCB://\\ | //Main PCB://\\ | ||
| - | {{media: | + | {{media: |
| - | {{media: | + | {{media: |
| - | {{media: | + | {{media: |
| ==== Serial ==== | ==== Serial ==== | ||
| Line 257: | Line 319: | ||
| 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 268: | Line 330: | ||
| ===== 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 293: | Line 412: | ||
| Rating 100-330 uF x 16V. | Rating 100-330 uF x 16V. | ||
| - | {{media: | + | {{media: |
| ===== Bootlogs ===== | ===== Bootlogs ===== | ||
| Line 1578: | Line 1697: | ||
| ===== 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> |