问题
I cannot get my HC-05 bluetooth modules to output RSSI values. I issue it the following commands in series:
AT+INIT
-> *OK*
AT+INQM=1,9,48
-> *OK*
AT+INQ
-> *No response, it starts flashing rapidly, indicating AT mode is no longer active*
After the INQ command, the module it starts flashing rapidly. I think this means it has exited AT command mode, and I get not response on the INQ request. I have to issue the INIT command before the INQM? as otherwise it gives back an error(16).
I have even tried purchasing a different make of the HC-05, but that did not help.
Why is this happening, and how can I solve it?
EDIT: Just for some more info, I also have an AT+VERSION? command in there, and that responds just fine with the version. The only thing that does not work is the AT+INQ... Here is the output when I start up my serial monitor:
bt2bt HC module - version a
BtSetCmdMode 1
BtReset
Set as Master
OK
+VERSION:2.0-20100601
OK
OK
OK
UPDATE: I can still talk to the module after it starts flashing: "AT+STATE" -> +STATE:INQUIRING But how can I get the responses to the INQ command out of the module?
回答1:
Try
at+inq\r\n
Accordin to this , page 17
The process for HC-05 should be:
at+init\r\n ---- Initialize the SPP profile lib( can’t repeat initialization)
-> OK
at+iac=9e8b33\r\n ----Inquire Bluetooth device has an access code
-> OK
at+class=0\r\n ----Inquire the Bluetooth device type
at+inqm=1,9,48\r\n
At+inq\r\n ----inquire the Bluetooth device around
回答2:
I occurred the same problem. I found a odd thing. I press a small button in my HC-05 and power on HC-05. Then I can enter AT mode. then I can use AT command like at+class=0,at+role=1. But if I tried to type at+inq ,i cannot see any response. But....... I tried a special action. I pressed the small button in my HC-05,and "keep press" ,not to release it.and try at+inq command.... wow...it work.... I don't know why ..but maybe you can try it. some special AT+command need to press the button (pull pin 34(key) high).even if hc-05 has been in AT mode.
回答3:
To set inquiry settings in chip I think you should call
AT+INQM=1,9,48
not
AT+INQM?
This command with ? is used to ask for current settings.
回答4:
You need to add /r/n
to the end of the calls to the Bluetooth module. /r
is the carriage return character and /n
is the line feed character. They work together to act like hitting the enter key on your keyboard.
The calls need /r/n
added to them so that the Bluetooth module knows that that is the end of the command, otherwise it all is one line.
回答5:
try this:
at
Make sure you get OK as response.
then:
at+init
at+orgl
at+role=1
at+inqm=1,9,48
at+inq
Make sure the device you're trying to find is in discoverable mode and it should show up in the output list within a minute. I think the part you were missing was at+role=1
回答6:
please also make sure that the HC-05 is in master mode
at+role=1\r\n ----Setting the device for master mode
The factory default is slave mode. I have just wasted half a day because of this.
来源:https://stackoverflow.com/questions/23221336/hc-05-bluetooth-rssi-not-working-with-arduino