X750 Spitz is there a way to lock to band?


#1

I recently purchased the LTE modem Spitz and was wondering if there was a way to lock the band on the tmobile network. Sometimes certain bands get convested, and running speed tests by cycling through different bands allow me to choose the best band to lock onto. I can do this on the MoFi4500, and was hoping to do the same with this.

Is it possible to do it with the Luci UI?


#2

My understanding is that the Quectel modems cannot lock bands in firmware. If they can, it’s poorly documented.

The Mofi uses a Sierra Wireless modem and it can lock bands in firmware. So unless I’m wrong, I think the answer is no, you cannot lock bands.

I wish you could.


#3

Quectel EP06 AT Commands manual

Try using AT commands. Start reading on page 40. You can prevent the EP06 from searching those over-saturated bands. Maybe a viable workaround for you.


#4

I believe these are the AT commands you need to implement to lock a band:


#6
  1. Insert the SIM card into Splitz

  2. Login the WebUI and start AT command interface

  3. Input AT command: AT+QCFG=”Band”, check your current band information.
    You will get value return with 3 parameters, it looks like as follow:
    image
    1st parameter “0X93” is for 2G/3G band, 2nd parameter “0x3ffffffff”is for 4G band and the 3rd parameter “0x21” is for TDSCDMA band.

  4. Modify parameter. (Do not modify “0x”, just the parameter after 0x), AT command:
    Change to Band 7 only: AT+QCFG=”band”, 93,40,21
    Change to Band 38 only: AT+QCFG=”band”, 93, 2000000000,21
    Change to Band 7&38: AT+QCFG=”band”, 93, 2000000040,21

  5. Reboot after Band configuration, then use AT command:
    AT+QNWINFO
    Check your current using band.


#8

Thanks!

I’ve ran AT+QCFG="band" and I get +QCFG: "band",0x2e0,0x2000000003300185a,0x0

This makes no sense to me because 0x2000000003300185a doesn’t correlate to any of the bands added together. Can you please help me make sense of this? I’m on the T-Mobile LTE bands.


#9

Ok, I figured out a bunch of things. I was originally receiving horrible speeds for T-Mobile (circa 0.7Mbps download) by simply plugging in the device. Meanwhile, my MoFi4500 and iPhone X Qualcomm were both achieving 5-6Mbps.

I noticed that the X750 Spitz kept connecting to Band 12. I suspect it kept connecting to Band 12 because it had the stronger signal. To achieve higher speeds, I needed to switch away from Band 12. Typically, 700MHz Band 12 will be more congested because it only has 5MHz of bandwidth available for a wider area. 700MHz penetrates well into buildings, or elevators, but if you’re antennas are right next to a window, it’s unlikely to help. I needed to switch to a higher MHz band, such as LTE Band 4 (1700/2100 MHz aka AWS bands) or LTE Band 2 (1900 MHz). T-Mobile operates these two bands with more bandwidth, 20MHz and 10MHz depending on the geographical market.

To change LTE Bands use the following AT Commands

Bands AT Commands Notes
2 AT+QCFG="band",0,2,1
4 AT+QCFG="band",0,8,1
5 AT+QCFG="band",0,10,1
2+4 AT+QCFG="band",0,a,1 This will likely be the fastest for urban environments
2+4+5 AT+QCFG="band",0,1a,1
12 AT+QCFG="band",0,800,1
2+4+12 AT+QCFG="band",0,80a,1
2+4+5+12 AT+QCFG="band",0,81a,1 This covers all T-Mobile bands
2+12 AT+QCFG="band",0,802,1
4+12 AT+QCFG="band",0,808,1
5+12 AT+QCFG="band",0,810,1 This will be best for rural deployments as 850MHz Band 5, and 700MHz Band 12 will reach the farthest distance
Reset to Default (All Bands) AT+QCFG="band",0,2000000003300185a,1

These changes are immediate, and the EP06-A modem will switch without requiring a reset or reboot. You will have to wait 5-10 seconds for the switch over to occur. You should notice the LEDs turn off when the command is issued.

By changing away from Band 12, I was able to achieve significantly better speeds and ping to 8.8.8.8. Normally in urban environments I’d set my bands to 2+4 to achieve the fastest speeds. But you will have to monitor your ping, speedtest and LTE band throughout the day in order to switch to the fastest band. This is why I would recommend against looking at signal strength (with command AT+CSQ) since your speed and latency will depend on how congested the tower is, instead of how strong the signal is.

FYI T-Mobile has limited deployment of LTE Band 5.

I’ve yet to figure out if you can bandlock for Carrier Aggregation (CA). Though in my case, since T-Mobile typically CAs with Band 12, I wouldn’t want to allow Spits to touch that band.

To fetch the current band
AT+QNWINFO

This will return LTE BAND 2, or whichever band you’re connected to.

Set EP06 Modem LTE only
AT+QCFG="nwscanmode",3,1

You can change the above command’s param value 3 to 0 for AUTO, or 2 for WCDMA only or 3 for LTE only. I would recommend leaving it at LTE only.

Set your TTL to 64 to avoid hotspot bandwidth allocation
If you’re on one of T-Mobile’s unlimited data plans, such as T-Mobile One, then you will want to prevent T-Mobile from restricting your tethering speed by setting your time-to-live (TTL) to 64.

Go to Spits Panel > Advance > log into Luci > Network tab > Firewall > Custom > and Add iptables -t mangle -I POSTROUTING 1 -j TTL --ttl-set 64 to the beginning of the script > click the Restart button.

Suggestions to the Gl.inet team

  • Provide an easy way to issue AT+QNWINFO
  • Provide an easy way to change to a specific set of bands via a checkbox similar to MoFi’s interface.
  • Provide an easy way through the dropdown to set the nwscanmode.
  • Is there a way to automate picking bands with a script? If you can point me to the right direction, I’ll write one myself. I’m unsure if openwrt has a crontab to run a script at a regular interval. I’m unsure how to issue AT commands through the command line. And I’m unsure if there’s a way to run a script when the modem boots up and connects or reconnects.

#10

Sure. We were thinking to add in the past two weeks. @kyson-lok @luochongjun


#11

I couldn’t wait. So I SSH’d and edited /www/src/temple/attools/index.js and I changed atlist: on line 12 to this:

atlist: [{ 'msg': 'Manual command', 'item': '' }, { 'msg': 'Current Band Info', 'item': 'AT+QNWINFO'}, { 'msg': 'Current CA Info', 'item': 'AT+QCAINFO'}, { 'msg': 'Band Config', 'item': 'AT+QCFG="band"' }, { 'msg': 'Force LTE Band 2', 'item': 'AT+QCFG="band",0,2,1' }, { 'msg': 'Force LTE Band 4', 'item': 'AT+QCFG="band",0,8,1' }, { 'msg': 'Force LTE Band 2+4', 'item': 'AT+QCFG="band",0,a,1' }, { 'msg': 'Force LTE Band 12', 'item': 'AT+QCFG="band",0,800,1' }, { 'msg': 'Force LTE Band 2+4+12', 'item': 'AT+QCFG="band",0,80a,1' }, { 'msg': 'Reset LTE Bands', 'item': 'AT+QCFG="band",0,2000000003300185a,1' },  { 'msg': 'Request IMEI', 'item': 'AT+GSN' }, { 'msg': 'Request QCCID', 'item': 'AT+QCCID' }, { 'msg': 'Request IMSI', 'item': 'AT+CIMI' }, { 'msg': 'Check Signal Quality', 'item': 'AT+CSQ' }, { 'msg': 'Reset modem', 'item': 'AT&F0' }, { 'msg': 'Operator Names', 'item': 'AT+COPS?' }, { 'msg': 'Force LTE Only', 'item': 'AT+QCFG="nwscanmode",3,1' }, { 'msg': 'Reset Scan Mode', 'item': 'AT+QCFG="nwscanmode",0,1' }],

This includes my favorite T-Mobile configs quickly change configs. Note, make sure you clear your browser cache to see the changes.


#12

Nice, you did all of them.


#13

Can you share how you deciphered the hexidecimal number to correlate to the LTE Bands?

Looking for: B13, B17, B25, B29

Thanks for sharing the other info!


#14

Does this go above all else? Like I’ve done in the attache screenshot?

16%20PM


#15

It’s hex.

1 (CM_BAND_PREF_LTE_EUTRAN_BAND1) LTE BC1
2 (CM_BAND_PREF_LTE_EUTRAN_BAND2) LTE BC2
4 (CM_BAND_PREF_LTE_EUTRAN_BAND3) LTE BC3
8 (CM_BAND_PREF_LTE_EUTRAN_BAND4) LTE BC4
10 (CM_BAND_PREF_LTE_EUTRAN_BAND5) LTE BC5
20 (CM_BAND_PREF_LTE_EUTRAN_BAND6) LTE BC6
40 (CM_BAND_PREF_LTE_EUTRAN_BAND7) LTE BC7
80 (CM_BAND_PREF_LTE_EUTRAN_BAND8) LTE BC8
100 (CM_BAND_PREF_LTE_EUTRAN_BAND9) LTE BC9
200 (CM_BAND_PREF_LTE_EUTRAN_BAND10) LTE BC10
400 (CM_BAND_PREF_LTE_EUTRAN_BAND11) LTE BC11
800 (CM_BAND_PREF_LTE_EUTRAN_BAND12) LTE BC12
1000 (CM_BAND_PREF_LTE_EUTRAN_BAND13) LTE BC13
2000 (CM_BAND_PREF_LTE_EUTRAN_BAND14) LTE BC14
10000 (CM_BAND_PREF_LTE_EUTRAN_BAND17) LTE BC17
20000 (CM_BAND_PREF_LTE_EUTRAN_BAND18) LTE BC18
40000 (CM_BAND_PRE_LTE_EUTRAN_BAND19) LTE BC19
80000 (CM_BAND_PREF_LTE_EUTRAN_BAND20) LTE BC20
100000 (CM_BAND_PREF_LTE_EUTRAN_BAND21) LTE BC21
1000000 (CM_BAND_PREF_LTE_EUTRAN_BAND25) LTE BC25
2000000 (CM_BAND_PREF_LTE_EUTRAN_BAND26) LTE BC26
8000000 (CM_BAND_PREF_LTE_EUTRAN_BAND28) LTE BC28
100000000 (CM_BAND_PREF_LTE_EUTRAN_BAND33) LTE BC33
200000000 (CM_BAND_PREF_LTE_EUTRAN_BAND34) LTE BC34
400000000 (CM_BAND_PREF_LTE_EUTRAN_BAND35) LTE BC35
800000000 (CM_BAND_PREF_LTE_EUTRAN_BAND36) LTE BC36
1000000000 (CM_BAND_PREF_LTE_EUTRAN_BAND37) LTE BC37
2000000000 (CM_BAND_PREF_LTE_EUTRAN_BAND38) LTE BC38
4000000000 (CM_BAND_PREF_LTE_EUTRAN_BAND39) LTE BC39
8000000000 (CM_BAND_PREF_LTE_EUTRAN_BAND40) LTE BC40
10000000000 (CM_BAND_PREF_LTE_EUTRAN_BAND41) LTE BC41
20000000000 (CM_BAND_PREF_LTE_EUTRAN_BAND42) LTE BC42
40000000000 (CM_BAND_PREF_LTE_EUTRAN_BAND43) LTE BC43

B13 is 1000, B17 is 10000, so hex added together they are 0x11000. With B25, it’s 1000000, so summed, it’s 0x1011000. Lastly, B29 doesn’t exist on this list above.

Note, since it’s Hex, 8 (band 4) plus 2 (band 2) doesn’t equal 10, it equals a. Remember, with hex it goes from 0 to 9, then a to f.

It doesn’t matter where you place the iptables. The 1 in the command means it runs above anything else.


#16

You’re awesome! Thank you!


Spitz at command problem
#17

Hi, im living in Poland and try to force LTE band B3(FDD1800) + B20(FDD800) with AT command. Maybe someone can help me with this? i will be very thankfull

So i understand need command like this:
2+4+5+12 AT+QCFG="band",0,81a,1
but for should i use B3 4 + b20 800000
3+20 AT+QCFG=“band”,0,8000004,1`
?

Before spitz i had huawei b529, when i set only lte mode 800+1800 i was be able to get LTE+. On spitz default settings i get lte without + and internet speed is slower