I've got a Teensy 2.0 with simple AltSoftSerial as displayed on image:
As you can see, when I send a command (or any other input via serial) the SIM800L module sends me the same input. I tried to switch the TX and RX wires on the module (in case I misconnected them), but then it returns nothing. When I connect the TX and RX wires directly to each other I've got the exact same result as if they are connected to the module.
The whole thing is connected in this way - computer is connected via USB to teensy, the SIM800L and Teensy are connected via software serial (RX to TX and TX to RX), the SIM800L module is powered from an external battery (it requires specific voltage between 3v4 and 4v4).
Is the module bad, or is it a wrong wiring? Why is the module not communicating and just returning what I sent to it?
I'm not particularly looking for mistakes in code, the code is most likely correct. I think the problem is probably somewhere around the SIM800L module.
The module shouldn't just repeat what it got, but it should replay with something like OK, or other answers.