Installing on GL.iNet GL-AR750S

I'm trying to do a fresh install of OpenWrt on a GL.iNet GL-AR750S.

Following the information here :

WIP: Sat Dec 8 12:55:16 2018 version of gl-ar750s-squashfs-sysupgrade.bin results in the message

The uploaded image file does not contain a supported format. Make sure that you choose the generic image format for your platform.

It is nand firmware for AR750S by default. If you build from OpenWRT official repo, it might be nor firmware, so you should upgrade it on u-boot web. Please refer to this tutorial https://docs.gl-inet.com/en/3/troubleshooting/debrick/.

If you want to build a nand firmware, you have to use our repo.

I did these steps and tried to install to NOR flash using u-boot. But nothing happened.

Typically, a device running OpenWrt will "complain" if the target image is for a different device. I'm guessing that the OEM firmware is on a NAND-based target and that you may be trying to flash a NOR-based version. I believe there is a NAND-based version of "vanilla" OpenWrt on the ath79 target.

But before you go trying that...

There's a bug in the uboot of the device where it doesn't properly complete ARP, so while uboot runs, it can't connect to another host over Ethernet. I'd definitely confirm that you've got uboot connectivity of some type before doing a cross-device upgrade.

Yes, I was able to run uboot and upload the .bin file to the NOR flash section. But it didn't install. Now I'm de-bricking it.

I've been halted on my explorations with that device (and further completing the wiki page) as I can't get connectivity to uboot. Which OS did you use to connect and any tricks to doing so?

Win 7. No tricks - just followed their instructions: press Reset, power on, wait for 5 blinks then release Reset. Changed adapter IP to 192.168.1.2 and connect to router at 192.168.1.1

EDIT: I was able to de-brick it.

1 Like

I was able to successfully de-brick it, but I'm not sure I want to be using their firmware. Here are their release notes:

v3.009-20181212

New Features:

  • Added bridge mode disabled reminder in Network Mode when OpenVPN client is activated.
  • Added alert when VPN client is abnormal.

Fixed:

  • Optimize Wi-Fi repeater when connecting to saved network.
  • Improve Wi-Fi repeater reconnection issue.
    - Fixed OpenVPN data leakage.
  • Fixed OpenVPN configuration file upload failure caused by file name which includes '.
  • Supported PiVPN configuration file.
  • Fixed SSH login failure caused by admin password which includes quotation mark ' and full stop ..
    - Fixed WireGuard data leakage.

At least what I've seen of their firmware on that device and on the AR-300M-Lite I have from them, it's OpenWrt under beside the OEM GUI, so you should be able to see just what the changes were from their git repo, as well as view and make any changes you deem important through /etc/

I'm not that advanced so I really wanted to have just the OpenWrt software, without their firmware, which apparently did data leakage.

I'm using this router with latest vanilla OpenWrt snapshot release (NOR-flash) - no problems so far. If someone needs a working image please drop me a PM, as I don't want to provide "official" community builds.

I've got the WEB-UI for NOR-flashing only with a Windows OS & Firefox, I've never seen it with Linux (Debian sid).

1 Like

see just what the changes were from their git repo

Could you, please, explain how can this be done?

Their repo appears to be at https://github.com/gl-inet in particular https://github.com/gl-inet/openwrt

Clone their repo, then add OpenWrt repo as remote and find the common commit

git remote add openwrt https://git.openwrt.org/openwrt/openwrt.git
git fetch openwrt
git merge-base v18.06.1 develop
70255e3d624cd393612069aae0a859d1acbbeeae

Show the commits since the last common one

git log 70255e3d624cd393612069aae0a859d1acbbeeae develop

commit bc2ee87911e46783e494c467b71929915f4d4ace (HEAD -> develop, origin/develop, origin/HEAD)
Merge: 051abd083d 09bbcea028
Author: Luochongjun <luochongjun@gl-inet.com>
Date:   Sat Jan 5 17:39:20 2019 +0800

    Merge branch 'develop' of github.com:gl-inet/openwrt into develop

commit 051abd083dde4999624ca1117587d1283b9d4953
Author: Luochongjun <luochongjun@gl-inet.com>
Date:   Sat Jan 5 17:38:48 2019 +0800

    gl-basic depend libcares

[...]

Just got a GL-AR750S as well and meant to install vanilla OpenWrt on it. I am running into the same issue as mentioned by @stynx initially. And because he bricked the device when he tried to upload the firmware via uboot, I just stopped there and though I should ask about how to get OpenWrt onto the GL-AR750S properly.

I did, by the way, find the Wiki page on this device. It mentions the error and points to a discussion on the GL-iNet Forum, which, however, doesn't really help me any further.

Any hints on how to get this done would be highly appreciated!

As I recall, my first AR750S was delivered with the U-Boot that does not properly connect with non-Windows machines. I ended up "borrowing" a Windows machine for about 15 minutes to flash the current U-Boot and then uploaded a "vanilla" OpenWrt build (master, ath79, NOR-based) through the U-Boot web interface without issue.

(Note that the NAND drivers have not yet been ported to ath79, though Linux 4.19 is now available to ath79 developers and work is starting to enable the "new" upstream framework for the type of NAND used by the device.)

Later posts in that thread indicate that there may be Windows VM images available if you don't have access to a Windows box for the U-Boot replacement.

Thanks. I saw that, and did install the new version of uboot that was suggested (uboot-gl-ar750s-20181008-md5-3ca5683e0e40be42842051481bd072c6.bin). I also do have a Windows machine available here. So I hope that shouldn't be an issue.

I understand from your post that I should be able to upload an image, if I find the right one. I have here openwrt-ath79-generic-glinet_gl-ar750s-squashfs-sysupgrade.bin
Would that be a correct "vanilla"? If not, which one would I need to download? The download page lists versions by hardware, so I'm not sure which of these qualifies as vanilla...:roll_eyes:

I haven't checked it recently, but http://downloads.openwrt.org/snapshots/targets/ath79/generic/openwrt-ath79-generic-glinet_gl-ar750s-squashfs-sysupgrade.bin should be the "vanilla" snapshot image for the AR750S "Slate". Like all snapshot images, it does not include LuCI. Like all images, wireless is disabled until "manually" enabled.

I'll dig out my slate and confirm that it works, if you'd like

Yes, that is the one I had. I gave it a try, and the router booted up again with this image. Good!

2,4Ghz wifi is working, but 5Ghz wifi is missing. LuCI only shows radio0. Is there a driver missing in the vanilla snapshot for 5Ghz?

Syslog shows:

Sat Apr  6 19:53:43 2019 kern.info kernel: [   11.061244] ath10k 4.19 driver, optimized for CT firmware, probing pci device: 0x50.
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   11.070834] PCI: Enabling device 0000:00:00.0 (0000 -> 0002)
Sat Apr  6 19:53:43 2019 kern.info kernel: [   11.076916] ath10k_pci 0000:00:00.0: pci irq legacy oper_irq_mode 1 irq_mode 0 reset_mode 0
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   11.351122] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/fwcfg-pci-0000:00:00.0.txt failed with error -2
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   11.362038] ath10k_pci 0000:00:00.0: Falling back to user helper
Sat Apr  6 19:53:43 2019 kern.err kernel: [   11.452892] firmware ath10k!fwcfg-pci-0000:00:00.0.txt: firmware_loading_store: map pages failed
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   11.462262] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/pre-cal-pci-0000:00:00.0.bin failed with error -2
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   11.473343] ath10k_pci 0000:00:00.0: Falling back to user helper
Sat Apr  6 19:53:43 2019 kern.err kernel: [   11.648702] firmware ath10k!pre-cal-pci-0000:00:00.0.bin: firmware_loading_store: map pages failed
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   11.660194] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/ct-firmware-5.bin failed with error -2
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   11.671557] ath10k_pci 0000:00:00.0: Falling back to user helper
Sat Apr  6 19:53:43 2019 kern.err kernel: [   11.853693] firmware ath10k!QCA9887!hw1.0!ct-firmware-5.bin: firmware_loading_store: map pages failed
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   11.863465] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/ct-firmware-2.bin failed with error -2
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   11.874809] ath10k_pci 0000:00:00.0: Falling back to user helper
Sat Apr  6 19:53:43 2019 kern.err kernel: [   12.097088] firmware ath10k!QCA9887!hw1.0!ct-firmware-2.bin: firmware_loading_store: map pages failed
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   12.106866] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/firmware-6.bin failed with error -2
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   12.117939] ath10k_pci 0000:00:00.0: Falling back to user helper
Sat Apr  6 19:53:43 2019 kern.err kernel: [   12.292310] firmware ath10k!QCA9887!hw1.0!firmware-6.bin: firmware_loading_store: map pages failed
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   12.301813] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/firmware-5.bin failed with error -2
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   12.312890] ath10k_pci 0000:00:00.0: Falling back to user helper
Sat Apr  6 19:53:43 2019 kern.err kernel: [   12.489757] firmware ath10k!QCA9887!hw1.0!firmware-5.bin: firmware_loading_store: map pages failed
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   12.499286] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/firmware-4.bin failed with error -2
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   12.510361] ath10k_pci 0000:00:00.0: Falling back to user helper
Sat Apr  6 19:53:43 2019 kern.err kernel: [   12.685159] firmware ath10k!QCA9887!hw1.0!firmware-4.bin: firmware_loading_store: map pages failed
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   12.694668] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/firmware-3.bin failed with error -2
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   12.705742] ath10k_pci 0000:00:00.0: Falling back to user helper
Sat Apr  6 19:53:43 2019 kern.err kernel: [   12.881286] firmware ath10k!QCA9887!hw1.0!firmware-3.bin: firmware_loading_store: map pages failed
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   12.891818] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/firmware-2.bin failed with error -2
Sat Apr  6 19:53:43 2019 kern.warn kernel: [   12.902903] ath10k_pci 0000:00:00.0: Falling back to user helper
Sat Apr  6 19:53:43 2019 kern.err kernel: [   13.078331] firmware ath10k!QCA9887!hw1.0!firmware-2.bin: firmware_loading_store: map pages failed
Sat Apr  6 19:53:43 2019 kern.err kernel: [   13.087779] ath10k_pci 0000:00:00.0: Failed to find firmware-N.bin (N between 2 and 6) from ath10k/QCA9887/hw1.0: -11
Sat Apr  6 19:53:43 2019 kern.err kernel: [   13.098759] ath10k_pci 0000:00:00.0: could not fetch firmware files (-11)
Sat Apr  6 19:53:43 2019 kern.err kernel: [   13.105767] ath10k_pci 0000:00:00.0: could not probe fw (-11)

Have you already tried regenerating the wireless config? There might be some subtle differences on device enumeration that "disconnects" the 5 GHz radio from the system. Mine is running on a local ath79 build and the wifi-device sections are

config wifi-device 'radio0'
	option type 'mac80211'
	option channel '165'
	option hwmode '11a'
	option path 'pci0000:00/0000:00:00.0'
	option htmode 'VHT40'
#	option disabled '1'

config wifi-device 'radio1'
	option type 'mac80211'
	option channel '11'
	option hwmode '11g'
	option path 'platform/ahb/ahb:apb/18100000.wmac'
	option htmode 'HT20'
	option disabled '1'

(It may be different on a snapshot as I don't recall all the changes I've made)



Not you, I'm seeing the same thing -- the PCI-attached device seems to be properly probed, but it isn't getting cal data or firmware. I also don't see the load to the ahb-attached device.

 OpenWrt SNAPSHOT, r9813-b812a7fa68
 -----------------------------------------------------
root@OpenWrt:~# rm /etc/config/wireless
root@OpenWrt:~# wifi config
root@OpenWrt:~# cat /etc/config/wireless

config wifi-device 'radio0'
	option type 'mac80211'
	option channel '11'
	option hwmode '11g'
	option path 'platform/ahb/ahb:apb/18100000.wmac'
	option htmode 'HT20'
	option disabled '1'

config wifi-iface 'default_radio0'
	option device 'radio0'
	option network 'lan'
	option mode 'ap'
	option ssid 'OpenWrt'
	option encryption 'none'


from ath10k/QCA9887/hw1.0

root@OpenWrt:~# find /lib/firmware/
/lib/firmware/
/lib/firmware/ath10k
/lib/firmware/ath10k/QCA988X
/lib/firmware/ath10k/QCA988X/hw2.0
/lib/firmware/ath10k/QCA988X/hw2.0/board.bin
/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
/lib/firmware/ath10k/cal-pci-0000:00:00.0.bin
/lib/firmware/regulatory.db

Looks to be missing (from my own config)

CONFIG_PACKAGE_ath10k-firmware-qca9887=y

(or ath10k-firmware-qca9887-ct or another variant)



Confirmed Missing ath10k Firmware

root@OpenWrt:~# opkg install /tmp/ath10k-firmware-qca9887-ct_2018-10-10-d366b80d-1_mips_24kc.ipk 
Installing ath10k-firmware-qca9887-ct (2018-10-10-d366b80d-1) to root...
Configuring ath10k-firmware-qca9887-ct.

and a reboot after removing the "bad" /etc/config/wireless resolves it

opkg update ; opkg install ath10k-firmware-qca9887-ct
should work on an Internet-connected device. Mine is just hanging off a local cable.


Update, filed

https://patchwork.ozlabs.org/patch/1088433/ -- ath79: glinet_gl-ar750s: Use QCA9887 firmware

1 Like

@jeff: Tremendous, works! Thanks!

1 Like

Hello again, having played around with this a while, I now wanted to install strongswan, so that I can use the router to build up a VPN to my home when I'm travelling (and ipsec is much more lenient on the CPU than openvpn). However, when I try to install strongswan-full, I get the message that I'd need another kernel:

root@OpenWrt:~# opkg install strongswan-full
Installing strongswan-full (5.7.2-1) to root...
Downloading http://downloads.openwrt.org/snapshots/packages/mips_24kc/packages/strongswan-full_5.7.2-1_mips_24kc.ipk
Multiple packages (libpthread and libpthread) providing same name marked HOLD or PREFER. Using latest.Multiple packages (libpthread and libpthread) providing same name marked HOLD or PREFER. Using latest.Multiple packages (libpthread and libpthread) providing same name marked HOLD or PREFER. Using latest.Multiple packages (libpthread and libpthread) providing same name marked HOLD or PREFER. Using latest.Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for strongswan-full:
 *      kernel (= 4.14.113-1-d15b9d60bc87f1ac9f16aecaab987c07)
 * opkg_install_cmd: Cannot install package strongswan-full.

Is there any way to update the kernel without building a full new image from scratch (which would be beyond my capabilities, I guess)?