Bluetooth HC-05 Malfunctioning

I have a problem with my HC-05 modules malfunctioning.

Once I solder wires to PIN34 (the AT enable pin), the module works fine for a while (as in like a week or so) and then suddenly its communications gets messed up. Everything else works fine, but I can't get any reply to my AT commands and when I pair it with my smartphone and try sending strings to and fro, I get �'s on the smartphone side and □'s on the arduino side (Serial monitor).

I'm not really familiar with this stuff, so if anyone could decipher those unicode symbols, that would be great. Also, I don't think my code has any problems, because it works fine with non-soldered modules.

I am thinking it's a soldering issue because none of my non-soldered modules behave like this. I would really appreciate any kind of help.

If it really is a soldering problem, I'd like to know how to properly solder to PIN34.

Peppermint:
Once I solder wires to PIN34 (the AT enable pin), the module works fine for a while (as in like a week or so) and then suddenly its communications gets messed up. Everything else works fine, but I can't get any reply to my AT commands and when I pair it with my smartphone and try sending strings to and fro, I get �'s on the smartphone side and □'s on the arduino side (Serial monitor).

There are two modes of operation for the HC-05 - AT mode for configuration, and communication made. They are mutually exclusive. It would seem that your problem is indeed with the connection to pin 34. I submit that that explains why "the module works fine for a while (as in like a week or so) and then suddenly its communications gets messed up". The only reason why it works at all is because the solder connection is slack. In short, user abuse.

If it really is a soldering problem, I'd like to know how to properly solder to PIN34.

With the right equipment, and a fair bit of skill and experience.

The way things are, you might take one of three options:

  1. Consider whether you really need to send any AT commands. You haven't said why you do and, if you don't, don't bother.

  2. Come up with another $1.50 for a bare JY-MCU backboard, which is designed for the job and is actually a lot easier to solder.

  3. Ditch the module you have and do what you probably should have done in the first place, gets an HC-05 already on a backboard, thereby enabling you to make painless and reliable plug-in connection, and absolve yourself from having to solder anything. Some of the modern ones come with a button switch to make the connection to pin 34, which ebats the hell out of soldering.

First of all, thanks for the reply.

I guess I should have mentioned that my modules already have a backboard. It's just that pin 34 isn't really connected to any of the breakout pins.

I actually knew about the button but that requires manual effort. I have AT commands included in my code to be sent automatically under certain conditions so I need a way to electronically control the mode.

I guess I'll probably either restructure my code so that no AT commands are needed or get a properly soldered HC-05.

Peppermint:
I guess I should have mentioned that my modules already have a backboard. It's just that pin 34 isn't really connected to any of the breakout pins.

That sounds rather novel. Are you quite sure you have an HC-05?

Yup, 100% sure. My smartphone reads them as HC-05.
I did some research and it seems the incomplete connection isn't that uncommon.

OK. If the phone says HC-05, it's an HC-05, but I wouldn't trust anything written in an instructable. It appears that there IS a difference with those boards with a pin marked EN. I don't understand it but I suspect that all boards with a button have an EN pin instead of KEY.

You might get some better help here:

http://www.martyncurrey.com/arduino-with-hc-05-bluetooth-module-at-mode/

who is a configuration guru, and has something to say on the EN pin. The only HC-05 I have ever configured is on a ZS-040, but I used the button. More pertinent is that the button is only momentary and, in the light of that, I guess just touchng pin34 with a bare wire should suffice and thus no soldering required.

but that requires manual effort. I have AT commands included in my code to be sent automatically under certain conditions so I need a way to electronically control the mode.

I certainly take your point about electronic control and, while everybody seems to be putting a button on the board and I have been thankfully using them, I'm starting to conclude that they are a really bad idea.

Thank you for the link.
I've looked through it and I think the most probable cause for the malfunctioning is that I was sending 5v signals to BT Tx pin. Hopefully fixing this will solve the problem.