HM-10 does not send any responses to a command, not even an "error(0)" message. I found a simple serial message and echo sketch which showed me that the HM-10 does receive the text I send, and, yes, echos it back to me.
However, a basic AT-MODE sketch seems to accept the text I enter into the Serial Monitor,
Basic AT-Mode code/sketch from Instructables ---
#include <SoftwareSerial.h>
#include <AltSoftSerial.h>
SoftwareSerial BTSerial(8, 9); // RX | TX
void setup()
{
pinMode(6, OUTPUT); // this pin will pull the HC-05 pin 34 (key pin) HIGH to switch module to AT mode
digitalWrite(6, HIGH);
Serial.begin(9600);
Serial.println("Enter HM-10 AT commands:");
BTSerial.begin(38400); // HM-10 default speed in AT command mode
delay(5000);
}
void loop()
{
// Keep reading from HM-10 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());
// Serial.println("sent to HM-10");
}
Really? I guess you get what you deserve when you follow an Instructable, but this is beyond the pale even for them. More to the point, the first thing you need to do is determine what sort of Bluetooth you are actually using, as there is no way of telling from the picture.
Hint: one black chip = HM-10, two black chips = HC-0x.
If the former, you don't need the wire off pin 6, which is just as well, because it should be 3.3v. If the latter, you may find a little button by the pins, which will absolve you from running a wire to pin 34.
Most of them are garbage, produced by people who really have no idea what they are doing, but managed to get something to work long just enough to post.
You will notice that Instructables does not allow constructive feedback, if anyone views it as "negative", so the errors and bad advice propagate forever.