FireBrick 2700 with 4G ZTE MF823: Difference between revisions

Back up to the FireBrick USB Dongles Category
From AAISP Support Site
Tags: Mobile edit Mobile web edit
 
(29 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<indicator name="FireBrick">[[File:Menu-USBDongle.svg|link=:Category:FireBrick_USB_Dongles|30px|Back up to the FireBrick USB Dongles Category]]</indicator>
<indicator name="FireBrick">[[File:Menu-USBDongle.svg|link=:Category:FireBrick USB Dongles|30px|Back up to the FireBrick USB Dongles Category]]</indicator>

This page is also relevant to the FB2900


=ZTE MF823 Overview=
=ZTE MF823 Overview=
The ZTE MF823 is 4G dongle that (as of 2017) is widely available at a good price (Below £50).
The ZTE MF823 is a 4G dongle that (as of 2017) is widely available at a good price. (Below £50.)

=Default settings and configs just work if NAT is acceptable=


Out of the box, it will work as an 'ethernet' device, and so the FireBrick or a computer will see it as a USB ethernet adapter. The Dongle runs a DHCP server and will dish out IP addresses to you in the 192.168.0.x range. Then, once its connected to the Internet on the 4G side, it will give you natted internet access.
Out of the box, it will work as an 'ethernet' device, and so the FireBrick or a computer will see it as a USB ethernet adapter. The Dongle runs a DHCP server and will dish out IP addresses to you in the 192.168.0.x range. Then, once its connected to the Internet on the 4G side, it will give you natted internet access.
Line 12: Line 16:
*The FireBrick will give you internet access over the dongle
*The FireBrick will give you internet access over the dongle


=ZTE MF823 and No NAT=
=ZTE MF823, Firebrick and No NAT=


In its default state, the ZTE MF823 dongle will give internet access and the FireBrick can also be configured to use the dongle as a backup internet connection if your main connection goes down. However, when used with a Data SIM from AAISP you may want to take advantage of the static IP and routed blocks of IPv4 addresses. In these cases you don't want the dongle to do any NAT. To do this, the dongle needs to be configured to be a 'modem', and then we need to do a little bit of FireBrick config.
In its default state, the ZTE MF823 dongle will give internet access and the FireBrick can also be configured to use the dongle as a backup internet connection if your main connection goes down. However, when used with a Data SIM from AAISP you may want to take advantage of the static IP and routed blocks of IPv4 addresses. In these cases you don't want the dongle to do any NAT.
To do this we need to do a few things as described below:
*the dongle needs to be configured to be in serial mode and have the default APN set
*The FireBrick needs config to change the default dial string


==Changing the ZTE MF823 to 'modem' mode==
==Changing the ZTE MF823 to 'serial modem' mode==
Warning: This is still in progress and does not work
Warning: This is still in progress and has not been fully tested, and as such may not work. Tests were performed on an unlocked MF823 purchased from Amazon.
There have been reports of this procedure not working on O2 branded dongles, causing the network lock which was previously not set to be applied, so proceed at your own caution if using a branded dongle. Networks often customise the firmware of these devices so they may behave in a completely different manner with these firmware modifications.


The ZTE823 works as an Ethernet device by default, it is possible to change the mode so that it works as a modem. The idea here is that rather than the dongle NATing the connection it can be a modem and the FireBrick will be given the public WAN IP address directly.
The ZTE823 works as an Ethernet device by default, it is possible to change the mode so that it works as a modem. The idea here is that rather than the dongle NATing the connection it can be a modem and the FireBrick will be given the public WAN IP address directly.


One caveat of modem mode is that it does not seem to reliably respond to AT commands, as it appears the dongle is generating its own AT commands internally, presumably part of its web interface thing. It does appear to respond to the AT+CGDATA command to start a data session, with almost no other interaction required on the behalf of the Firebrick.
==Switching to Modem Mode==

==Switching to 'Download' Mode==
Download, or debug mode is where the dongle acts as a serial modem device.

[[File:ZTEMF823-mode.png|right|thumbnail|Disabling Autoconnect]]
[[File:ZTEMF823-mode.png|right|thumbnail|Disabling Autoconnect]]
[[File:ZTE APN Settings.png|right|thumbnail|Setting APN]]


Some of this information came from: [https://wiki.archlinux.org/index.php/ZTE_MF_823_%28Megafon_M100-3%29_4G_Modem archlinux.org]
Some of this information came from: [https://wiki.archlinux.org/index.php/ZTE_MF_823_%28Megafon_M100-3%29_4G_Modem archlinux.org]


#Disable auto-connect:
#Disable auto-connect, and manually set the APN:
#*Go to http://192.168.0.1
#*Go to http://192.168.0.1
#*Click on Home
#*Click on Home
Line 33: Line 46:
#*Click Network settings
#*Click Network settings
#*Click Dial-up settings
#*Click Dial-up settings
#*Click the radio button labeled 'Manual'
#*Click the radio button labeled 'Manual' and click Apply
#*Click APN
#*Click the radio button labeled 'Manual' and click 'Add new'
#*Set PDP type to IPv4, create a Profile Name, enter the APN as 'm2m.aql.net', set Authentication to none, and select Apply.
#*Go to your newly created profile, and click 'Set as default'.
#Put the Dongle into download mode:
#Put the Dongle into download mode:
#*In your browser, go to: <syntaxhighlight inline>http://192.168.0.1/goform/goform_process?goformId=MODE_SWITCH&switchCmd=FACTORY</syntaxhighlight>
#*In your browser, go to: <tt>http://192.168.0.1/goform/goform_process?goformId=MODE_SWITCH&switchCmd=FACTORY</tt>
#*The modem should respond with: <syntaxhighlight inline>{"result":"FACTORY:ok"}</syntaxhighlight>
#*The modem should respond with: <syntaxhighlight inline lang=json>{"result":"FACTORY:ok"}</syntaxhighlight>
#Unplug and plug back in to the FireBrick and the FireBrick should see the dongle as a modem
#Unplug and plug back in to the FireBrick and the FireBrick should see the dongle as a modem
[[File:FireBrick-ZTE-DongleAttached.png|none|thumbnail|ZTE as shown in FireBrick UI]]
#TODO - HOW TO CONFIGURE THE FIREBRICK TO USE THE DONGLE

==FireBrick config==
<syntaxhighlight lang=xml>
<port name="USB" ports="" dongle="ZTE"/>

<dongle name="ZTE" vendor="19d2" product="0016" modeswitch="noswitch" dial-string="AT+CGDATA="PPP",1"/>
</syntaxhighlight>

If you have a block of IPs being routed to the SIM, then set <syntaxhighlight inline lang=xml>NAT="false"</syntaxhighlight> in the <syntaxhighlight inline lang=xml><dongle... /></syntaxhighlight> configuration.

=Further help and information regarding the dongle=

==Throughput==
*Ethernet mode seems slightly faster than in download/debug (modem) mode. 16.77Mbit/s compared to 12.77Mbit/s - from our office.


==Switching back to Ethernet mode==
==Switching back to Ethernet mode==
To put the dongle back to Ethernet mode you will need to connect the dongle to a computer in order to send it some commands via a serial terminal
To put the dongle back to Ethernet mode you will need to connect the dongle to a computer in order to send it some commands via a serial terminal
[[File:ZTE831modeswitch.png|thumbnail|gtkterm]]
[[File:ZTE831modeswitch.png|thumbnail|gtkterm]]
*Open gtkserial or another serial terminal (or simply echo the following AT commands to /dev/ttyUSB2) (or maybe another dev/ttyUSBx):
*Open gtkserial, gtkterm, run screen /dev/ttyUSBx, or another serial terminal (or simply echo the following AT commands to /dev/ttyUSB2) (or maybe another dev/ttyUSBx):
ATZ
ATZ
AT&F
AT&F
Line 50: Line 81:
*Disconnect the modem from the computer and reconnect it to the FireBrick
*Disconnect the modem from the computer and reconnect it to the FireBrick


==What mode is it in?==
==FireBrick config==
On a linux system, if you run <tt>lsusb</tt> you'll see something like:
<dongle name="ZTE" vendor="19d2" product="0016" modeswitch="noswitch">

and change the <port...> item for USB to use usb="ZTE" rather than the default (which is usually Example-3G)

=Further help with the dongle=

===What mode is it in?===
On a linux system, if you run <syntaxhighlight inline>lsusb</syntaxhighlight> you'll see something like:
Bus 002 Device 030: ID 19d2:0016 ZTE WCDMA Technologies MSM
Bus 002 Device 030: ID 19d2:0016 ZTE WCDMA Technologies MSM


The <syntaxhighlight inline>0016</syntaxhighlight> is the mode:
The <tt>0016</tt> is the mode:
*1225 – Default Mode. Available USB Mass Storage Device with CD-ROM and card reader. Corresponds to AT+ZCDRUN=9+AT+ZCDRUN=F
*1225 – Default Mode. Available USB Mass Storage Device with CD-ROM and card reader. Corresponds to AT+ZCDRUN=9+AT+ZCDRUN=F
*1403 – Operating Mode. Available RNDIS adapter and Mass Storage Device. Corresponds to AT+ZCDRUN=8+AT+ZCDRUN=F
*1403 – Operating Mode. Available RNDIS adapter and Mass Storage Device. Corresponds to AT+ZCDRUN=8+AT+ZCDRUN=F
*1405 – CDC Ethernet Mode. A mode similar to that described above (1403). Included in Linux after starting usb_modeswitch c default settings.
*1405 – CDC Ethernet Mode. A mode similar to that described above (1403). Included in Linux after starting usb_modeswitch c default settings.
*0016 – Download Mode. Under the name of ZTE., but simply a mode where available diagnostic port and two command (analog modem port and PC UI devices Huawei). Corresponds to AT+ZCDRUN=E
*0016 – Download/Debug Mode. Under the name of ZTE., but simply a mode where available diagnostic port and two command (analog modem port and PC UI devices Huawei). Corresponds to AT+ZCDRUN=E
*0076 – "real" Download Mode. Includes a standard for devices running QC methods.
*0076 – "real" Download Mode. Includes a standard for devices running QC methods.


[[Category:Data SIMs]]
[[Category:Data SIMs]]
[[Category:FireBrick_USB_Dongles]]
[[Category:FireBrick USB Dongles]]

Latest revision as of 01:06, 25 August 2019


This page is also relevant to the FB2900

ZTE MF823 Overview

The ZTE MF823 is a 4G dongle that (as of 2017) is widely available at a good price. (Below £50.)

Default settings and configs just work if NAT is acceptable

Out of the box, it will work as an 'ethernet' device, and so the FireBrick or a computer will see it as a USB ethernet adapter. The Dongle runs a DHCP server and will dish out IP addresses to you in the 192.168.0.x range. Then, once its connected to the Internet on the 4G side, it will give you natted internet access.

A factory default FireBrick configuration will work with a ZTE MF823 dongle without any additional configuration

  • The FireBrick will DHCP an address in the 192.168.0.x range from the ZTE dongle
  • You can access the dongle's web interface via http://192.168.0.1
  • There will be NAT performed by the FireBrick and then again by the dongle
  • The FireBrick will give you internet access over the dongle

ZTE MF823, Firebrick and No NAT

In its default state, the ZTE MF823 dongle will give internet access and the FireBrick can also be configured to use the dongle as a backup internet connection if your main connection goes down. However, when used with a Data SIM from AAISP you may want to take advantage of the static IP and routed blocks of IPv4 addresses. In these cases you don't want the dongle to do any NAT. To do this we need to do a few things as described below:

  • the dongle needs to be configured to be in serial mode and have the default APN set
  • The FireBrick needs config to change the default dial string

Changing the ZTE MF823 to 'serial modem' mode

Warning: This is still in progress and has not been fully tested, and as such may not work. Tests were performed on an unlocked MF823 purchased from Amazon. There have been reports of this procedure not working on O2 branded dongles, causing the network lock which was previously not set to be applied, so proceed at your own caution if using a branded dongle. Networks often customise the firmware of these devices so they may behave in a completely different manner with these firmware modifications.

The ZTE823 works as an Ethernet device by default, it is possible to change the mode so that it works as a modem. The idea here is that rather than the dongle NATing the connection it can be a modem and the FireBrick will be given the public WAN IP address directly.

One caveat of modem mode is that it does not seem to reliably respond to AT commands, as it appears the dongle is generating its own AT commands internally, presumably part of its web interface thing. It does appear to respond to the AT+CGDATA command to start a data session, with almost no other interaction required on the behalf of the Firebrick.

Switching to 'Download' Mode

Download, or debug mode is where the dongle acts as a serial modem device.

Disabling Autoconnect
Setting APN

Some of this information came from: archlinux.org

  1. Disable auto-connect, and manually set the APN:
    • Go to http://192.168.0.1
    • Click on Home
    • Click Disconnect
    • Click Settings
    • Click Network settings
    • Click Dial-up settings
    • Click the radio button labeled 'Manual' and click Apply
    • Click APN
    • Click the radio button labeled 'Manual' and click 'Add new'
    • Set PDP type to IPv4, create a Profile Name, enter the APN as 'm2m.aql.net', set Authentication to none, and select Apply.
    • Go to your newly created profile, and click 'Set as default'.
  2. Put the Dongle into download mode:
  3. Unplug and plug back in to the FireBrick and the FireBrick should see the dongle as a modem
ZTE as shown in FireBrick UI

FireBrick config

 <port name="USB" ports="" dongle="ZTE"/>

 <dongle name="ZTE" vendor="19d2" product="0016" modeswitch="noswitch" dial-string="AT+CGDATA="PPP",1"/>

If you have a block of IPs being routed to the SIM, then set NAT="false" in the <dongle... /> configuration.

Further help and information regarding the dongle

Throughput

  • Ethernet mode seems slightly faster than in download/debug (modem) mode. 16.77Mbit/s compared to 12.77Mbit/s - from our office.

Switching back to Ethernet mode

To put the dongle back to Ethernet mode you will need to connect the dongle to a computer in order to send it some commands via a serial terminal

gtkterm
  • Open gtkserial, gtkterm, run screen /dev/ttyUSBx, or another serial terminal (or simply echo the following AT commands to /dev/ttyUSB2) (or maybe another dev/ttyUSBx):
ATZ
AT&F
AT+ZCDRUN=9
AT+ZCDRUN=F 
  • Disconnect the modem from the computer and reconnect it to the FireBrick

What mode is it in?

On a linux system, if you run lsusb you'll see something like:

Bus 002 Device 030: ID 19d2:0016 ZTE WCDMA Technologies MSM 

The 0016 is the mode:

  • 1225 – Default Mode. Available USB Mass Storage Device with CD-ROM and card reader. Corresponds to AT+ZCDRUN=9+AT+ZCDRUN=F
  • 1403 – Operating Mode. Available RNDIS adapter and Mass Storage Device. Corresponds to AT+ZCDRUN=8+AT+ZCDRUN=F
  • 1405 – CDC Ethernet Mode. A mode similar to that described above (1403). Included in Linux after starting usb_modeswitch c default settings.
  • 0016 – Download/Debug Mode. Under the name of ZTE., but simply a mode where available diagnostic port and two command (analog modem port and PC UI devices Huawei). Corresponds to AT+ZCDRUN=E
  • 0076 – "real" Download Mode. Includes a standard for devices running QC methods.