Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.
|
Forum Index : Microcontroller and PC projects : MM Extreme GPSfunction behaviour
Author | Message | ||||
Cherokeecruiser Newbie Joined: 25/02/2015 Location: AustraliaPosts: 25 |
Hi Everyone I have a question regarding the GPS function. On my MM extreme (100 pinner) The GPS function works perfectly on com1 and com2. If I open com 3 as gps, and a valid gps signal is connected, the function never returns a valid signal and If I open Com 4 as GPS the cpu crashes. If I open com3 and com4 as a normal serial port with a GPS connected i can read perfect GPS data from the buffer. Is the function limited only to com1 or com2 I am curious if I have missed something, or whether anyone else has observed this behaviour Thanks |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 8600 |
Looks like a cut and paste error - I'll post a corrected version late today UPDATE Are you using the BACKPACK144? If so you mustn't use COM4 unless you remove the PIC16F1455 as otherwise you have two outputs driving against each other |
||||
Cherokeecruiser Newbie Joined: 25/02/2015 Location: AustraliaPosts: 25 |
Hi Matherp Thanks for the reply and just confirming I'm not using a BACKPACK144 - it is aboard of my own design, with com3 dedicated to the gps , (com4 to ESP8266 , com 2 to emic speech module and com1 to SIM 5320 - com 1 and 2 yet to be populated!) Thanks again for all your and Geoff's hard work in producing such a fantastic device. |
||||
Cherokeecruiser Newbie Joined: 25/02/2015 Location: AustraliaPosts: 25 |
I think I may have found an anomaly with the GPS function. If the GPS has a valid signal I can open a com port as GPS successfully. If the GPS hasn't acquired a signal, opening any com port as GPS causes the micromite to hang. I have a simple program running in which I sync the system time with the gps time every time it starts. If the GPS has a good view of the sky and has been powered on, the program runs successfully. If i put the gps module in a filing cabinet where it gets no signal the running program crashes after about 10 seconds with a CPU Exception #0 at address 0x9D0D68E4 It is happening on a Micromite extreme 100 Pin with the latest release 5.3.13 |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 8600 |
I'd hoped I'd trapped this issue which I saw on one of my GPS but clearly not. The problem is that different GPS units seem to send different versions of the messages if the signal is non-valid. The parser tries to interpret them but if they are syntactically incorrect it can cause this error. To fix this I need you to read the incoming signal using a normal serial port and post the full text of the messages RMC and GGA when the signal is NOT valid. Then I can try and find the bit of the parser that is failing |
||||
Cherokeecruiser Newbie Joined: 25/02/2015 Location: AustraliaPosts: 25 |
GPS Module - SKM53 Full text of RMC and GGA text working and not working follows: WORKING - VALID FIX $GPRMC,002638.000,A,2723.9971,S,15302.8100,E,0.00,244.15,130317,,,A*73 $GPGGA,002639.000,2723.9971,S,15302.8100,E,1,7,1.35,-1.3,M,37.3,M,,*69 $GPGSA,A,3,25,02,05,12,20,29,24,,,,,,2.58,1.35,2.20*06 $GPGSV,3,1,11,12,81,020,24,05,57,067,31,50,56,342,,25,52,224,27*73 $GPGSV,3,2,11,02,43,146,40,20,34,354,16,29,28,232,37,24,15,336,24*7E $GPGSV,3,3,11,06,07,132,,19,04,090,,31,02,223,*4E NOT WORKING - NO VALID FIX $GPRMC,003324.000,V,2723.9908,S,15302.8300,E,0.00,0.00,130317,,,N*68 $GPGGA,003325.000,2723.9908,S,15302.8300,E,0,0,,-6.0,M,37.3,M,,*77 $GPGSA,A,1,,,,,,,,,,,,,,,*1E $GPGSV,3,1,11,12,78,017,,05,58,073,,25,55,227,,02,41,145,*7A $GPGSV,3,2,11,20,38,354,,29,29,229,,24,13,338,,06,04,131,*77 $GPGSV,3,3,11,19,03,087,,31,03,225,,21,02,298,*4B |
||||
matherp Guru Joined: 11/12/2012 Location: United KingdomPosts: 8600 |
I've replaced the GPS parser with a different, simpler, version. Please download the new firmware and let me know if this helps - no change in version number I've also added some new functionality when the GPS is "open" PRINT #GPS,"$GPScommand*" This sends the quoted string to the GPS. Note that the string must start with "$" and end with "*" characters. The checksum is calculated automatically. This should make it easy to send configuration commands to the GPS Of course if you change baudrate you will need to CLOSE GPS and re-open it. |
||||
Cherokeecruiser Newbie Joined: 25/02/2015 Location: AustraliaPosts: 25 |
Quick testing only (due to the late hour here) - seems to have fixed the problem completely Thanks again |
||||
Print this page |