Appendix C: Changing The Baud Rate In Garmin Mode - Garmin 15 H Series Technical Specifications

Table of Contents

Advertisement

APPENDIX C: CHANGING THE BAUD RATE IN GARMIN MODE

In certain cases, you may need to change the default baud rate of your Garmin GPS receiver
while in Garmin mode. Follow these steps to temporarily change the baud rate.
Refer to the Garmin Device Interface Specification found in the Garmin Device Interface SDK for
details on how to form and parse Garmin packets, available at
https://www8.garmin.com/support/commProtocol.html.
1. Turn off all requests by transmitting packet:
2. The GPS unit will respond by sending a packet with id = IOP_ACK_BYTE (0x06)
3. After you receive the above packet, transmit packet:
4. The GPS unit will respond by sending a packet:
5. Determine the actual baud rate value from the data sent in step 4. This value will be within +/-
5% of the actual baud rate. (For example, the GPS unit might send a baud rate of 38361,
which correlates to a baud rate of 38400).
6. If the baud rate in step 5 is acceptable, transmit packet:
7. Sleep for a small amount of time, about 100 milliseconds, to make sure the packet in (6) was
successfully transmitted to the GPS unit.
8. Close the current connection to the GPS unit and immediately open a new connection with
the new baud rate obtained in step 5.
9. Immediately after establishing a connection, transmit packet:
10. The GPS will respond by sending a packet:
11. After you receive the above packet, transmit the same packet in step 9 again.
12. The GPS will respond again with the same packet in step 10.
13. The baud rate has been successfully changed upon receiving the above packet. If the GPS
unit does not receive these two IOP_CMND_DATA packets within two seconds, it will reset
its baud rate to 9600.
id = IOP_RQST_DATA (0x1C)
data = 0 (16-bit unsigned integer )
id = IOP_BAUD_RQST_DATA (0x30)
data = baud rate to change to (32-bit unsigned integer; for example,
38400)
id = IOP_BAUD_ACPT_DATA (0x31)
data = highest acceptable baud rate closest to what was requested
(32-bit unsigned integer; for example, 38361 decimal)
id = IOP_ACK_BYTE (0x06)
data = IOP_BAUD_ACPT_DATA (0x31)
id = IOP_CMND_DATA (0x0A)
data = IOP_ACK_PING (0x3A)
id = IOP_ACK_BYTE (0x06)
data = IOP_CMND_DATA (0x0A)
id = IOP_CMND_DATA (0x0A)
data = IOP_ACK_PING (0x3A)
id = IOP_ACK_BYTE (0x06)
data = IOP_CMND_DATA (0x0A)
30

Advertisement

Table of Contents
loading

This manual is also suitable for:

15 l series

Table of Contents