GL.iNet GL-X3000/ Spitz AX support

Just to Update some potential relevant commits:

The user ‚dangowrt‘ seems to be pretty active on Github - maybe someone with the necessary know-how could reach out to him and ask for help?
Link: https://github.com/dangowrt

I've opened a PR in order to add support for the GL.iNet X3000 (Spitz AX) and XE3000 (Puli AX) in OpenWrt : https://github.com/openwrt/openwrt/pull/14142. Feel free to test it in order to report any issue you might stumble upon.

As far as I can see, the only issue is the modem being stuck when booting with a network configuration enabling the wwan0 interface. I have a fix for this in uqmi, which has been posted for review here.

1 Like

Hello JayBG:
Did you fixed the problem :
"[ 8.245324] mt798x-wmac 18000000.wifi: eeprom load fail, use default bin
[ 8.252083] mt798x-wmac 18000000.wifi: Direct firmware load for mediatek/mt7981_eeprom_mt7976_dbdc.bin failed with error -2
[ 8.263215] mt798x-wmac 18000000.wifi: Falling back to sysfs fallback for: mediatek/mt7981_eeprom_mt7976_dbdc.bin
[ 8.295557] mt798x-wmac: probe of 18000000.wifi failed with error -12
[ 8.324701] PPP generic driver version 2.4.2"

Hello dohseven:
Have you ever encountered this problem"mt798x-wmac: probe of 18000000.wifi failed with error -12" ?
And how to solved it.

Hi,
You have to indicate where the *.bin file can be found: on this device, this is in the factory partition.
This is done in the PR here: https://github.com/openwrt/openwrt/pull/14142/files#diff-38e9c363b260069ffdaf4e802b9d152578b11e9aa74117abc11055deac77e365R28

Hi dohseven:
Is it mt7981_eeprom_mt7976_dbdc.bin file you're talkong about?
I see you add "glinet,gl-x3000" in 11-mt76-caldata.

Yes, this is used to indicate where this file can be found for this device.
I would suggest you wait for the device being integrated in OpenWrt, then you will be able to use the generated firmware.

Hi dohseven:
Thanks for your reply.
But I do not find the mt7981_eeprom_mt7976_dbdc.bin file . I search it by "find ./ -name mt7981*.bin" in openwrt.
I only found mt7986_eeprom_mt7976_dbdc.bin file.
The mt7981_eeprom_mt7976_dbdc.bin file is openwrt staff will upload ? Or what?

There is no mt7981_eeprom_mt7976_dbdc.bin file. It is stored in the factory partition (/dev/mmcblk0p3) at the offset 0. That's what the code I linked does: it retrieves the content of the MMC to create the file, and then use it.

2 Likes

Hello,
The only issue I have found so far is related to the PWM:

[    0.067055] pwm-mediatek 10048000.pwm: clock: top fail: -517
[    1.046576] mt7981-pinctrl 11d00000.pinctrl: pin PWM0 already requested by 11230000.mmc; cannot claim for 10048000.pwm
[    1.057279] mt7981-pinctrl 11d00000.pinctrl: pin-15 (10048000.pwm) status -22
[    1.064407] mt7981-pinctrl 11d00000.pinctrl: could not request pin 15 (PWM0) from group pwm0_1  on device pinctrl_moore
[    1.075177] pwm-mediatek 10048000.pwm: Error applying setting, reverse things back

Hi,
Thanks for testing, and glad it works for you too!
I also noticed the PWM issue, which has been introduced during the PR review, and is currently being discussed here.

Things seems to have stalled a bit with getting support into master, is there anything that can be done to get the PR merged? Happy to help if possible!

I'm trying to keep the PR alive by regularly rebasing it on top of master, but I didn't get any return from any reviewer in the last month. As far as I can see, there is no blocking point, but nothing moves any more.

I don't know what we can do to get the PR merged, any advice is welcome!

I mentioned the maintainers in a comment on the PR (using Github's @ function) and things seems to be moving again!

Thanks, Daniel Golle already helped me a lot since the opening of the PR, and had in fact already approved the PR earlier :sweat_smile:

I'll do the changes he requests, but then we will need even more approvers, as one does not seem to be enough in the OpenWrt process.

Thanks for all your work on this, PR merged and master build up and and running on my new GL-X3000!

In case it helps anyone else, the steps I followed to set up the mobile network:

  • Installed package luci-proto-modemmanager
  • Created a new interface using the protocol "ModemManager"
  • Edited the new interface to set the correct APN and add the interface to the "wan" firewall zone
1 Like

Is there anything additional that needs to be done to get 5G support enabled?
With or without a SIM inserted, mmcli shows only up to 4G LTE supported:

root@OpenWrt:~# mmcli -m 0
...
-----------------------------
  Hardware |      manufacturer: Quectel
           |             model: RM520N-GL
           | firmware revision: RM520NGLAAR01A07M4G
           |         supported: gsm-umts, lte
           |           current: gsm-umts, lte
...
-----------------------------
  Modes    |         supported: allowed: 2g, 3g, 4g; preferred: none
           |           current: allowed: 2g, 3g, 4g; preferred: none

Thanks a lot @mocmocamoc for pushing the PR into being merged!

I don't have a 5G SIM card (yet), so I'm not able to test on my device, but as far as I can see the 5G network can be detected by the modem:

root@OpenWrt:/# mmcli -m 0 
  -----------------------------------
  General  |                    path: /org/freedesktop/ModemManager1/Modem/0
           |               device id: bbbc308cf369730622e8944f5b90a094ce8db130
  -----------------------------------
  Hardware |            manufacturer: Quectel
           |                   model: RM520N-GL
           |       firmware revision: RM520NGLAAR01A07M4G
           |          carrier config: ROW_Commercial
           | carrier config revision: 0A010809
           |            h/w revision: 20000
           |               supported: gsm-umts, lte, 5gnr
           |                 current: gsm-umts, lte, 5gnr
           |            equipment id: <redacted>
  -----------------------------------
  System   |                  device: /sys/devices/platform/soc/11200000.usb/usb1/1-1/1-1.2
           |                 physdev: /sys/devices/platform/soc/11200000.usb/usb1/1-1/1-1.2
           |                 drivers: qmi_wwan, option1
           |                  plugin: quectel
           |            primary port: cdc-wdm0
           |                   ports: cdc-wdm0 (qmi), ttyUSB2 (at), ttyUSB3 (at), wwan0 (net)
  -----------------------------------
  Status   |                    lock: sim-pin2
           |          unlock retries: sim-pin (3), sim-puk (10), sim-pin2 (3), sim-puk2 (10)
           |                   state: registered
           |             power state: on
           |             access tech: lte
           |          signal quality: 75% (recent)
  -----------------------------------
  Modes    |               supported: allowed: 3g; preferred: none
           |                          allowed: 4g; preferred: none
           |                          allowed: 3g, 4g; preferred: 4g
           |                          allowed: 3g, 4g; preferred: 3g
           |                          allowed: 5g; preferred: none
           |                          allowed: 4g, 5g; preferred: 5g
           |                          allowed: 4g, 5g; preferred: 4g
           |                          allowed: 3g, 5g; preferred: 5g
           |                          allowed: 3g, 5g; preferred: 3g
           |                          allowed: 3g, 4g, 5g; preferred: 5g
           |                          allowed: 3g, 4g, 5g; preferred: 4g
           |                          allowed: 3g, 4g, 5g; preferred: 3g
           |                 current: allowed: 3g, 4g, 5g; preferred: 5g
  -----------------------------------
  Bands    |               supported: utran-1, utran-4, utran-6, utran-5, utran-8, utran-2, 
           |                          eutran-1, eutran-2, eutran-3, eutran-4, eutran-5, eutran-7, eutran-8, 
           |                          eutran-12, eutran-13, eutran-14, eutran-17, eutran-18, eutran-19, 
           |                          eutran-20, eutran-25, eutran-26, eutran-28, eutran-29, eutran-30, 
           |                          eutran-32, eutran-34, eutran-38, eutran-39, eutran-40, eutran-41, 
           |                          eutran-42, eutran-43, eutran-46, eutran-48, eutran-66, eutran-71, 
           |                          utran-19, ngran-1, ngran-2, ngran-3, ngran-5, ngran-7, ngran-8, 
           |                          ngran-12, ngran-13, ngran-14, ngran-18, ngran-20, ngran-25, ngran-26, 
           |                          ngran-28, ngran-29, ngran-30, ngran-38, ngran-40, ngran-41, ngran-48, 
           |                          ngran-66, ngran-70, ngran-71, ngran-75, ngran-76, ngran-77, ngran-78, 
           |                          ngran-79
           |                 current: utran-1, utran-4, utran-5, utran-8, utran-2, eutran-1, 
           |                          eutran-2, eutran-3, eutran-4, eutran-5, eutran-7, eutran-8, 
           |                          eutran-12, eutran-13, eutran-14, eutran-17, eutran-18, eutran-19, 
           |                          eutran-20, eutran-25, eutran-26, eutran-28, eutran-29, eutran-30, 
           |                          eutran-32, eutran-34, eutran-38, eutran-39, eutran-40, eutran-41, 
           |                          eutran-42, eutran-43, eutran-46, eutran-48, eutran-66, eutran-71, 
           |                          utran-19, ngran-1, ngran-2, ngran-3, ngran-5, ngran-7, ngran-8, 
           |                          ngran-12, ngran-13, ngran-14, ngran-18, ngran-20, ngran-25, ngran-26, 
           |                          ngran-28, ngran-29, ngran-30, ngran-38, ngran-40, ngran-41, ngran-48, 
           |                          ngran-66, ngran-70, ngran-71, ngran-75, ngran-76, ngran-77, ngran-78, 
           |                          ngran-79
  -----------------------------------
  IP       |               supported: ipv4, ipv6, ipv4v6
  -----------------------------------
  3GPP     |                    imei: <redacted>
           |           enabled locks: fixed-dialing
           |             operator id: 20820
           |           operator name: Bouygues Telecom
           |            registration: home
           |    packet service state: attached
  -----------------------------------
  3GPP EPS |     initial bearer path: /org/freedesktop/ModemManager1/Bearer/0
           |      initial bearer apn: <redacted>
           |  initial bearer ip type: ipv4
  -----------------------------------
  SIM      |        primary sim path: /org/freedesktop/ModemManager1/SIM/0
           |          sim slot paths: slot 1: /org/freedesktop/ModemManager1/SIM/0 (active)
           |                          slot 2: none

Have you switched the modem to use the USB interface, as indicated in the commit message adding support for the X3000 device?

1 Like

Thanks, that was indeed the problem, switched to USB and now 5G is enabled!

Hello,
First congratulation on getting the support approved. The only issue currently is since it seems that the kernel has been bumped to a version that includes the 2 patches (pinctl and emmc), the build fails due to the patches not being able to be applied. Since I am not sure how to open an issue and request the removal of the 2 patches, I am writing here.

EDIT: My mistake, this has not been included in the kernel, but the patches are included twice:
250-pinctrl-mediatek-mt7981-add-additional-uart-group.patch
251-pinctrl-mediatek-mt7981-add-additional-emmc-group.patch
253-pinctrl-mediatek-mt7981-add-additional-uart-group.patch
254-pinctrl-mediatek-mt7981-add-additional-emmc-group.patch