mktgafac@aol.com (Mktgafac) posted this in Sci.geo.satellite-nav on Sept. 23/97. I have successfully downloaded and uploaded waypoints to my 4000XL ! The 18 page document available from Magellan Technical Support was somewhat useful, Don (extension 5037 at Mag. Tech Support) is the most helpful person there, a shareware Hex utility called "Hex Workshop", published by BreakPoint Software is also most useful. To summarize here is the upload & download in simple terms. You'll obviously need the data module or compatible connection. Magellan's module has 4 wires: 1. Red is power to the unit 2. Black is power and data ground (battery - and DB-9 pin 5) 3. Yellow is data out of the GPS unit (DB-9 pin 2) 4. Orange is data into the GPS unit (DB-9 pin 3) Use HyperTerminal, Terminal, or any other application that can communicate at 4800, 8, N, 1 with your GPS. To download all waypoints from your Magellan GPS Unit, create an ASCII text file (notepad works) that you can send to the GPS. Enter the following command into the text file and save it. $PMGNCMD,WAYPOINT*71 Make sure that all communications to your GPS are in CAPS! The $PMGNCMD is a proprietary message instructing the GPS to carry out the command(s) that follows. WAYPOINT is the command to download all waypoints. A specific waypoint can be requested by adding a comma and the name of the waypoint, after the WAYPOINT command. You must end the command with the * (this is an asterisk) Don at Magellan advised that the protocol document offers other suggestions for ending the command, but they don't work. The most important part of the message is the 71. This is the Hex checksum value. If any part of the command changes, so does this value. If you request a specific waypoint name, the Hex checksum value will not be 71 anymore, you will need to recalculate it. This is where the Hex utility came in handy. It displays the ASCII text message in Hex code. With the handy Hex calculator that came with the program, you can calculate the new checksum value. To calculate a value you need to know the Hex equivalent for each ASCII character (Hex Workshop shows this). You enter the value for each character between the $ and the * into the calculator (the Windows Scientific calculator also works) followed by the Exclusive Or function (Xor, ^, there are many different abbreviations) as the enter key. The last result on the calculator is the value you need to use in your command string. The result of sending this command is that all waypoints in your GPS will be downloaded to your computer. By the way, before sending this message, you should turn on the capture text option so you can save the response as a text file. The great part about this download, is that the information sent to you from the GPS is already formatted to send right back to the unit. You can send all waypoints or just one. BE CAREFUL though. If you change any part of a waypoint message between the $ and the * this will change your Hex checksum, and you will have to recalculate it. When uploading from your PC, the GPS will add any new waypoints that your are sending to the unit, and if you send a waypoint with the same name as one already in the unit, it will replace the existing waypoint with the new one. The command syntax is $PMGNCMD,c---c,p---p*hh Where c---c is the command name, p---p is the optional field, hh is the Hex checksum, and is a carriage return and line feed. Some other commands that you can send are: COMMAND -- REPLY -- DESCRIPTION ALMANAC -- PMGNALM -- Sends Almanac Data DELETE -- -- Empties the data buffer as specified, (WAYPOINTS, TRACK, FIX, ALL, AIRCRAFT) END -- -- End of data when multiple NMEA records have been sent that do not include a record count identifier EPHEMERIS -- GSV -- Send Ephemeris data (whatever this is?) FIX -- GGA -- Begin sending fix information until a STOP command is received HANDOFF -- -- Turns off Handshaking HANDON -- -- Turns on Handshaking ROUTE -- PMGNRTE -- Send Route messages STOP -- -- Discontinue sending stream data at completion of current block TRACK -- PMGNTRK -- Send Track messages UNABLE -- -- Sent when a previous command cannot be complied with. VERSION -- PMGNVER -- Send a string giving product and software version information WAYPOINT -- WPL -- Send NMEA Waypoint Messages (option of adding a specific waypoint name) CHECKLIST -- PMGNLST -- Send aircraft check list data FLIGHTPLAN -- PMGNPLN -- Send aircraft flight plan data AIRCRAFT -- PMGNACC -- Send aircraft characteristic data I asked Magellan about reproducing and posting the Transmission Protocol Specification for Magellan Products, that they sent to me. Although it has a Copyright on the bottom of each page, they advised that I am welcome to share it with the newsgroup. However, the fax that I received is very poor quality. I was in the process of trying to re-type the whole 18 pages when Magellan offered to mail me a clean copy that I can OCR and post. Look for this in the near future. HOPEFULLY SOME COMPANY WILL SOON OFFER AN APPLICATION THAT WILL SIMPLIFY THIS PROCESS, HINT, HINT! If anyone ever hears of an application that caters to Magellan's proprietary commands, please e-mail me. I can probably get a programmer I know to write some simple macros in Excel to automatically add the checksum value on to the end of the text string and create an uploadable text file. If this is something that people would be interested in please e-mail me and let me know. He will charge me for the programing but I don't know how much yet. If nobody is interested I won't persue it by myself. If I get a good response, I will get him to estimate the time required to write the code. Happy Navigating! Fran