移遠-BC95-測試前准備
1、 設備連接主串口,串口調試助手波特率使用9600,選擇對應的端口號。在串口調試助手上輸入AT發送,查看是否有OK返回。
如果想修改波特可以通過下面的AT來修改
AT+NATSPEED Configure UART Port Baud Rate
(主串口進行AT命令通信和數據傳輸時,波特率為9600bps;
主串口也可用於軟件升級,此時波特率為115200bps。
調試串口輸出日志,波特率為 921600bps。 )
需要注意
BC95 模組主串口波特率在 9600bps 和 4800bps 時,上下限范圍如下圖所示。外部 MCU 選型時,請 注意 MCU 的串口波特率不能超出模組主串口波特率的允許范圍,否則會引起通訊異常。使用時請參考 Quectel_BC95_AT_Commands_Manual 文檔中的AT+NATSPEED 指令,選擇串口合適的<sync_mode> 及<stopbits>參數值。
2、 AT+CSQ查詢到是99,99:
查詢當前信號質量CSQ 對應AT指令是:AT+CSQ,返回結果為+CSQ:16,99。前面這個16就是信號質量, 這個取值范圍是0-31的一個數值,當這個數位99的時候,就說明沒有獲取到信號, 這個時候我們可能需要多等一會兒,根據不同的地點,所等待時間在1-60s內, 如果超過這個時間依舊返回的結果是+CSQ:99,99的話, 這個時候就要看一下卡是否是NB卡了, 還有就是你的模組固件版本是否在657以下(之前版本沒有開啟擾碼功能,不能成功接入基站)。
Ø 確認模塊、SIM卡與運營商相對應,
電信:BC95-B20 支持800MHz,BC95-B5 850MHz [電信支持 800MHz(實際上該頻段處於 BC95-B5 的 850MHz 頻段范圍內)]。
移動:BC95-B8 900MHz。
聯通:BC95-B8 900MHz 和 BC95-B3 1800MHz
找網
模塊找網前需確認模塊型號與頻段是否對應(AT+NBAND?查詢模塊頻段信息)。
所有模塊出廠頻段默認為900MHz,可通過AT+NBAND=n 來設置,AT+NRB 重啟模塊后生效。
模塊型號和對應頻段如下:
從B650版本開始,默認開機自動找網(由 AT+NCONFIG=AUTOCONNECT,TRUE 這個命令控制),
模塊會自動注冊網絡,不需要再發送找網的AT 命令,只需發送查詢命令,查詢是否注冊上網即可。
AT+NBAND? //查詢Band AT+CFUN? //值為 1 AT+CIMI //查詢 IMSI號 AT+CSQ //查詢信號強度 AT+NUESTATS //查詢模塊狀態 AT+CGATT? //返回+CGATT:1 表示附着成功,有時延約 30s AT+CEREG? //查尋注網狀態,1為注冊上網絡,2為正在找網 AT+CSCON? //查詢連接狀態,1為Connected,0為 Idle
若需要手動找網,請執行AT+NCONFIG=AUTOCONNECT,FALSE 后重啟模塊,開始手動找網。此設
置會自動保存。
手動找網流程有指定PLMN 和不指定PLMN兩種方式,參考如下:

方式一:不指定 PLMN AT+CFUN? //對於 B657SP1 之前版本,值為0時才可以設置CDP 服務器。 AT+NCDP=10.41.129.115,8653 //設置地址和端口,設置后會保存(如不需要配置,可跳過此操作)。 AT+CFUN=1 AT+CIMI //執行 AT+CFUN=1,等待 4 秒后查詢 IMSI,如果能查到表示卡已識 別;若查不到,請檢查卡是否插好並確認是否是USIM卡。 AT+NBAND? //查詢頻段信息。 AT+CEREG=1 //設置自動上報網絡注冊狀態,當模塊注冊上網絡,會上報 URC。 AT+CGDCONT=1,″IP","APN" //APN 為本地入網方式,需自行配置,也可不配置。 AT+CGATT=1 (或者AT+COPS=0) AT+CSQ //查詢信號強度。 AT+NUESTATS //查詢模塊狀態。 AT+CGATT? //返回+CGATT:1 表示附着成功,有時會有約30s的延遲。 AT+CEREG? //查尋注網狀態,1為注冊上網絡,2為正在找網。 AT+CSCON? //查詢連接狀態,1為Connected,0為 Idle。

方式二:指定PLMN AT+CFUN=1 AT+CIMI //執行 AT+CFUN=1,等待 4 秒后查詢 IMSI,如果能查到表示卡已識 別;若查不到,請檢查卡是否插好並確認是否是USIM卡。 AT+NBAND? //查詢頻段信息。 AT+CEREG=1 //設置自動上報網絡注冊狀態,當模塊注冊上網絡,會上報 URC。 AT+CGDCONT=1,"IP","APN" //APN 為本地入網方式,自行配置,也可不配置。 AT+COPS=1,2,"46000" //指定PLMN搜索,PLMN 自行配置。 AT+CSQ //查詢信號強度。 AT+NUESTATS //查詢模塊狀態。 AT+CGATT? //返回+CGATT:1 表示附着成功,有時會有約30s的延遲。 AT+CEREG? //查尋注網狀態,1為注冊上網絡,2為正在找網。 AT+CSCON? //查詢連接狀態,1為Connected,0為 Idle。
Ø 使用AT+NCONFIG?查看AUTOCONNECT,TRUE(參數為TRUE說明模塊開啟自動注網模式)CR_0354_0338_SCRAMBLING,TRUE、CR_0859_SI_AVOID,TRUE查看擾碼功能是不是和基站對應上(參數為TRUE說明模塊開啟開啟了擾碼功能,基站側也需要開啟,若為FLASH則說明關閉擾碼功能)擾碼開關模組與基站需要對應上。
網絡側質量:AT+NUESTATS
網絡側質量較差直接影響數據發送和接收,如果RSRP和SNR數值較低,先排查天線和電路發射功率和接收靈敏度,如果沒問題建議找基站側的網優來優化基站參數。
3、 AT+NABND?查詢band是否和SIM卡、模塊對應上。
4、 AT+NCONFIG?查看模塊是否為自動注網模式,擾碼功能是否與基站匹配上。
5、 AT+CEREG? (EPS 網絡注冊狀態)查看是否為0,1(注冊上)若為0,2(正在注冊)。
工作模式之間關系
三種連接狀態下,均可發送上行數據( CoAP/UDP); IDLE 下發送數據, 模塊會進入 CONNECT 狀態; PSM 下發送是數據會喚醒模塊, 進入 CONNECT,或者當 TAU(TAU 的時長是指從進入 IDLE 開始一直到 PSM 模式結束) 超時,模塊喚醒, 進入 CONNECT。
1、CONNECT態:只要有數據發送,模塊都會處於該狀態下。模塊注網后即處於該狀態。該狀態下沒有數據交互不活動定時器到時間后,模塊會進入IDLE態(這個時間是有核心網確定的,范圍為 1-3600s)可通過AT+CSCON=1打開狀態自動上報,+CSCON=1表示模塊處於該狀態。
2、IDLE態:可接收下行數據,該狀態持續的時間由核心網配置,由 Active timer( T3324)來控制,范圍為 0-11160s。可通過AT+CSCON=1打開狀態自動上報,+CSCON=0表示模塊處於該狀態。若開啟小區重選功能,是在IDLE態下完成自動重選的。
3、PSM態:該狀態下不接受下行數據,處於PSM模式時將與服務器斷開連接,網絡側不能尋呼到設備,必須等待設備主動發起連接。該狀態持續的時間由核心網配置, TAU(擴展)定時器 T3412 來控制,范圍為 0h-320h。T3412 擴展值最大可取 320h。若兩個值同時存在,模組以 T3412 擴展值為准。可通過AT+NPSMR=1打開自動上報(B657SP2及以后版本),+NPSMR=1表示模組進入PSM狀態。+NPSMR=0表示模組從PSM狀態喚醒進入CONNECT狀態。
備注 1. 三種連接狀態下,均可發送上行數據(CoAP/UDP);Idle下發送數據,模塊會進入Connected 狀態; PSM下發送是數據會喚醒模塊,進入 Connected,或者當TAU超時,模塊喚醒,進入Connected。 2. Idle下,可接收下行數據,模塊進入 Connected狀態,PSM下不接收下行數據。 3. TAU 的時長是指從進入 Idle 開始一直到PSM模式結束。
模塊時間的獲取
BC95模塊發送AT+CCLK?即可返回系統時間(格林威治時間)
+CCLK:[<yy/MM/dd,hh:mm:ss>[<±zz>]]
OK
即年/月/日,時:分:秒,時區
模塊軟件版本與基站版本匹配說明
BC95 模塊從 B656 版本開始增加了擾碼(Scrambling)控制功能,此功能可通過 AT 命令進行控制。
模塊出廠默認開啟此功能,此時基站(Base Transceiver Station)也需要開啟擾碼功能,否則模塊搜不到
信號,無法連接基站。若關閉擾碼功能,此時基站也需要關閉擾碼功能,模塊才可連接基站。如下舉例說
明了如何通過AT 命令關閉和開啟模塊擾碼功能。
擾碼開關指令
擾碼的開啟及關閉對應的AT指令如下: 關閉擾碼功能: 1.AT+CFUN=0 2.AT+NCONFIG? //查詢擾碼功能是否開啟 3. AT+NCONFIG=CR_0354_0338_SCRAMBLING,FALSE //關閉擾碼功能 4. AT+NCONFIG=CR_0859_SI_AVOID,FALSE 5. AT+NRB //重啟模塊
開啟擾碼功能: 1. AT+CFUN=0 2. AT+NCONFIG? //查詢擾碼功能是否關閉 3. AT+NCONFIG=CR_0354_0338_SCRAMBLING,TRUE //開啟擾碼功能 4. AT+NCONFIG=CR_0859_SI_AVOID,TRUE 5. AT+NRB //重啟模塊
開啟自動配置模式
本次測試使用的是自動配置模式,查詢模塊是否開啟的自動配置模式使用 AT+NCONFIG?查詢。指令開啟關閉自動配置模式的 AT指令如下: 開啟自動配置模式: AT+NCONFIG=AUTOCONNECT,TRUE 關閉自動配置模式: AT+NCONFIG=AUTOCONNECT,FALSE
ERROR 513問題解決方案 MCU通過AT+NMGS命令發送數據后,返回OK即表示UE已成功注冊IoT平台並且數據已發送成功, 若返回+CME ERROR: 513(前提是已設置 AT+CMEE=1)錯誤,建議嘗試以下兩種解決方案: 1. MCU 收到+CME ERROR: 513 報錯后,延遲10s~20s 后再嘗試重新發送。 2. 通過 AT+NMSTATUS? 查詢 IoT 平台注冊狀態,返回+NMSTATUS:MO_DATA_ENABLED 表示成功 注冊,然后再嘗試重新發送。
小區重選 BC95 模塊從 B657SP1 版本開始支持小區重選。此功能默認為關閉狀態,使用 AT+NCONFIG?查詢 CELL_RESELECTION 參數為 FALSE,即表示關閉,可通 AT+NCONFIG=CELL_RESELECTION,TRUE 開啟小區重選,執行AT+NRB命令重啟模塊后生效。
AT+CFUN命令 從 B650SP8 版本開始,區分有 USIM 卡和無 USIM 卡,無卡時執行 AT+CFUN=1 會報錯。當模塊處 於搜網狀態或者入網等業務時,不能執行 AT+CFUN=0、 AT+CFUN=1,或者進行Attach/detach操作,否 則會報錯。
設置 CDP服務器 設置CDP服務器前請先確保模塊已寫 IMEI號,否則會報錯。對於 B657SP1之前版本,設置CDP服 務器之前要先執行 AT+CFUN=0 命令。 確認有 IMEI 號后,再設置 CDP 服務器;如果仍報錯,可能之前已經設置過一次 CDP 服務器,CDP 的 IP地址設置保存到了NV 里,由於執行AT+CFUN=1時,IP 地址必須跟NV 里存儲的一致,因此報錯; 執行 AT+CFUN=0可重新設置,更改 IP地址,然后執行AT+NRB命令重啟模塊后生效。 從 B650SP8 版本開始,區分有 USIM 卡和無 USIM 卡,請先查詢模塊是否插卡。對於 B650SP8~B655SP2版本,若沒插卡,請執行 AT+NCONFIG?查詢 AUTOCONNECT 是不是默認為TRUE, 如果是,執行 AT+NCONFIG=AUTOCONNECT,FALSE命令后重啟模塊再設置 CDP 服務器。