This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Remove the requirement to disconnect and reconnect the device during updates

Garmin Express on Mac: During the update process, the device is connected and syncs. If there is an update (such as maps for example) the update is downloaded, but then at the point where the update ca be installed, Express asks for the device to be disconnected and reconnected - the device is already connected at this point, there is little logic to disconnecting and reconnecting it. 

Garmin Express can very rarely find the device again after you reconnect it so you end up giving up on the update.

The enhancement request would be a potentially more beneficial approach, which would be to maintain that existing connection - you have the connection already in order to sync and realise there is an update - just maintain that working connection until 'after' the update is installed, it would make updating the devices so much easier and way more successful.

After the update is installed, you can then disconnect/reconnect at that point, and it won't matter as much that Garmin can't re-establish connections.

Cheers

  • there is little logic to disconnecting and reconnecting it. 

    Actually, there is a logic behind it. The device must be disconnected so that it can load the maps or other updates internally. This also causes the device.xml file to be rewritten. Only after this has happened is Express able to detect a completed update.

  • Thanks for taking a read - so the disconnect is essentially work it's way around a file locking challenge. There are ways around that, don't have the maps (as an example) loaded when sync'd to express, shadow copy updates, the old byte ranges, etc. 

    I guess that means that the enhancement request would be amended to something the help avoid using exclusive locks when connected to Express, to remove the need for the disconnect - or - do something to make the reconnect to call the same methods it uses on the initial connect - which works great - it's only the reconnect where it has trouble finding the devices again, although that's drifting from enhancement request into defect territory potentially.

  • it's only the reconnect where it has trouble finding the devices again

    I can‘t reproduce this.

  • Yes why can't Garmin Express unmount the device and then remount it programmatically?

  • The device needs to be rebooted. When you unmount it, it will shutdown and stays off. You cannot remount a device that is powered down, that's why you have to unplug and replug it physically.

    (Technically you can unmount it and keeping it under power making remounting possible, but in that case the device isn't rebooted)

  • After map updates the device does not need to be rebooted.

  • Yes, it does. The file GarminDevice.xml needs to be updated. The device does that when it reboots.

  • Why can't this all be done programmatically and not involve the user?

  • The user is always involved... She/he has to connect the device to the computer in the first place.

    Theoretically it could be done different, with a little less user involvement. This method is used some 30 years now, it is not so simple to change it and keeping backwards compatibility.