New SIM800 library aimed at HTTP communication & GSM location

I purchased one of these a few months back from China on e-bay for about £6. Read the datasheet thoroughly and when it arrived, I connected it to a 2amp 3.7volt lithium battery. Using several resisters I was able to get 2.8volts to the reset pin as required in the datasheet. Then using an FTDI usb interface and eventually a standard Uno and then eventually a mini pro running at 3.3 volts I was once able to receive anything being transmitted from the sim800 TX pin. I plug it in, the led starts flashing, eventually slowing.

I send it "AT to initiate the auto-baud setting to respond on 9600. I do not get an "OK," from the modules tx pin. However, I know it can accept commands because I can send it the command to switch off. However, it switches itself back on in approximately 40 seconds. I can also call the sim with my phone and it rings. The Ring pin changes it's state when I dial it so I know the module is functioning.

I assumed it was defective so I purchased another one and today after waiting 20 days for it to arrive, I get the same thing. This time however, the TX pin simply mirrors the input that I send it's RX pin. Nothing coming over on the TX pin.

On top of that, I'm a little annoyed to find your posting lacking in detail. All you say about connecting the unit up is,

"After some efforts, I managed to make it work with an Arduino Leonardo. Basically 5 wires are needed to connect the module to Arduino and they connect pins of VCC/GND/Rx/Tx/Reset. This is quite straight-forward."

You would think so huh? Why did you use the unorthodox Leonardo? Did you try other boards to begin with and have no luck? Also, your pictures are lacking the use of "diodes," to alter the voltage. It looks like you're sending your Leonardo pins directly to the unit without interference. Are you doing anything special with your RX and TX lines? Are you pulling them up or down with a 10k resister perhaps? What am I missing?

Some details would be helpful please. :-/