Was mir noch eingefallen ist:
Das HM-10 Modul mag kein CR, LF am Ende eines Befehle, sondern nur den reinen Befehl. Also kein:
Code:
Serial.println("AT");
senden, sondern nur:
Code:
Serial.print("AT");
Ebenso muss der Serial Monitor auf 'kein Zeilenende' senden stehen.
Der Arduino Mega hat doch 4 serielle Hardware Schnittstellen. Warum verwendest du SoftSerial? Das sollte aber keinen Einfluss auf die Funktion haben.
Vielleicht hilft das weiter.