Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
toh:etisalat:s3 [2023/01/11 19:36] – [Specific Configuration] csharper2005toh:etisalat:s3 [2023/10/16 20:12] – [Installation] csharper2005
Line 5: Line 5:
 /* USE https://openwrt.org/meta/create_new_device_page */ /* USE https://openwrt.org/meta/create_new_device_page */
  
-{{page>meta:infobox:construction&noheader&nofooter&noeditbtn}} 
  
 OEM: Sercomm S3 OEM: Sercomm S3
Line 11: Line 10:
 Etisalat S3 is a wireless router based on the MT7621 platform with USB 3.0 port. Etisalat S3 is a wireless router based on the MT7621 platform with USB 3.0 port.
  
-{{media:sercomm_s3_front.jpg?400|Etisalat S3}}+{{media:sercomm:sercomm_s3_front.jpg?400|Etisalat S3}}
  
  
Line 40: Line 39:
 ===== Installation ===== ===== Installation =====
 /* stable release */ /* stable release */
-/* uncomment once stable release is available+
 ---- datatable ---- ---- datatable ----
 cols    : Model, Versions, Supported Current Rel, Firmware OpenWrt Install URL_url, Firmware OpenWrt Upgrade URL_url, Firmware OEM Stock URL_url cols    : Model, Versions, Supported Current Rel, Firmware OpenWrt Install URL_url, Firmware OpenWrt Upgrade URL_url, Firmware OEM Stock URL_url
 headers : Model, Version, Current Release, Firmware OpenWrt Install, Firmware OpenWrt Upgrade, Firmware OEM Stock headers : Model, Version, Current Release, Firmware OpenWrt Install, Firmware OpenWrt Upgrade, Firmware OEM Stock
-align   : c,c,c 
-filter  : Brand=Etisalat 
-filter  : Model=S3 
----- 
-*/ 
- 
- 
-/* snapshot */ 
-/* 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 align   : c,c,c
 filter  : Brand=Etisalat filter  : Brand=Etisalat
Line 71: Line 58:
 cfgtool.py -u configurationBackup.cfg cfgtool.py -u configurationBackup.cfg
 </code> </code>
 +
 +<hidden cfgtool.py>
 +<code bash>
 +"""
 +Copyright (c) 2022 r3d5ky
 +
 +Permission is hereby granted, free of charge, to any person obtaining a copy
 +of this software and associated documentation files (the "Software"), to deal
 +in the Software without restriction, including without limitation the rights
 +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 +copies of the Software, and to permit persons to whom the Software is
 +furnished to do so, subject to the following conditions:
 +
 +The above copyright notice and this permission notice shall be included in all
 +copies or substantial portions of the Software.
 +
 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
 +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
 +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
 +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
 +OR OTHER DEALINGS IN THE SOFTWARE.
 +"""
 +
 +import zlib
 +import sys
 +import argparse
 +
 +def unpack(cfg_file, raw):
 +    with open(cfg_file, 'rb') as f:
 +        infile = f.read()
 +
 +    unpacked = zlib.decompress(infile[4:])
 +    config = unpacked[unpacked.find(b'\x3c\x44\x41\x54\x41'):-6]
 +    userdata = unpacked[:unpacked.find(b'\x3c\x44\x41\x54\x41')]
 +    
 +    if raw:
 +        with open(cfg_file[:-4] + '_raw.txt', 'wb') as f:
 +            f.write(unpacked)
 +
 +    with open(cfg_file[:-4] + '.xml', 'wb') as f:
 +        f.write(config)
 +    with open(cfg_file[:-4] + '_userdata.bin', 'wb') as f:
 +        f.write(userdata)
 +
 +
 +def pack(xml_file, endianness):
 +    with open(xml_file, 'rb') as f:
 +        rawconfig = f.read() + b'\x0a\x00'
 +    with open(xml_file[:-4] + '_userdata.bin', 'rb') as f:
 +        userdata = f.read()
 +    endian = "little"
 +    if endianness:
 +        endian = "big"
 +    crc = zlib.crc32(rawconfig).to_bytes(4, endian)
 +    config = userdata + rawconfig + crc
 +    
 +    with open(sys.argv[2][:-4] + '_changed.cfg', 'wb') as f: 
 +        f.write(len(config).to_bytes(4, endian) + zlib.compress(config))
 +
 +
 +def main():
 +    parser = argparse.ArgumentParser(description="Sercomm backup config packer/unpacker")
 +    group = parser.add_mutually_exclusive_group(required=True)
 +    group.add_argument("-u","--unpack", action='store_true', help="unpack .cfg file to .xml + header")
 +    group.add_argument("-p","--pack", action='store_true', help="pack .xml + header back to .cfg")
 +    parser.add_argument("-r","--raw", action='store_true', help="create additional file with raw unpacked data (optional)")
 +    parser.add_argument("-b","--big", action='store_true', help="pack for Big Endian arch (default is Little Endian)")
 +    parser.add_argument('file', type=str, help="path to .cfg/.xml file for unpacking/packing")
 +    args = parser.parse_args()
 +    
 +    if args.unpack:
 +        unpack(args.file, args.raw)
 +    elif args.pack:
 +        pack(args.file, args.big)
 +
 +    print("Done!")
 +
 +
 +if __name__ == '__main__':
 +    main()
 +</code>
 +</hidden>
 +
  
 4.  Open configurationBackup.xml and find the following line: 4.  Open configurationBackup.xml and find the following line:
Line 91: Line 163:
 8.  Login to the router web interface (SuperUser:ETxxxxxxxxxx, where ETxxxxxxxxxx is the serial number from the backplate label) 8.  Login to the router web interface (SuperUser:ETxxxxxxxxxx, where ETxxxxxxxxxx is the serial number from the backplate label)
  
-9.  Navigate to Settings -> WAN -> Add static IP interface (e.g. 10.0.0.1/255.255.255.0)+9.  Navigate to Settings -> Access Control -> Allow SSH (& Press apply)
  
-10. Navigate to Settings -> Remote control -> Add SSH, port 22, 10.0.0.0/255.255.255.0 and interface created before+10. Connect to the router using SSH shell under SuperUser account
  
-11. Change IP of your client to 10.0.0.2/255.255.255.0 and connect the ethernet cable to the WAN port of the router +11. Run in SSH shell:
- +
-12. Connect to the router using SSH shell under SuperUser account +
- +
-13. Run in SSH shell:+
 <code bash> <code bash>
 sh sh
 </code> </code>
  
-14. Make a mtd backup (optional, see related section)+12. Make a mtd backup (optional, see related section)
  
-15. Change bootflag to Sercomm1 and reboot:+13. Change bootflag to Sercomm1 and reboot:
 <code bash> <code bash>
 printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3 printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3
Line 112: Line 180:
 </code> </code>
  
-16. Login to the router web interface under admin account+14. Login to the router web interface under admin account
  
-17. Remove dots from the OpenWrt factory image filename+15. Remove dots from the OpenWrt factory image filename
  
-18. Update firmware via web using OpenWrt factory image+16. Update firmware via web using OpenWrt factory image
  
-===== Backup =====+==== Backup ====
  
 It's recommended to make a mtd backup before you start: It's recommended to make a mtd backup before you start:
Line 132: Line 200:
 </code> </code>
  
 +==== 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=/dev/mtdblock3
 +</code>
 +2. Optional: Update with any stock (Etisalat S3) firmware if you want to overwrite OpenWrt in Slot 0 completely.
 ==== Flash Layout ==== ==== Flash Layout ====
 <WRAP BOX> <WRAP BOX>
Line 189: Line 263:
 2. Connect the router with a cable and run sercomm-recovery: 2. Connect the router with a cable and run sercomm-recovery:
 <code bash> <code bash>
-sudo ./sercomm-recovery enp0s3 recovery_etisalat_s3.bin+sudo ./sercomm-recovery enp0s3 recovery_etisalat_s3_stock_slot1.bin
 </code> </code>
 where //enp0s3// - network interface connected the router, //ifconfig// - list on available network interfaces where //enp0s3// - network interface connected the router, //ifconfig// - list on available network interfaces
  
 +3. Wait until the router is flashed and rebooted.
 +
 +[[https://mega.nz/folder/tlIm1JLK#bBRJXq-DVkzJBOR2dC1K5w|Download ready recovery images]] for Sercomm devices.
 ===== Failsafe mode ===== ===== Failsafe mode =====
 -> [[docs:guide-user:troubleshooting:failsafe_and_factory_reset]] -> [[docs:guide-user:troubleshooting:failsafe_and_factory_reset]]
Line 209: Line 286:
  
 ==== Switch Ports (for VLANs) ==== ==== Switch Ports (for VLANs) ====
-<WRAP BOX> 
-FIXME Please fill in real values for this device, then remove the EXAMPLEs 
  
-Numbers 0-3 are Ports 1-4 as labeled on the unit, number 4 is the Internet (WAN) on the unit, 5 is the internal connection to the router itself. Don't be fooled: Port 1 on the unit is number 3 when configuring VLANs. vlan0 = eth0.0, vlan1 = eth0.1 and so on. 
 ^ Port             ^ Switch port   ^ ^ Port             ^ Switch port   ^
-| Internet (WAN)   EXAMPLE 4     +| Internet (WAN)   wan           
-| LAN 1            | EXAMPLE 3     +| LAN 1            | lan1          
-| LAN 2            | EXAMPLE 2     +| LAN 2            | lan2          
-| LAN 3            | EXAMPLE 1     +| LAN 3            | lan3          
-| LAN 4            | EXAMPLE 0     | +| LAN 4            | lan4          |
- +
-</WRAP>+
  
 ==== Buttons ==== ==== Buttons ====
 -> [[docs:guide-user:hardware:hardware.button]] on howto use and configure the hardware button(s). -> [[docs:guide-user:hardware:hardware.button]] on howto use and configure the hardware button(s).
 Here, we merely name the buttons, so we can use them in the above Howto. Here, we merely name the buttons, so we can use them in the above Howto.
- 
-<WRAP BOX> 
-FIXME Please fill in real values for this device, then remove the EXAMPLEs 
  
 The Etisalat S3 has the following buttons: The Etisalat S3 has the following buttons:
  
-^ BUTTON                       ^ Event   ^ +^ BUTTON        ^ Event   ^ 
-EXAMPLE Reset                |  reset  | +| Reset    |  reset  | 
-EXAMPLE Secure Easy Setup      ses   | +WPS       wps    |
-| EXAMPLE No buttons at all.      -    |+
  
-</WRAP> 
  
 ===== Hardware ===== ===== Hardware =====
 ==== Info ==== ==== Info ====
-<WRAP BOX> 
-FIXME 
-  - This table is automatically generated, **once the correct filters for Brand and Model are set.** 
-  - If you see "Nothing." instead of a table, please **edit this section and adjust the filters with the proper Brand and Model.** Just try, it's easy. 
-  - If you still don't see a table here, or a table filled with '¿': [[toh:start|Is there already a Techdata page available]] for Etisalat S3 ? If not: [[meta:create_new_dataentry_page|Create one]]. 
-  - If you see a table with the desired device data, everything is OK and you can delete this text and the ''<nowiki><WRAP></nowiki>'' that encloses it. 
-  - If it still doesn't work: Don't panic, calm down, take a deep breath and [[:contact|contact a wiki admin]] (tmomas) for help. 
-</WRAP> 
  
 ---- datatemplatelist dttpllist ---- ---- datatemplatelist dttpllist ----
Line 254: Line 313:
 filter  : Brand=Etisalat filter  : Brand=Etisalat
 filter  : Model=S3 filter  : Model=S3
-filter  : Versions= 
 ---- ----
  
Line 276: Line 334:
 **Note:** This will void your warranty! **Note:** This will void your warranty!
  
-<WRAP BOX> +There are 2 crews behind the rubber feet. There are also clips around the edge of the case you will need to prize open, using, for example, plastic card. 
-FIXME //Describe what needs to be done to open the device, e.g. remove rubber feet, adhesive labels, screws, ...// + 
-  * To remove the cover and open the devicedo a/b/c +{{media:rostelecom:rt-sf-1_case_opening.jpg?400|Rostelecom RT-SF-1 case opening}}
-</WRAP>+
  
 //Main PCB://\\ //Main PCB://\\
Line 287: Line 344:
 -> [[docs:techref:hardware:port.serial]] general information about the serial port, serial port cable, etc. -> [[docs:techref:hardware:port.serial]] general information about the serial port, serial port cable, etc.
  
-How to connect to the Serial Port of this specific device:\\ +How to connect to the Serial Port of the Etisalat S3:\\ 
-**Insert photo of PCB with markings for serial port**+{{media:beeline:smartbox-turbo_pcb_serial.jpg?400|Beeline SmartBox TURBO UART connection}}
  
-<WRAP BOX> +You need to connect R53 and R54 pins (marked red on the photo). For example using the solder
-FIXME //Replace EXAMPLE by real values.// + 
-</WRAP>+^ Serial connection parameters\\ for Etisalat S3 | 57600, 8N1, 3.3V |
  
-^ Serial connection parameters\\ for Etisalat S3 @@Version@@ | EXAMPLE 115200, 8N1, 3.3V | 
  
 ==== JTAG ==== ==== JTAG ====
Line 322: Line 378:
  
 ===== Notes ===== ===== Notes =====
-//Space for additional notes, links to forum threads or other resources.// 
- 
-  * ... 
  
 +=== OpenWrt community builds (unofficial) ===
 +  * [[https://forum.openwrt.org/t/add-support-for-beeline-smartbox-giga/99390/4|Community builds]]
 ===== Tags ===== ===== Tags =====
-<WRAP BOX> 
-FIXME //Add tags below, then remove this fixme.// 
-</WRAP> 
  
-[[meta:tags|How to add tags]] +{{tag>U-boot 2core ramips mediatek MT7621 GigabitEthernet 1NIC 5Port 2WNIC wlan 802.11abgn 802.11a 802.11bgn 802.11ac mt7603 mt7615 InternalAntenna 4Ant 128NAND 256RAM USB3.0 USB 1USB Serial GPIO 2button 12v_powered etisalat sercomm S3 Dual_firmware}}
-{{tag>EXAMPLETAG}}+
  • Last modified: 2024/09/05 19:04
  • by csharper2005