BC660K‑GL – AT$QCRFNST produces unreadable output

Hello
I am working with a Quectel BC660K‑GL module and running the following Factory Test Mode command:

AT$QCRFNST=0053140016215C00010003000000

the expected UART output should be:

AT$QCRFNST=0053140016215c00010003000000
Read: AT$QCRFNST=0053140016215c00010003000000
Read: MT00000000
Read: OK
at SUCCESS

However, somtimes I receive weird output instead for exemple:

AT$QCRFNST=0053140016215c00010003000000
ReaärFi—Hœ0msa¡
f&£‡’0ã’ç#ƒRead: OK
at SUCCESS

Could anyone help please.

Hi ,

The garbled/corrupted UART data (random characters like ReaärFi—Hœ) you’re seeing with the AT$QCRFNST factory test command is a common UART communication issue on Quectel BC660K-GL modules, caused by 4 root causes (hardware + firmware + timing + configuration).

I’ll break down the exact fixes for your problem, prioritized by the most likely causes for this module.


1. #1 Root Cause: Baud Rate Mismatch (Most Likely)

The BC660K-GL uses fixed/auto-baud UART settings for factory test mode, and a mismatch causes total data corruption.

Fix:

Force your UART terminal/MCU to use the BC660K-GL factory test default baud rate:

  • 9600 bps (default for BC660K-GL factory mode)

  • 8 data bits, 1 stop bit, no parity (8N1)

  • No hardware flow control (RTS/CTS disabled)

Critical: The AT$QCRFNST factory test command does not auto-detect baud rate—it locks to 9600bps. If your UART is set to 115200/57600, you get garbled text.