Cara Lock Band Permanen HS Airpo CPE200

Router HS Airpo CPE 200 menggunakan modem Quectel EC200ACN, dengan LEDE 17.01.5 sebagai OS routernya.

Router ini memungkinkan kita untuk melakukan lock band, sangat bermanfaat kalau di daerah kalian band tertentu jelek. Sayangnya modem Quectel EC200ACN tidak support untuk lock cell ID.

Untuk mengganti band, kalian bisa menggunakan ATCommand pada URL http://192.168.1.254/cgi-bin/luci/admin/network/gcom/atcmd

untuk B1
AT+QCFG="band",0,1

untuk B3
AT+QCFG="band",0,4


untuk B8
AT+QCFG="band",0,80

untuk B40
AT+QCFG="band",0,8000000000

Tapi ketika router restart atau menyambung ulang ke internet maka lockband akan hilang karena ketika router menyambung ulang ke internet maka router mereset lock band, router menjalankan ATCommand untuk menggunakan semua band 1 3 5 8 34 38 39 40 41 ketika menyambung ulang ke internet.

Akan sangat repot kalau harus melakukan lock band ketika device sering kehilangan koneksi internet seperti ketika menggunakan kartu XL yang setiap 2 jam internetnya bengong, Untuk melakukan lock band ketika menyambung ulang secara otomatis maka kita perlu mengedit script bawaan dari HS Airpo CPE 200.

Edit file /usr/bin/4gup.sh

cari fungsi exec_plmn_up dan ubah agar seperti di bawah ini

exec_plmn_up() {
        local reset=1
        local isp=$(uci -q get network.${IFACE}.isp)
        if [ -n "$isp" -a x"$isp" != x"auto" ]; then
                local apn=$(uci -q get network.${IFACE}.apn)
                local username=$(uci -q get network.${IFACE}.username)
                local password=$(uci -q get network.${IFACE}.password)
                local auth=$(uci -q get network.${IFACE}.auth)
                exec_at_cmd "AT+QCFG=\"band\",d3,00000001" #tambahkan baris ini untuk lock ke band B1
                logger -t "4gup" "exec_up_4g manual"
                exec_up_4g "000000" "$apn" "$username" "$password" "$auth"
                [ "$?" -eq 0 ] && reset=0
        else
                exec_up_4g
                [ "$?" -eq 0 ] && reset=0
                if [ "$reset" -eq 1 -a -f "/var/run/providers.txt" ]; then
                        while read provider
                        do
                                local plmn=$(echo $provider | xargs echo -n | awk -F, '{ print $2}')
                                local apn=$(echo $provider | xargs echo -n | awk -F, '{ print $4}')
                                local username=$(echo $provider | xargs echo -n | awk -F, '{ print $5}')
                                local password=$(echo $provider | xargs echo -n | awk -F, '{ print $6}')
                                local auth=$(echo $provider | xargs echo -n | awk -F, '{ print $7}')
                                exec_up_4g "$plmn" "$apn" "$username" "$password" "$auth"
                                if [ "$?" -eq 0 ]; then
                                        reset=0
                                        break
                                fi
                        done < /var/run/providers.txt
                fi
                [ "$reset" -eq 0 ] || {
                        exec_up_4g "000000" "internet"
                        [ "$?" -eq 0 ] && reset=0
                }
        fi

        logger -t "4gup" "exec_plmn_up result $reset"
        [ "$reset" -eq 0 ] || exec_reset_4g
}

untuk band B3 kalian bisa menggunakan ATCOmmand AT+QCFG=\"band\",d3,00000004

untuk band B3 kalian bisa menggunakan ATCOmmand AT+QCFG=\"band\",d3,0000008000000000

Pastikan semuanya benar

Restart router kalian, lalu jalankan perintah logread di terminal untuk membaca log.

Thu May 29 12:39:19 2025 user.notice 4gup: config 4g
Thu May 29 12:39:19 2025 user.notice 4gup: AT+QCFG="nwscanmode",0 -> AT+QCFG="nwscanmode",0 OK
Thu May 29 12:39:19 2025 user.notice 4gup: AT+CGREG? -> AT+CGREG? +CGREG: 0,1  OK
Thu May 29 12:39:20 2025 user.notice 4gup: AT+QCFG="band",d3,1e200000095 -> AT+QCFG="band",d3,1e200000095 OK
Thu May 29 12:39:20 2025 user.notice 4gup: AT+QCFG="band" -> AT+QCFG="band" +QCFG: "band",0xd0,0x1e200000095  OK
Thu May 29 12:39:20 2025 user.notice 4gup: up 4g for 2c7c:6005
Thu May 29 12:39:20 2025 user.notice 4gup: AT+QCFG="band",d3,00000001 -> AT+QCFG="band",d3,00000001 OK
Thu May 29 12:39:21 2025 user.notice 4gup: exec_up_4g manual
Thu May 29 12:39:21 2025 user.notice 4gup: 4g exec plmn=000000 apn=xlunlimited user= pwd= auth=
Thu May 29 12:39:21 2025 user.notice 4gup: AT+CGDCONT? -> AT+CGDCONT? +CGDCONT: 1,"IP","internet","0.0.0.0",0,0,0,0,0,0 +CGDCONT: 8,"IPV4V6","IMS","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0,1,1  OK
Thu May 29 12:39:21 2025 user.notice 4gup: AT+QICSGP=1 -> AT+QICSGP=1 +QICSGP: 1,"internet","","",0  OK

Jika tidak ada kesalahan maka akan muncul baris OK seperti dibawah

Thu May 29 12:39:20 2025 user.notice 4gup: AT+QCFG="band",d3,00000001 -> AT+QCFG="band",d3,00000001 OK

Referensi :