loading
 
GPS Module crashing
Eddy Wright from United States  [14 posts]
11 year
Hello Everyone,

I am using the GPS module for the first time and it seems to crash when I tell it which comport to use.  I have verified the GPS is working correctly and it's producing good data by logging it and using it as a capture file with the GPS module which works fine. But when I tell it to use the live data on Com4, nothing is shown and when I exit the GPS module and exit Roborealm, Roborealm still running in the background and keeping the comport open.

If I try to do something in Roborealm instead of exiting, the program crashes hard and I have to use Task Manager to kill the Roborealm process.

I only have the one GPS device so I can't test it using different right now. I'm running Windows 7 64-bit.

Thanks,
Eddy Wright
Wright Hobbies Robotics
http://www.wrighthobbies.net
Eddy Wright from United States  [14 posts] 11 year
I tried a different (GlobalSat BU-353) GPS receiver and still locks up/crashes when I tell it what comport to use.

I also tried this on another laptop and got the same results. Is there an issue with Win7x64?

Thanks,
Eddy
Anonymous 11 year
Eddy,

We're checking into your issue but still have not seen any problems ... can you try:

1. To use the serial module and connect to the GPS module to see the NMEA strings? That would verify if there is some formatting issue or serial connection issue.

2. Do you have access to an XP machine? Perhaps trying a quick test with that would verify that Win7 may be an issue ...

Thanks,
STeven.
Eddy Wright from United States  [14 posts] 11 year
I tried the serial module and I get a connected message but not seeing the NMEA data. I attached a screenshot of what I'm seeing.

I installed Delorme Street Atlas 2012 and it's able to talk to the GPS. So both a serial terminal and Street Atlas can talk to either GPS receiver.

I don't have an XP machine handy, tomorrow I'll get it set up and test using it.

Thanks,
Eddy

 
Eddy Wright from United States  [14 posts] 11 year
I forgot to mention that if I unplug the GPS receiver, Roborealm becomes "unstuck" and I can close it down normally.

Eddy
Anonymous 11 year
Eddy,

Can you verify that the GPS device is 4800 baud?

Also, click on the Flow Control button and select the various checkboxes. These control how the PC sends signals to the device to tell it to read or send data which may be the reason that things are not being read. If we can verify that the serial module reads correctly we can add that to the GPS module. Normally, most devices use software flow control and thus these checkboxes are off by default ... but some devices require hardware flow control.

STeven.
Eddy Wright from United States  [14 posts] 11 year
Hi Steven,

Yes, it is definitely 4800 N-8-1, these settings work fine with Teraterm.

I tried all of the flow controls in the serial module but it had no effect. I get the connected message but nothing else.

I there anything in the logging we can look at?

Thanks,
Eddy

 
Anonymous 11 year
Eddy,

We checked into a couple of things including using the Prolific USB to COM Device driver and everything seems fine. Most likely it is something small that we are over assuming.

1. When you use TeraTerm do you press ENTER before the stream appears or does it immediately appear? If you need to press ENTER trying using the serial module again and type in <cr><lf> and then press Send. That will simulate a return being entered manually. This is NOT done by the GPS module.

2. RR getting stuck on the COM port appears as if no data is being received from the device. It will eventually timeout but not for quite a while. That's the reason you've needed to kill it even after exiting RR ... RR is being held captive by the underlying OS not releasing the COM port.

3. What GPS module are you using? Perhaps we can acquire the same one and see what's happening behind the scenes.

If you have a chance to try on XP let us know ...

Thanks,
STeven.
Eddy Wright from United States  [14 posts] 11 year
Hi STeven,

I did test it with XP and it works fine.  I installed a VMware virtual machine on my Win7 PC and loaded XP. The GPS module works fine with XP.

The two GPS units I have are the Pharos  GPS-500 (packaged with MS Maps & Streets 2008)and the GlobalSat BU-353 (packaged with Delorme Street Atlas 2012).

The GPS units stream data as soon as connect to them, no enter key required. There is something happening when using Roborealm with Win7x64 that doesn't occur with XP.

Thanks,
Eddy
Anonymous 11 year
Eddy,

Can you confirm the links (before we order these):

http://www.amazon.com/gp/product/B0035XU7WA/ref=ox_sc_act_title_1?ie=UTF8&smid=A2RUDGROS07HUS

http://www.amazon.com/gp/product/B000PKX2KA/ref=ox_sc_act_title_2?ie=UTF8&smid=AT5HPYEEN9G2E

Also, the difference between Win7 and XP is normally permissions/security. If you have not already tried right click on RoboRealm.exe and select "Run as Administrator" just to see if that might be the issue. Bit of a long shot but worth a quick try.

Thanks,
STeven.
Anonymous 11 year
Eddy,

One additional issue may be the 32bit versus 64bit driver compatibility. When RR runs on a 64bit machine it is still acting as a 32bit application which may not be able to load or talk to 64 bit drivers. I'm not sure on the installation process of the GPS drivers but if there is an option to also install a 32 bit version that may do the trick. I'm assuming the XP versions you tried were 32 bit?

STeven.
Eddy Wright from United States  [14 posts] 11 year
Hi STeven,

64-bit could be an issue but the drivers have to be 64-bit to work with the 64-bit OS.  Typically, there's no issues with a 32-bit app talking to 64-bit drivers. Most of the apps I have installed are 32-bit and all the drivers are 64-bit. They get along nicely...

It's likely some subtle difference that's causing the problem.  Is there any sort of logging that can help diagnose the issue?

Thanks,
Eddy
Anonymous 11 year
Eddy,

Normally that's true ... but there are cases where 32bit apps cannot load 64bit dll's which should not be happening but who knows.

We've ordered those two GPS units and will try to replicate your issues.

Unfortunately there is no more detailed logging that would explain the issue. If some data were coming over the line that would be one thing, but as the module says its connected but no data there isn't much to log. Plus the system works on XP (and on our Win7 64bit) so there is either something incompatible on Win7 or a permission issue (UAC) exists that just prevents it from working. Right now it seems that a line by line check of the serial connection is the only way to determine what's wrong.

What is strange is that both devices exhibit this ... do you have any other serial devices (like an Arduino) that you can try using the serial module to see if it is all serial devices or just the GPS units?

STeven.
Eddy Wright from United States  [14 posts] 11 year
I set up a serial connection between two Win7 PCs and I was able to get Roborealm to see the data using the serial module. I did notice that the text isn't displayed until there is a short pause of no data. The GPS modules send a continuous stream of data, could that be causing some sort of problem?

When I tried the console in the GPS module, nothing that I typed would be displayed. Not sure if it only shows properly formatted NMEA messages or anything it receives.

Thanks,
Eddy
Anonymous 11 year
Eddy,

The serial module is configured to display after a newline is seen ... or if a small amount of time has passed. The NMEA strings should end with a newline and thus would be displayed immediately. I'd not expect that to be an issue with your devices since they work with XP.

The console in the GPS module is a read only. It just displays the raw text coming from the serial device in case we get a device that does not adhere to the NMEA standard then at least we could see that. Unfortunately, that also does not help your situation much.

The devices are on their way to us so we will eventually have access to them on the same system (win7 64 bit) you have. At this point we think it may have something to do with event timeouts ... ie the data is not being returned since an event of some sort is being signalled. But any change at this point would be a guess so I'd rather wait until we have the device to test that theory. We have many other devices that use the same code on win7 64 without issue so we have to be very careful in changing anything.

RoboRealm uses overlapped IO which allows us to interrupt the read process when needed. It could very well be that the drivers on win7 are slightly different and not firing those events correctly. That would explain why RR just sits there not displaying anything and why it hangs on a close. I doubt that TeraTerm uses that since it is a dedicated application and probably hangs on the COM communication until something is seen.

STeven.
Eddy Wright from United States  [14 posts] 11 year
Hi STeven,

My workaround for now is to use an XP virtual machine to run Roborealm. This lets me use the GPS module but now I have a different issue. I'll start a separate thread for this.

Thanks,
Eddy
Anonymous 11 year
Eddy,

We received the GPS units today and experianced exactly the same issue you noted on both units.

The problem turned out to be due to a return value of a low level routine that appears to differ in result when running on win7. This is one of those cases where win7 handles things just a little differently than XP and since we are using very extensive error checking the returned values were considered incorrect. Regardless a quick fix and both units appear to function as expected.

Can you download 2.46.9 and see if you also get things to work better.

Thanks!
STeven.
Eddy Wright from United States  [14 posts] 11 year
Thanks for taking care of this so quickly. I'll download the new version and try it out.

Eddy

This forum thread has been closed due to inactivity (more than 4 months) or number of replies (more than 50 messages). Please start a New Post and enter a new forum thread with the appropriate title.

 New Post   Forum Index