I have a Garmin GPS 12, which has worked perfectly over the last 10 years until a few days ago. It was on and working fine, I marked a waypoint, turned it off and put it in my pocket. 45 minutes later I pulled it out and when I tried to turn it on it only showed the message "UPLOAD NOT PRESENT". Nothing I did would get it to show me anything different (I tried all kinds of button sequences...holding some down for many seconds, pressing multiple at the same time, etc.). The only thing it would do was turn on and show me that message, or turn off. I called Garmin and they said they could repair it, but that would require shipping it to them. They said it would cost $59 (which included the repair and shipping back to me, but I was responsible for whatever it cost to ship it to them). I asked if they would be able to save my routes and waypoints if they "repair" it, but they couldn't guarantee that. I told them that I heard "reloading the firmware" or "uploading the newest update" might fix it AND keep my routes and waypoints. They told me that might work. I didn't have the PC interface cable that was necessary in order to connect it to my computer to update it, so I asked them what it would cost to buy one from them. They said it would be $38.09 through them, but that I could get it cheaper on the Internet (part # 010-10141-00). Then they said they actually may have some of them sitting around in a box somewhere (I'm assuming they meant used cables). They checked around and found one and shipped it to me at no charge! It arrived in a couple days. Then I just plugged it into one of the serial ports in the back of my computer, plugged the other end into the GPS and turned it on, went to Garmin's website: http://www8.garmin.com/products/gps12/download.html
and downloaded version 4.60. I'm not sure what version was on my GPS originally (I obviously couldn't check anymore since it wasn't working), but the user manual that came with it said "Software Version 4.03 or above". It asked me to unzip the downloaded files and stored them on my hard drive at C:garmin. I opened up the file named 460_UPDT.TXT and followed the directions listed there (which are slightly different from the directions listed on the website's update page). One of the steps said to "Turn on your GPS and ensure the Serial Data Format is set to "GARMIN". You can find this setting in Setup Menu -> Interface." I couldn't do this since mine only displayed the message "UPLOAD NOT PRESENT", so I just ignored this step. I opened up the file named UPDATER.EXE and had it "auto-detect" when it asked me which serial port I used. The message on the GPS screen changed to "UPLOAD IN PROGRESS" and it only took about 4 minutes until the upload was done. The GPS screen then changed to the start-up screen where it acquires satellites and asked me to enter my country and state. Everything seems to be back to normal and all my routes and waypoints are still there. Even better, it didn't cost me anything but time.