GL-iNet AX1800 new router - OpenWrt support?

Power off the device, power it back on with a pin holding reset to go into uboot then flash stock firmware to unbrick it.

1 Like

Back in business, but my wireless devices disappeared in the process!

Are you back on the stock firmware ? or the new compiled firmware ???

New compiled, the brick was not due to new compiled, it was a test of a pre-compiled binary from somewhere else. Something did not agree with my understanding - it could all be my fault too, mis-configuring things.

The newly compiled luci does not show any wireless device.

It could be a setting within the luciall.yml bud, change script back to just luci.yml for now.
I am still learning the ways gl-inet does things.

1 Like

Can we use multiple profiles?
Seems like we need wifi-ax.yml

I am building with
./scripts/gen_config.py target_wlan_ap-gl-ax1800 luciall wifi-ax webui

Will see what happens.

You are including way to much as wifi-ax and webui should already be included in luciall (which i have updated to not compile everything for now).

Semi right, webui is not included, wifi-ax is mostly included in the target, with some essential component in luciall. Standard build still fails as before, I need the IGNORE_ERRORS flag.
Maybe that's the point, the errors stop some functionality. I should build on a different box to see if that makes a difference. Maybe Friday.

In any case the build result seems to produce the same: still no wireless.
And it seems that this build is not flashing further firmware correctly - must reset for anything to load properly.

This build also seems to be missing update_plugins_db.

Going to give it a rest as yet again another filed 4mb image compile.

Updated: New Image on Mega.NZ with everything setup!!

@gustavargas was kind enough to also mirror my original domain prior to my mess up.

R16273 Mega.nz: DOWNLOAD

If you want to move to the Mirror Repo in SSH or the LUCI Terminal app issue the command below.

sed -i 's/https://flint.solidus1983.duckdns.org/snapshots/r16273/https://mirror-ax1800.dev48.xyz/snapshots/r16273/g' /etc/opkg/distfeeds.conf
okpg update

To return to main Repo in SSH or via Terminal app in LUCI

sed -i 's/https://mirror-ax1800.dev48.xyz/snapshots/r16273/https://flint.solidus1983.duckdns.org/snapshots/r16273/g' /etc/opkg/distfeeds.conf
okpg update
1 Like

How to compile openwrt for the Flint AX-1800

Simply SSH into your build box then enter the following

nano glinet.sh

Or

vim glinet.sh

Paste below into it and save.

#!/bin/bash

## Update and install required packages for Gl-Inet Intra Cross Compile ##

sudo apt update && sudo apt dist-upgrade -y 
sudo apt install -y build-essential ccache ecj fastjar file g++ gawk subversion swig time \
gettext git java-propose-classpath libelf-dev libncurses5-dev \
libncursesw5-dev libssl-dev unzip wget binutils bzip2 diffutils flex perl clang \
python3 python2.7-dev python3 python3-distutils python3-setuptools \
xsltproc zlib1g-dev sshpass dos2unix zip patch curl \
make diffutils gcc grep libc-dev libz-dev rsync docbook2x util-linux \
perl subversion gcc-multilib g++-multilib git-core ocaml sharutils re2c qemu-guest-agent

## Unsetting SED ##
#unset SED

## Clone Intra ##
git clone https://github.com/solidus1983/gl-infra-builder.git
cd ~/gl-infra-builder
python3 setup.py -c config-wlan-ap.yml

## Add Themes ##
cd ~/gl-infra-builder/wlan-ap/openwrt/package
git clone -b master https://github.com/jerrykuku/luci-theme-argon.git 
git clone -b master https://github.com/jerrykuku/luci-app-argon-config.git

## Complete Intra Setup ##
cd ~/gl-infra-builder/wlan-ap/openwrt
./scripts/gen_config.py target_wlan_ap-gl-ax1800 solidus1983build

## Fix Config ##
cd ~/gl-infra-builder/wlan-ap/openwrt
sed -i '/is not set/d' .config

### Run Menuconfig to adjust things ##
./scripts/getver.sh > ~/gl-infra-builder/wlan-ap/openwrt/version.info
cat ~/gl-infra-builder/wlan-ap/openwrt/version.info
read -p "Edit the .config file and then press any key to continue... " -n1 -s
make menuconfig
make defconfig

## Compile ##
IGNORE_ERRORS=1 make -j$(($(nproc)+1)) V=sc

This script once you have chmod a+x glinet.sh then ./glinet.sh it will then make the entire build enviroment for you if your using either Debian 11.2 or Ubuntu 21.x+ then after compile the firmware.

Hopefully this will make it easier for the average joe. If you need to edit the .config file simply edit the solidus1983build.yml file in the ~/gl-infra-builder/profiles folder.

Be glad when this is all working and over, i can then get more then 2 hour sleep a day, this is taking why too much of my time and its not doing me any good lol.

Forgot to add the contents of the solidus1983build.yml file

---
description: Add the LUCI dependencies for Solidus1983 Build
feeds:
  - name: glinet
    path: ../feeds_dir/glinet

packages:
  - luci
  - luci-base
  - luci-mod-rpc
  - 464xlat
  - 6in4
  - 6rd
  - 6to4
  - adblock
  - banip
  - bcp38
  - bind-client
  - bind-libs
  - bind-nslookup
  - cgi-io
  - collectd
  - collectd-mod-cpu
  - collectd-mod-interface
  - collectd-mod-iwinfo
  - collectd-mod-load
  - collectd-mod-memory
  - collectd-mod-network
  - collectd-mod-rrdtool
  - collectd-mod-sensors
  - collectd-mod-thermal
  - collectd-mod-vmem
  - collectd-mod-wireless
  - coreutils
  - coreutils-sort
  - curl
  - ddns-scripts
  - ddns-scripts-cloudflare
  - ddns-scripts-digitalocean
  - ddns-scripts-freedns
  - ddns-scripts-godaddy
  - ddns-scripts-noip
  - ddns-scripts-nsupdate
  - ddns-scripts-route53
  - ddns-scripts-services
  - dnscrypt-proxy2
  - dnsmasq-full
  - dnsmasq_full_auth
  - dnsmasq_full_conntrack
  - dnsmasq_full_dhcp
  - dnsmasq_full_dhcpv6
  - dnsmasq_full_dnssec
  - dnsmasq_full_ipset
  - dnsmasq_full_noid
  - dnsmasq_full_tftp
  - etherwake
  - igmpproxy
  - ip-bridge
  - ip-full
  - iperf
  - iperf3
  - ipset
  - ipset-dns
  - iptables-mod-conntrack-extra
  - iptables-mod-conntrack-label
  - iptables-mod-dhcpmac
  - iptables-mod-filter
  - iptables-mod-hashlimit
  - iptables-mod-iface
  - iptables-mod-ipmark
  - iptables-mod-ipopt
  - iptables-mod-iprange
  - iptables-mod-ipsec
  - iptables-mod-nat-extra
  - iptables-mod-physdev
  - iptables-mod-proto
  - kmod-asn1-decoder
  - kmod-atm
  - kmod-br-netfilter
  - kmod-dnsresolver
  - kmod-fs-exportfs
  - kmod-fs-ksmbd
  - kmod-fs-nfs-common
  - kmod-fs-nfs-common-rpcsec
  - kmod-fs-nfsd
  - kmod-ifb
  - kmod-ip6tables-extra
  - kmod-ipip
  - kmod-ipoa
  - kmod-ipsec
  - kmod-ipsec4
  - kmod-ipsec6
  - kmod-ipt-checksum
  - kmod-ipt-compat-xtables
  - kmod-ipt-conntrack-extra
  - kmod-ipt-conntrack-label
  - kmod-ipt-dhcpmac
  - kmod-ipt-extra
  - kmod-ipt-filter
  - kmod-ipt-hashlimit
  - kmod-ipt-iface
  - kmod-ipt-ipmark
  - kmod-ipt-ipopt
  - kmod-ipt-iprange
  - kmod-ipt-ipsec
  - kmod-ipt-ipset
  - kmod-ipt-nat-extra
  - kmod-ipt-nat6
  - kmod-ipt-physdev
  - kmod-ipt-proto
  - kmod-ipt-raw
  - kmod-ipt-raw6
  - kmod-l2tp
  - kmod-lib-crc32c
  - kmod-lib-lzo
  - kmod-lib-textsearch
  - kmod-lib-zlib-deflate
  - kmod-lib-zlib-inflate
  - kmod-mppe
  - kmod-nat46
  - kmod-netem
  - kmod-nls-utf8
  - kmod-pppoa
  - kmod-pppol2tp
  - kmod-pptp
  - kmod-sched
  - kmod-sched-act-vlan
  - kmod-sched-core
  - kmod-sched-ipset
  - kmod-sit
  - kmod-tun
  - kmod-udptunnel4
  - kmod-udptunnel6
  - kmod-veth
  - kmod-wireguard
  - kmod-zram
  - ksmbd-server
  - libatomic
  - libbpf
  - libcap
  - libcap-ng
  - libcurl
  - libelf
  - libgmp
  - libipset
  - libiwinfo-lua
  - libltdl
  - liblua
  - liblucihttp
  - liblucihttp-lua
  - libmnl
  - libnatpmp
  - libnetfilter-conntrack
  - libnettle
  - libnfnetlink
  - libnghttp2
  - libnl-core
  - libnl-genl
  - libopenssl
  - libopenssl-conf
  - librrd1
  - librt
  - libsensors
  - libsysfs
  - libubus-lua
  - libuci-lua
  - libupnp
  - libustream-openssl
  - libuuid
  - libuv
  - libwebsockets-full
  - linux-atm
  - lm-sensors
  - lua
  - luci-app-adblock
  - luci-app-banip
  - luci-app-bcp38
  - luci-app-ddns
  - luci-app-firewall
  - luci-app-ksmbd
  - luci-app-openvpn
  - luci-app-opkg
  - luci-app-qos
  - luci-app-sqm
  - luci-app-statistics
  - luci-app-ttyd
  - luci-app-uhttpd
  - luci-app-upnp
  - luci-app-vpn-policy-routing
  - luci-app-vpnbypass
  - luci-app-wol
  - luci-compat
  - luci-lib-base
  - luci-lib-ip
  - luci-lib-ipkg
  - luci-lib-json
  - luci-lib-jsonc
  - luci-lib-nixio
  - luci-lib-nixio_openssl
  - luci-lib-px5g
  - luci-mod-admin-full
  - luci-mod-network
  - luci-mod-status
  - luci-mod-system
  - luci-proto-ipv6
  - luci-proto-ppp
  - luci-proto-wireguard
  - luci-ssl-openssl
  - luci-theme-bootstrap
  - luci-theme-argon
  - luci-app-argon-config
  - mdnsd
  - miniupnpd
  - mwan3
  - natpmpc
  - netperf
  - openssl-util
  - ppp-mod-pppoa
  - ppp-mod-pppol2tp
  - ppp-mod-pptp
  - qos-scripts
  - resolveip
  - rpcd
  - rpcd-mod-file
  - rpcd-mod-iwinfo
  - rpcd-mod-luci
  - rpcd-mod-rrdns
  - rrdtool1
  - speedtest-netperf
  - sqm-scripts
  - sysfsutils
  - tc-full
  - tc-mod-iptables
  - ttyd
  - u2pnpd
  - ucert
  - uclibcxx
  - uhttpd
  - uhttpd-mod-ubus
  - umdns
  - vpn-policy-routing
  - vpnbypass
  - wireless-regdb
  - wpad-openssl
  - wsdd2
  - zlib
  - zram-swap

diffconfig: |
  CONFIG_LUCI_LANG_ar=y
  CONFIG_LUCI_LANG_bg=y
  CONFIG_LUCI_LANG_bn_BD=y
  CONFIG_LUCI_LANG_ca=y
  CONFIG_LUCI_LANG_cs=y
  CONFIG_LUCI_LANG_de=y
  CONFIG_LUCI_LANG_el=y
  CONFIG_LUCI_LANG_en=y
  CONFIG_LUCI_LANG_es=y
  CONFIG_LUCI_LANG_fi=y
  CONFIG_LUCI_LANG_fr=y
  CONFIG_LUCI_LANG_he=y
  CONFIG_LUCI_LANG_hi=y
  CONFIG_LUCI_LANG_hu=y
  CONFIG_LUCI_LANG_it=y
  CONFIG_LUCI_LANG_ja=y
  CONFIG_LUCI_LANG_ko=y
  CONFIG_LUCI_LANG_mr=y
  CONFIG_LUCI_LANG_ms=y
  CONFIG_LUCI_LANG_nb_NO=y
  CONFIG_LUCI_LANG_nl=y
  CONFIG_LUCI_LANG_pl=y
  CONFIG_LUCI_LANG_pt=y
  CONFIG_LUCI_LANG_pt_BR=y
  CONFIG_LUCI_LANG_ro=y
  CONFIG_LUCI_LANG_ru=y
  CONFIG_LUCI_LANG_sk=y
  CONFIG_LUCI_LANG_sv=y
  CONFIG_LUCI_LANG_tr=y
  CONFIG_LUCI_LANG_uk=y
  CONFIG_LUCI_LANG_vi=y
  CONFIG_LUCI_LANG_zh_Hans=y
  CONFIG_LUCI_LANG_zh_Hant=y
  CONFIG_ALL_KMODS=y
  CONFIG_ALL_NONSHARED=y
  CONFIG_ALL=y 

Update: Right the entire compile is now getting pushed to the mirror server with images, It will take around 2 hours to do so, however if you downloaded the R16273 build your golden to simply OPKG update to grab the software list after that.

This means you can add and remove ipk's at your pleasure just remember to thank @gustavargas for donating the resources and be kind on his box, just like you have with mine!

This message has been sent via:-

There is a bug in OPKG as the firmware images just made with the full compile crashes.

Please head into Software - > Configure OPKG and change

dest root /
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay
option check_signature

To

dest root /
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay
#option check_signature

It should then work after that.

Edit: Updated the script to make the firmware.

3 Likes

I really don't want to be that guy.. but I'm struggling with some failed builds.

   arm-openwrt-linux-muslgnueabi-ld -EL    -r -o drivers/pci/built-in.o drivers/pci/access.o drivers/pci/bus.o drivers/pci/probe.o drivers/pci/host-bridge.o drivers/pci/remove.o drivers/pci/pci.o drivers/pci/pci-driver.o drivers/pci/search.o drivers/pci/pci-sysfs.o drivers/pci/rom.o drivers/pci/setup-res.o drivers/pci/irq.o drivers/pci/vpd.o drivers/pci/setup-bus.o drivers/pci/vc.o drivers/pci/proc.o drivers/pci/slot.o drivers/pci/quirks.o drivers/pci/msi.o drivers/pci/setup-irq.o drivers/pci/syscall.o drivers/pci/of.o drivers/pci/host/built-in.o
make[5]: *** [Makefile:971: drivers] Error 2
make[5]: Leaving directory '/openwrt-builder/openwrtbuilds/router/gl-ax1800-infra/gl-infra-builder/wlan-ap/openwrt/build_dir/target-arm_cortex-a7_musl_eabi/linux-ipq807x_ipq60xx/linux-4.4.60-qsdk-11f09717303ecd83c3a64e9efe23f25921dc1016'
make[4]: *** [Makefile:23: /openwrt-builder/openwrtbuilds/router/gl-ax1800-infra/gl-infra-builder/wlan-ap/openwrt/build_dir/target-arm_cortex-a7_musl_eabi/linux-ipq807x_ipq60xx/linux-4.4.60-qsdk-11f09717303ecd83c3a64e9efe23f25921dc1016/.modules] Error 2
make[4]: Leaving directory '/openwrt-builder/openwrtbuilds/router/gl-ax1800-infra/gl-infra-builder/wlan-ap/openwrt/target/linux/ipq807x'
make[3]: *** [Makefile:11: compile] Error 2
make[3]: Leaving directory '/openwrt-builder/openwrtbuilds/router/gl-ax1800-infra/gl-infra-builder/wlan-ap/openwrt/target/linux'
time: target/linux/compile#60.89#20.39#15.14
    ERROR: target/linux failed to build.
make[2]: *** [target/Makefile:25: target/linux/compile] Error 1
make[2]: Leaving directory '/openwrt-builder/openwrtbuilds/router/gl-ax1800-infra/gl-infra-builder/wlan-ap/openwrt'
make[1]: *** [target/Makefile:18: /openwrt-builder/openwrtbuilds/router/gl-ax1800-infra/gl-infra-builder/wlan-ap/openwrt/staging_dir/target-arm_cortex-a7_musl_eabi/stamp/.target_compile] Error 2
make[1]: Leaving directory '/openwrt-builder/openwrtbuilds/router/gl-ax1800-infra/gl-infra-builder/wlan-ap/openwrt'
make: *** [/openwrt-builder/openwrtbuilds/router/gl-ax1800-infra/gl-infra-builder/wlan-ap/openwrt/include/toplevel.mk:230: world] Error 2

I've build many openWRT builds in the past. this is my first time trying your / gl-infra-builder method. No success so far.

Any thoughts?

You using the latest script? Also I use ignore error switch too on my builds.

Just seen your directory output you need to adjust script to accomodate that.

It is the latest script ^2 above,
and I did adjust all the components in the script to accomodate my directory structure.

(I run it line by line manually so I know that its doing anyway but here is my modified version)

#!/bin/bash

## Update and install required packages for Gl-Inet Intra Cross Compile ##

sudo apt update && sudo apt dist-upgrade -y 
sudo apt install -y build-essential ccache ecj fastjar file g++ gawk subversion swig time \
gettext git java-propose-classpath libelf-dev libncurses5-dev \
libncursesw5-dev libssl-dev unzip wget binutils bzip2 diffutils flex perl clang \
python3 python2.7-dev python3 python3-distutils python3-setuptools \
xsltproc zlib1g-dev sshpass dos2unix zip patch curl \
make diffutils gcc grep libc-dev libz-dev rsync docbook2x util-linux \
perl subversion gcc-multilib g++-multilib git-core ocaml sharutils re2c qemu-guest-agent

## Unsetting SED ##
#unset SED

## Clone Intra ##
git clone https://github.com/solidus1983/gl-infra-builder.git
cd gl-infra-builder
python3 setup.py -c config-wlan-ap.yml

## Add Themes ##
cd wlan-ap/openwrt/package
git clone -b master https://github.com/jerrykuku/luci-theme-argon.git 
git clone -b master https://github.com/jerrykuku/luci-app-argon-config.git

## Complete Intra Setup ##
cd ..
./scripts/gen_config.py target_wlan_ap-gl-ax1800 solidus1983build

## Fix Config ##
sed -i '/is not set/d' .config

### Run Menuconfig to adjust things ##
./scripts/getver.sh > version.info
cat version.info
read -p "Edit the .config file and then press any key to continue... " -n1 -s
make menuconfig
make defconfig

## Compile ##
IGNORE_ERRORS=1 make -j$(($(nproc)+1)) V=sc

even ignoring errors I get the fail.

Maybe I'll spin up a new ubuntu box to get a clean environment if your telling me its a me issue.

Check DM i have corrected your scripting edits.

Edit: I have just stopped on the same point as you. So will see if there is any changes in gl-inets repo i fork from.

At the same time go into the ~/openwrt-builder/openwrtbuilds/router/gl-ax1800-infra/gl-infra-builder/wlan-ap/openwrt/ folder then type the following

make -j$(($(nproc)+1)) V=sc download
IGNORE_ERRORS=1 make -j$(($(nproc)+1)) V=sc tools
IGNORE_ERRORS=1 make -j$(($(nproc)+1)) V=sc toolchain

This should then download everything that is needed then run

IGNORE_ERRORS=1 make -i -j$(($(nproc)+1)) V=sc

See if that helps.

1 Like

Thanks @solidus1983 for your work and time.

Im really glad to provide a mirror for your repo. :wink:

2 Likes

But this time i will be testing it on my router first before pushing it to your box for hosting lol.

Then its waiting on Kernel 5.xx to be patched for this device and then i can include Qosify and have a decent router with a bit more ooomph.

2 Likes

Went back to gl-inet repo today, compiled first time without errors. Flashed it, it works and has wireless - I did not yet test the wireless connectivity but I am in a better place than a week ago.

How ever much you guys contributed to getting the gl-inet repo to work, thank you.

3 Likes

Spoke to GL-iNet over the last week, sales rep said the AX1800 development roadmap has kernel 5.x support but not until Sept 2023. I let them know that's a deal breaker for us as we need a replacement for the Archer C7v5 (their EOL as of last week May 2022)

The AX1800 looked like a solid step up replacement but we're going to have to keep looking. Just putting this here so others don't have to waste their time.

2 Likes

EDIT: Strike that, i made a boo boo and forgot to compile some things one being important for Wireless to work securely!

Will restore the original files so mirror is down for now!