SparkFun Forums 

Where electronics enthusiasts find answers.

Tips and questions relating to the GPS modules from SFE
By trenade
#53917
Hi guys

I have programed my microcontroller to send AT commands to my GM862 GPS module, however it does not seem to be processing the command. I have tested it with Hyperterminal and it works fine, typically, it is sending an sms. And I have also tested with Hyperterminal that the micro is sending the correct command. I understand that on CARRIAGE RETURN(ASCII hex>OxOD) the data is sent to the module which performs the sms action. I am somewhat concerned that the problem lies in the CARRIAGE RETURN still though. Please advise. Thanks a mil.
By bretth
#54024
It's not clear from your post if you're getting other responses to any of your AT commands (ie: AT... OK), or just having problems with the AT+CMGS command.

My microcontroller sends CRLF (\r\n) after each AT command, which works well with the Telit modules.

If you're talking about the AT+CMGS: to end the SMS message, you actually have to send a Ctrl-Z, which is 0x1A.
By trenade
#54054
I have tried as you said, but "\r\n" after an AT command is still not working. My module seems to just not be processing ANY commands I send it from the micro.
By bretth
#54062
Ah, OK. You already mentioned you've used HyperTerminal to talk to the GM862 module, so the module should be OK. Some other things to check:

* are TX and RX lines swapped?
* can you hook HyperTerminal up to the TX/RX lines of your microcontroller to verify send and receive work that way?
* are you using a level converter between the uP and Telit module? - the specs say 2.8V, although 3.5V has worked for me in the past during quick checks.

If you have a schematic to share, that might help for further diagnosis.

-Brett
By trenade
#54114
I’m using an STK 500 programmer board to programme my ATMega8515 uC. The board takes in as input, 12v and it has 1 rs232 port for programming the uC and a spare rs232 to output the programmed uC. Im certain the STK 500 does all level conversion already. TX and RX lines are not swapped...should they be??
I have hooked up Hyperterminal to test if the uC is transmitting the correct string command and it is.
So, this means the uC works, the modem works, but the modem AND uC don’t work TOGETHER. Im still dumbfounded
Im using the STK thus far for testing, so no schematic so far, sorry.
PS-What about flow control? I dnt know much about this, but I was reading up on it last night.
By bretth
#54792
Did you ever get this working? (Sorry about not replying sooner... for some reason I don't always get the email notifications).

Since it sounds like both the STK and Telit are working properly, I'd double check your TX and RX lines between the modules. An easy check: if you're using the same serial cable to communicate between HyperTerminal (ie: your computer) and both of the STK and Telit module dev boards, then you need to swap the TX/RX lines when communicating BETWEEN the STK and Telit modules. In standard RS232-speak, this means you want to be using a straigh-thru or crossover cable, the opposite of whatever cable works for connecting each of the modules to your computer.

Hope that helps. -Brett
User avatar
By leon_heller
#54793
The Telit modules transmit on RxD and receive on TxD, because they are classed as DCEs and not DTEs. This can cause a lot of confusion.

Leon
By trenade
#54826
Must all the other pins be connected as per normal like the cable does already? so JUST the tx and rx wire must be swopped?
By gm
#54850
Page 36 of this guide will tell you exactly how to hook up all of the serial interface lines.

gm
By sammy75
#58146
Hi trenade,

Fisrt before we begin software debugging, how did u interface ur microcontroller to the Gm862? The acceptable voltage levels on the module's USART pins is 2.8V. So u can't directly connect a ucontroller running on 5V to the module (except the ucontroller is also running on 2.8V). A level shifter is needed. This could be ur problem. (And mind u! don't use a resistive divider. It won't work bcos of loading effects.)
User avatar
By leon_heller
#58147
The easiest solution is to use an MCU running at 2.85V. I'm using a low-voltage PIC with the GE-863.

Leon
By trenade
#58187
Thanks guys

Iv used a max232 so it ups the voltage to serial comms level needs before communicating with gm862, Im using the ez10 so it operates at a much higher level than just the gm82 chip standalone.