WineHQ
Bug Tracking Database – Bug 4633

 Bugzilla

 

Last modified: 2014-01-03 13:09:46 UTC  

Garmin MapSource 6.x crashes during attempt to communicate with GPS device

Bug 4633 - Garmin MapSource 6.x crashes during attempt to communicate with GPS device
Garmin MapSource 6.x crashes during attempt to communicate with GPS device
Status: CLOSED FIXED
AppDB: Show Apps affected by this bug
Product: Wine
Classification: Unclassified
Component: -unknown
0.9.8.
x86 Linux
: P2 normal
: ---
Assigned To: Mr. Bugs
https://buy.garmin.com/en-US/US/maps/...
: download, hardware
: 5398 (view as bug list)
Depends on: 11811
Blocks:
  Show dependency tree
 
Reported: 2006-02-21 09:41 UTC by Hernádi Zoltán
Modified: 2014-01-03 13:09 UTC (History)
16 users (show)

See Also:
Regression SHA1:
Fixed by SHA1:
Distribution: ---
Staged patchset:


Attachments
download from gps, upload to gps (3.91 KB, text/plain)
2007-03-03 02:07 UTC, Hernádi Zoltán
Details
Error msgs when uploading a map (685 bytes, text/plain)
2007-11-12 10:06 UTC, Renaud (Ron) OLGIATI
Details
Trace from similar situation with RS232 Barcode Scanner (375.36 KB, application/octet-stream)
2009-10-07 15:53 UTC, Peter Schueller
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Hernádi Zoltán 2006-02-21 09:41:02 UTC
The program crashes when I try to communicate with my GPS device through COM1.

I have these lines in system.reg:
[HARDWARE\\DEVICEMAP\\SERIALCOMM] 1140289570
"COM1"="COM1"
"COM2"="COM2"

I have permissions to use /dev/ttyS0.

The console output of "wine ./Mapsource.exe":
('Be/kimeneti hiba' means 'In/output error')

fixme:bitblt:X11DRV_BitBlt potential optimization - client-side DIB copy
fixme:bitblt:X11DRV_BitBlt potential optimization - client-side DIB copy
fixme:setupapi:SetupDiEnumDeviceInfo 0x7fdf0670 0 0x7fa4d408
fixme:comm:SetupComm insize 16384 outsize 4096 unimplemented stub
fixme:comm:SetupComm insize 16384 outsize 4096 unimplemented stub
err:comm:GetCommState tcgetattr error 'Be/kimeneti hiba'
err:comm:GetCommState tcgetattr error 'Be/kimeneti hiba'
err:comm:GetCommState tcgetattr error 'Be/kimeneti hiba'
err:comm:GetCommState tcgetattr error 'Be/kimeneti hiba'
err:comm:GetCommState tcgetattr error 'Be/kimeneti hiba'
fixme:setupapi:SetupDiGetClassDevsW ({2c9c45c2-8e7d-4c08-a12d-816bbae722c0}): stub
err:comm:GetCommState tcgetattr error 'Be/kimeneti hiba'
Comment 1 Michael 2006-02-24 04:13:29 UTC
Mapsource crashes hard whenever serial communications are attempted.  If
setupapi.dll is copied into system32 and winecfg is used to set it to "native",
Mapsource is then able to handle the crash and shut down gracefully (as opposed
to wine segfaulting).  This serial communications bug is the only thing keeping
Mapsource from gold status.
Comment 2 Michael 2006-05-19 03:52:35 UTC
The MapSource update released in March 2006 (6.10.2) completely fails to work. 
This error comes up on startup:

App: MapSource
At: 5/19/2006 7:52:53 AM (UTC)
OS: Windows 2000 Service Pack 4
Processor: Pentium Pro or Pentium II, RAM: 1552256
AFX_COMBOBOX.HPP-122-6.10.2.0

Version 6.9.1 still works relatively well, although Garmin no longer provides
the installer on their website.

If anyone is willing to work on this problem, I can provide a tarball with
version 6.9.1 plus registry entries and other files needed to start the program up.

Depending on a number of factors (mainly if I have enough extra cash), I might
even be willing to purchase an eTrex Legend (the same unit that I use) for the
person who solves this bug.

I can be contacted on gmail.com; my address is akihana (at the mentioned domain).

Oh, and if someone ends up reading this -- please change the Component to
wine-ports since this is really a serial comm bug as opposed to a filesystem
issue.  Please also update the version; I can comfirm that this problem still
exists in Wine 0.9.13.
Comment 3 Vladimir Nadvornik 2006-05-21 17:15:39 UTC
I am trying to solve the same problem.
There is a workaround for the crash at the start of serial communication:
set the emulated windows version to Win 95. 
With wine 0.9.11 and mapsource 6.9.1 I was able to get the ID and download data
from gps.
Sending maps to gps however freezes and mapsource reports an error after some time.
With wine 0.9.13 it fails to detect the device and strace shows SIGSEGV several
lines after the /dev/ttyS0 is opened.
Comment 4 Michael 2006-07-15 14:01:27 UTC
Okay,

The windows version must be set to Windows 95 or Windows NT 4.0 to avoid a crash
when attempting serial communications.  Per the Wine user's guide, you must
create symlinks to your serial devices in ~/.wine/dosdevices:

ln -s /dev/ttyS0 com1
ln -s /dev/ttyS1 com2
ln -s /dev/ttyS2 com3
ln -s /dev/ttyS3 com4

The following errors are observed in the console.  (these are the same errors
reported by others above):

fixme:comm:set_queue_size insize 16384 outsize 4096 unimplemented stub
err:comm:get_baud_rate tcgetattr error 'Input/output error'

Some related functions were implemented by Eric Pouech in may 2006, including
adding the stub for set_queue_size:

http://www.winehq.com/pipermail/wine-cvs/2006-May/022683.html

The second error listed may be related to the first for all I know, so if
set_queue_size is implemented at some point this may start working.
Comment 5 Michael 2006-07-15 15:14:10 UTC
Apparently set_queue_size isn't what is causing the issue, per an op on #winehq.
 "Wine's serial port doesn't work in asynch mode for input" is apparently at
least part of the problem.  This issue appears to be related to bug 5398.
Comment 6 Vitaliy Margolen 2006-11-15 09:46:30 UTC
*** Bug 5398 has been marked as a duplicate of this bug. ***
Comment 7 Detlef Riekenberg 2007-02-26 17:25:47 UTC
From the log:
 fixme:setupapi:SetupDiEnumDeviceInfo 0x7fdf0670 0 0x7fa4d408
The app tried to collect informations about the available Hardware
from the System, but that is not implemented in wine.

fixme:setupapi:SetupDiGetClassDevsW ({2c9c45c2-8e7d-4c08-a12d-816bbae722c0})
: stub
The app is searching the Garmin USB Driver
(search for 2c9c45c2-8e7d-4c08-a12d-816bbae722c0 in
http://www.garmin.com/support/pdf/iop_spec.pdf)
USB is not supported in wine and
running a Windows-Driver for USB-Hardware will not work  


 err:comm:GetCommState tcgetattr error 'Be/kimeneti hiba'
The app tried to read the Serial Status. (This is most times for
DTR/RTS, to see, if a Device is ready)

Serial support was updated since the bug was created.
Please retry with a current wine version and a clean ~/.wine:
(you can rename the old "~/.wine" to backup your current installation)

Install the software and attach a log (~2000 lines around the failure):

WINEDEBUG="+comm,+tid,+pid,+file,+reg,+seh,+relay" wine app.exe 2>log.txt 


-- 
By by  ... Detlef
Comment 8 Hernádi Zoltán 2007-03-03 02:07:04 UTC
Created attachment 5199 [details]
download from gps, upload to gps

I've done the test with eTrex Camo, using serial cable and wine-0.9.31.

Now MapSource 6.9.1 DOES NOT CRASH ANYMORE and is ABLE TO DOWNLOAD data from
gps.

UPLOADING to gps DOES NOT WORK, the program starts the progress bar, waits
about 20 seconds, and shows a windows error message: "There was an error
communicating with your device. Please make sure your device is plugged in and
turned on. If errors continue to occur, you may need to restart your device."

Of course, I have checked writing permissions to /dev/ttyS*.

The attached log is the error output of wine, using
WINEDEBUG="+comm,+tid,+pid,+file,+reg,+seh,+relay".

The 'Be/kimeneti hiba' message stands for 'In/output error'.
Comment 9 Peter Verthez 2007-08-15 05:29:43 UTC
I've found a fix for the problem mentioned in comment 2 (the AFX_COMBOBOX.HPP error).  This fix is now committed in the wine sources in git (I suppose this will be available in build 0.9.44).

With the fix, MapSource 6.10.2 starts up normally.  I've also tried the communication with my GPS (an Etrex Vista CX), and everything seemed to work fine, after creating the proper device link:
  ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com2 
and adding myself to the 'uucp' group (on Fedora Core 6), to have read-write access to the device. 

I could get the Unit ID, retrieve routes from the GPS and download routes to the GPS.  Apparently somebody already fixed the USB communication...  I did not try downloading maps to the GPS.
Comment 10 Mike 2007-10-28 12:48:51 UTC
Just want to report that symptoms are still the same using the latest Wine (0.9.47) and MapSource (6.13.4). I have an older GPS unit that uses a serial interface rather than USB. I am able to download from the GPS, but not upload to it. I've tried switching the Windows version in winecfg from Windows 2000 to both Windows 95 and Windows NT 4.0, but the symptoms are identical. I made a log as described above, but it's 75M uncompressed. I can trim out the interesting bits if anyone would like to see it, but I'm not exactly sure how many lines to leave before/after the first/last "trace:comm:io..." lines for this to be useful to anyone.

Right now the main reason I have to keep Windows around is, of all things, Garmin MapSource. There's just no reasonable open-source replacement, mostly due to the street data itself being proprietary. I'd love for MapSource to work correctly under Wine, and if there's anything I can do to help, please let me know.
Comment 11 Renaud (Ron) OLGIATI 2007-11-12 10:06:09 UTC
Created attachment 9127 [details]
Error msgs when uploading a map
Comment 12 Renaud (Ron) OLGIATI 2007-11-12 10:06:40 UTC
I have had better esults using MapSource 6.11.5 (downloadable from the Garmin website) which is touted as the highest version for Legacy OS (read Win98/ME/NT)<br>
Using the serial connection it does up- and down-load track, route and waypoint data to and from the GPS receiver.<br>
Trying to upload maps causes a multiple error (see attachment) in err:comm:get_baud_rate tcgetattr error 'Input/output error' after which the app hangs. <br>
renaud@olgiati-in-paraguay 12/11/2007
Comment 13 Austin English 2008-04-11 15:10:52 UTC
Is this still an issue in current (0.9.59 or newer) wine?
Comment 14 Mike 2008-04-11 21:14:32 UTC
Yes. I just tested it with Wine 0.9.59, Ubuntu Gutsy, Mapsource 6.13.4 and a serial connection to a Garmin eMap GPS with firmware version 2.75. Downloading from the GPS works, but uploading doesn't work at all.

If there's anything I can do in the way of testing, etc. to help resolve this, please let me know. If this one miserable bug were fixed, I wouldn't have to carry around a copy of Windows on my laptop. Thanks.
Comment 15 Austin English 2008-04-11 21:52:48 UTC
(In reply to comment #14)
> Yes. I just tested it with Wine 0.9.59, Ubuntu Gutsy, Mapsource 6.13.4 and a
> serial connection to a Garmin eMap GPS with firmware version 2.75. Downloading
> from the GPS works, but uploading doesn't work at all.
> 
> If there's anything I can do in the way of testing, etc. to help resolve this,
> please let me know. If this one miserable bug were fixed, I wouldn't have to
> carry around a copy of Windows on my laptop. Thanks.
> 

WINEDEBUG="+comm,+tid,+pid,+file,+reg,+seh,+relay" wine app.exe 2>log.txt 

Would be helpful, in case someone takes a look at this bug.
Comment 16 Mike 2008-04-11 22:32:38 UTC
I've created a debug log, but it's too big (7.7M) to attach, so I uploaded it to my web host here:

http://www.bleeding-head.com/mapsource-log.txt.bz2

I opened MapSource, created a route, and attempted to upload it to my GPS. It failed, then I closed MapSource. Warning: this bz2-compressed file expands to over 500M.
Comment 17 Dániel Vásárhelyi 2008-12-07 12:17:32 UTC
Hey, this problem is killing me, but last entry is almost 9 months old... 
do anyone taking care of this problem ? I'm ready to test, produce traces etc

Daniel
Comment 18 Austin English 2009-06-08 11:50:00 UTC
Is this still an issue in current (1.1.23 or newer) wine?
Comment 19 Dániel Vásárhelyi 2009-06-08 12:04:09 UTC
will check in near future
Comment 20 Peter Schueller 2009-10-07 15:53:34 UTC
Created attachment 23973 [details]
Trace from similar situation with RS232 Barcode Scanner

I got a similar problem with an RS232 Barcode Scanner.
I have attached a trace, I am using Ubuntu with wine 1.1.29~winehq0~ubuntu~9.04-0ubuntu2.
Comment 21 David Griffith 2010-06-14 23:07:13 UTC
Still an issue with Mapsource 6.16.1 and wine-1.2-rc3

I have an eTrex Legend with a serial connection - Mapsource can scan the serial ports and locate/identify the unit, which suggests basic serial comms are ok.

When downloading a map to the unit, there is a baud rate change (which appears to go successfully from 9600 to 115200), then Mapsource seems to time out after a couple of minutes with a communications error.

The only thing of interest that appears in the console is :

fixme:comm:set_queue_size insize 16384 outsize 4096 unimplemented stub

repeated a half-dozen times after you start the process to transfer the map.
Comment 22 Sergey Belyashov 2010-09-01 01:16:22 UTC
I have same problem with one special proprietary program. This program successfully sends data via serial line, but does not receive anything. Any native linux terminal receives and sends successfully.
wine version is 1.2-0ubuntu1~lucidppa1
Comment 23 butraxz 2012-05-15 15:03:09 UTC
This has not been updated for two years. Is this still an issue in 1.5.4 or beyond ? Or should this be closed as abandoned ?
Comment 24 butraxz 2013-01-30 16:13:47 UTC
This has not been updated for two and half years. Is this still an issue in 1.5.4 or beyond ? Or should this be closed as abandoned ?
Comment 25 Anastasius Focht 2014-01-03 11:33:49 UTC
Hello folks,

the original issue this bug is about was fixed a long time ago.

http://bugs.winehq.org/show_bug.cgi?id=4633#c21

--- quote ---
I've done the test with eTrex Camo, using serial cable and wine-0.9.31.

Now MapSource 6.9.1 DOES NOT CRASH ANYMORE and is ABLE TO DOWNLOAD data from
gps.
--- quote ---

Any other issues like:

--- quote ---
UPLOADING to gps DOES NOT WORK, the program starts the progress bar, waits
about 20 seconds, and shows a windows error message: "There was an error
communicating with your device. Please make sure your device is plugged in and
turned on. If errors continue to occur, you may need to restart your device."
--- quote ---

Retest with _recent_ Wine version and file a new bug if still present.

Make sure you search Bugzilla for already reported issues with serial comm/GPS devices before creating a new bug.

Resolving 'fixed'.

Regards
Comment 26 Alexandre Julliard 2014-01-03 13:09:46 UTC
Closing bugs fixed in 1.7.10.


Privacy Policy
If you have a privacy inquiry regarding this site, please write to [email protected]

Hosted By CodeWeavers