|Model||Version||Supported Current Rel||Firmware OpenWrt Install URL||Firmware OpenWrt Upgrade URL||Firmware OEM Stock URL|
Please read the article flash.layout for a better understanding. It contains a couple of explanations. Then let's have a quick view at flash layout of this particular device:
|GL.iNet GL-MT300N V2 Flash Layout|
|Layer0||raw flash, 16386 KiB|
|Layer1|| mtd0 |
| mtd1 |
| mtd2 |
| mtd3 |
16064 KiB (= FlashSize-(192+64+64))
|Layer2|| mtd4 |
about 1.4 MiB
| mtd5 |
around 2.3 MiB
| mtd6 |
around 12 MiB
Note: It can happen that the browser cache does conflict with the new loaded firmware. This can be avoided by browsing to:
http://192.168.1.1/index.html?index. By adding
?index it asked the browser not to load from cache.
Note: TFTP upgrade requires connecting to the Serial port, and pressing
spacebar during boot to access the U-Boot command line.
If you don't have a GUI (LuCI) available, you can alternatively upgrade via the command line. There are two command line methods for upgrading:
Note: It is important that you put the firmware image into the ramdisk (/tmp) before you start flashing.
cd /tmp wget https://downloads.openwrt.org/snapshots/targets/ramips/mt76x8/openwrt-ramips-mt76x8-gl-mt300n-v2-squashfs-sysupgrade.bin sysupgrade /tmp/openwrt-ramips-mt76x8-gl-mt300n-v2-squashfs-sysupgrade.bin
sysupgrade does not support this router, use
cd /tmp wget https://downloads.openwrt.org/snapshots/targets/ramips/mt76x8/openwrt-ramips-mt76x8-gl-mt300n-v2-squashfs-sysupgrade.bin mtd write /tmp/openwrt-ramips-mt76x8-gl-mt300n-v2-squashfs-sysupgrade.bin linux && reboot
The U-Boot bootloader has a web interface to update the firmware. To use the web interface, you need to connect to the LAN port, and your computer's ethernet port set to 192.168.1.2/24. To start the web interface:
→ Basic configuration After flashing, proceed with this.
Set up your Internet connection, configure wireless, configure USB port, etc.
The default OEM network configuration is:
|Interface Name||Description||Default configuration|
|br-lan||LAN & WiFi||192.168.8.1/24|
|vlan1 (eth0.1)||LAN port||None|
|vlan2 (eth0.2)||WAN port||DHCP|
Port number 0 is labeled WAN on the unit, port 1 is labeled LAN. Ports 2-5 are not present. Port 6 (CPU) is the internal connection to the router itself. vlan1 = eth0.1, vlan2 = eth0.2 and so on.
→ 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.
Please fill in real values for this device, then remove the EXAMPLEs
The GL.iNet GL-MT300N V2 has the following buttons:
|EXAMPLE Secure Easy Setup||ses|
|EXAMPLE No buttons at all.||-|
|Device Type||WiFi Router|
|Comments - general||Increased RAM from 64MB to 128 MB, Better Wi-Fi with MTK driver|
|Supported Since Commit||https://git.lede-project.org/?p=source.git;a=commit;h=abbfcc85259a4f6658c61e99dd3d2d3567e3eb3a|
|Supported Since Release|
|Supported Current Release||19.07.1|
|Sub Instruction Set|
|Ethernet 100M ports||2|
|Ethernet Gbit ports||-|
|Comments - network ports|
|Comments - WLAN|
|USB ports||1x 2.0, 1x µUSB (power)|
|Comments - USB & SATA ports|
|Power supply||5 VDC, 1.0 A (µUSB)|
|Forum Topic URL|
|OEM device homepage URL||https://www.gl-inet.com/mt300n-v2/|
|Firmware OEM Stock URL||http://www.gl-inet.com/firmware/mt300n-v2/|
|Firmware OpenWrt Install URL|
|Firmware OpenWrt Upgrade URL||http://downloads.openwrt.org/releases/19.07.1/targets/ramips/mt76x8/openwrt-19.07.1-ramips-mt76x8-gl-mt300n-v2-squashfs-sysupgrade.bin|
|Edit the underlying data||View/Edit data|
Use a pry tool in the notch. There are clips all round.
Note the yellow post on the cover that holds the PCB steady. Ensure the cover is replaced with the correct orientation.
→ One port.serial port (J1) on the MT300N V2 comes with the headers factory fitted.
How to connect to the Serial Port of this specific device:
It can be seen at the left end, farthest from the Ethernet port (grey) and is labelled “GND RX0 TX0”. Headers are missing for further connections “VCC” and “I2C_CLK I2C_SD TX1 RX1”. All PINS besides GND and VCC are also usable via GPIO.
| Serial connection parameters|
for GL.iNet GL-MT300N V2
The MT300N V2 has general purpose GPIO pins broken out. Note the headers at the top of the board. These headers are not factory fitted and will need to be fitted manually.
|No label||0||Controls power to the USB A port, export GPIO 0 and set its value 0/1 to control|
|WPS_PBC||2||Shared with WPS button according to docs, however this button appears not to exist|
|RST_PBC||1||Shared with Reset Button|
|LINK3||43||Shared with toggle switch on side of device|
The 3 way toggle switch comes from the factory with the right-hand third of the plastic part filled, GLI claims this is to prevent confusion over the 3 way toggle, but to keep the feature available when required, decided not to remove the 3-way switch.
The MT300N V2 implements a GPIO switch driver, using the scripts below, the switch position can be determined from shell script and acted upon.
The switch uses GPIOs 42 and 43 and can be access by exporting them as inputs. The values correspond to the switch positions as follows.
|Position||GPIO 42||GPIO 43|
Where X indicates a “Don't Care” state.
The scripts receive both a button ID in the form “BTN_X” and an action such as “pressed” or “unpressed”.
Note that to access them as GPIOs (and stop receiving button events), you need to unload the
gpio_button_hotplug module, or unbind it by executing:
echo gpio-keys > /sys/bus/platform/drivers/gpio-keys/unbind
Space for additional notes, links to forum threads or other resources.