HC-05 GND — Arduino GND Pin
HC-05 VCC (5V) — Arduino 5V
HC-05 TX — Arduino Pin 10 (soft RX)
HC-05 RX — Arduino Pin11 (soft TX)
HC-05 Key (PIN 34) — Arduino Pin 9
This worked for me too. Also, after getting the LED to blink slowly, press the Reset button on the Arduino. Exact steps that seem to always work:
1. Unplug power from HC-05
2. Upload sketch from this Instructable
3. Hold in HC-05 button
4. Reconnect power to HC-05 (wait until LED blinks slowly)
5. Press Arduino reset button
6. Open Serial Monitor
7. Make sure “Both NL & CR” is selected
8. Type AT commands
We had 3 people in a workshop this evening and when everyone followed this procedure it always worked.
#include <SoftwareSerial.h> SoftwareSerial BTSerial(2, 3); // RX | TX void setup() { pinMode(9, OUTPUT); // this pin will pull the HC-05 pin 34 (key pin) HIGH to switch module to AT mode digitalWrite(9, HIGH); Serial.begin(9600); Serial.println("Enter AT commands:"); BTSerial.begin(38400); // HC-05 default speed in AT command more } void loop() { // Keep reading from HC-05 and send to Arduino Serial Monitor if (BTSerial.available()) Serial.write(BTSerial.read()); // Keep reading from Arduino Serial Monitor and send to HC-05 if (Serial.available()) BTSerial.write(Serial.read()); }