API

Published on July 2016 | Categories: Documents | Downloads: 68 | Comments: 0 | Views: 515
of 40
Download PDF   Embed   Report

Comments

Content


OM-20000116 Rev 2
OEMV Family
Application Program
Interface (API)
USER GUIDE


2 OEMV Family Application Program Interface (API) User Guide Rev 2
Proprietary Notice
OEMV Family Application Program Interface (API) User Guide
Publication Number: OM-20000116
Revision Level: 2
Revision Date: 2009/08/07
Proprietary Notice
The software described in this document is furnished under a licence agreement or non-disclosure
agreement. The software may be used or copied only in accordance with the terms of the agreement. It is
against the law to copy the software on any medium except as specifically allowed in the license or non-
disclosure agreement.
No part of this manual may be reproduced or transmitted in any form or by any means, electronic or
mechanical, including photocopying and recording, for any purpose without the express written permission
of a duly authorized representative of NovAtel Inc.
The information contained within this manual is believed to be true and correct at the time of publication.
NovAtel® and FlexPak® are registered trademarks of NovAtel Inc.
All other brand names are trademarks of their respective holders.
© Copyright 2009 NovAtel Inc. All rights reserved.
Unpublished rights reserved under International copyright laws.
Printed in Canada on recycled paper. Recyclable.
OEMV Family Application Program Interface (API) User Guide Rev 2 3
Table of Contents
Software License 6
Warranty Policy 8
Foreword 9
Scope .......................................................................................................................................9
Conventions .............................................................................................................................9
Customer Service .....................................................................................................................9
1 Introduction 10
1.1 Overview ...........................................................................................................................10
1.2 Features ............................................................................................................................10
1.3 Requirements to Build and Run an Application.................................................................10
1.3.1 Firmware Compatibility ............................................................................................11
1.4 Materials Provided.............................................................................................................11
2 Designing and Building the Application 12
2.1 Designing the Application..................................................................................................12
2.1.1 Working with the Virtual Ports..................................................................................12
2.1.2 Using the GPIOs......................................................................................................12
2.1.3 Input Parameters .....................................................................................................13
2.1.4 Auto-Start Applications ............................................................................................14
2.2 Building the Application.....................................................................................................14
2.2.1 Building the Application Using a Supported Compiler .............................................14
2.2.2 Converting Binary to S-Records ..............................................................................15
2.2.3 Adding Information for Loading the Application .......................................................16
2.2.4 Automating Utility Execution ....................................................................................18
3 Loading and Controlling the Application 20
3.1 Setting up the Receiver .....................................................................................................20
3.1.1 Determining the Current Model and Firmware Version............................................20
3.1.2 Updating the Firmware.............................................................................................21
3.1.3 Authorizing a Model with the API Option .................................................................21
3.2 Loading the Application.....................................................................................................21
3.3 Controlling the Application.................................................................................................22
3.3.1 Starting the Application............................................................................................22
3.3.2 Stopping the Application ..........................................................................................23
3.3.3 Removing the Application ........................................................................................23
4 Additional Information 24
4.1 Determining the Version of the Loaded Application ..........................................................24
4.2 Logging the Application Status..........................................................................................24
4.3 DATABLK Parameters Used in Logs ................................................................................26
4.4 Determining the Version of WinLoad.................................................................................26
A Technical Specifications 27
4 OEMV Family Application Program Interface (API) User Guide Rev 2
Table of Contents
B CrossWorks 28
5 OEMV Family Application Program Interface (API) User Guide Rev 2
Tables
S-Record Fields............................................................................................................... 15
S-Record Types............................................................................................................... 16
DATABLK Parameters..................................................................................................... 17
APPLICATION START Parameters ................................................................................ 22
DATABLK Parameters Used in Logs............................................................................... 26
OEMV-3 GPIO Electrical Specifications.......................................................................... 27
OEMV-2 GPIO Electrical Specifications.......................................................................... 27
OEMV-1 GPIO Electrical Specifications.......................................................................... 27
FlexPak-V2 GPIO Electrical Specifications ..................................................................... 27
OEMV Family Application Program Interface (API) User Guide Rev 2 6
Software License
Software License
BY INSTALLING, COPYING, OR OTHERWISE USING THE SOFTWARE PRODUCT, YOU AGREE
TO BE BOUND BY THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE WITH THESE
TERMS OF USE, DO NOT INSTALL, COPY OR USE THIS ELECTRONIC PRODUCT (SOFTWARE,
FIRMWARE, SCRIPT FILES, OR OTHER ELECTRONIC PRODUCT WHETHER EMBEDDED IN THE
HARDWARE, ON A CD OR AVAILABLE ON THE COMPANY WEB SITE) (hereinafter referred to as
"Software").
1. License: NovAtel Inc. ("NovAtel") grants you a non-exclusive, non-transferable license (not a sale)
to, where the Software will be used on NovAtel supplied hardware or in conjunction with other NovAtel
supplied software, use the Software with the product(s) as supplied by NovAtel. You agree not to use
the Software for any purpose other than the due exercise of the rights and licences hereby agreed to
be granted to you.
2. Copyright: NovAtel owns, or has the right to sublicense, all copyright, trade secret, patent and other
proprietary rights in the Software and the Software is protected by national copyright laws, international
treaty provisions and all other applicable national laws. You must treat the Software like any other copy-
righted material except that you may make one copy of the Software solely for backup or archival pur-
poses (one copy may be made for each piece of NovAtel hardware on which it is installed or where
used in conjunction with other NovAtel supplied software), the media of said copy shall bear labels
showing all trademark and copyright notices that appear on the original copy. You may not copy the
product manual or written materials accompanying the Software. No right is conveyed by this Agree-
ment for the use, directly, indirectly, by implication or otherwise by Licensee of the name of NovAtel, or
of any trade names or nomenclature used by NovAtel, or any other words or combinations of words
proprietary to NovAtel, in connection with this Agreement, without the prior written consent of NovAtel.
3. Patent Infringement: NovAtel shall not be liable to indemnify the Licensee against any loss sus-
tained by it as the result of any claim made or action brought by any third party for infringement of any
letters patent, registered design or like instrument of privilege by reason of the use or application of the
Software by the Licensee or any other information supplied or to be supplied to the Licensee pursuant
to the terms of this Agreement. NovAtel shall not be bound to take legal proceedings against any third
party in respect of any infringement of letters patent, registered design or like instrument of privilege
which may now or at any future time be owned by it. However, should NovAtel elect to take such legal
proceedings, at NovAtel's request, Licensee shall co-operate reasonably with NovAtel in all legal
actions concerning this license of the Software under this Agreement taken against any third party by
NovAtel to protect its rights in the Software. NovAtel shall bear all reasonable costs and expenses
incurred by Licensee in the course of co-operating with NovAtel in such legal action.
4. Restrictions: You may not:
(a) copy (other than as provided for in paragraph 2), distribute, transfer, rent, lease, lend, sell or
sublicense all or any portion of the Software except in the case of sale of the hardware to a
third party;
(b) modify or prepare derivative works of the Software;
(c) use the Software in connection with computer-based services business or publicly display
visual output of the Software;
(d) transmit the Software over a network, by telephone or electronically using any means (except
when downloading a purchased up[grade from the NovAtel web site); or
(e) reverse engineer, decompile or disassemble the Software.
You agree to keep confidential and use your best efforts to prevent and protect the contents of the Soft-
ware from unauthorized disclosure or use.
Software License
OEMV Family Application Program Interface (API) User Guide Rev 2 7
5. Term and Termination: This Agreement and the rights and licences hereby granted shall continue
in force in perpetuity unless terminated by NovAtel or Licensee in accordance herewith. In the event
that the Licensee shall at any time during the term of this Agreement: i) be in breach of its obligations
hereunder where such breach is irremediable or if capable of remedy is not remedied within 30 days of
notice from NovAtel requiring its remedy; then and in any event NovAtel may forthwith by notice in writ-
ing terminate this Agreement together with the rights and licences hereby granted by NovAtel.
Licensee may terminate this Agreement by providing written notice to NovAtel. Upon termination, for
any reasons, the Licensee shall promptly, on NovAtel's request, return to NovAtel or at the election of
NovAtel destroy all copies of any documents and extracts comprising or containing the Software. The
Licensee shall also erase any copies of the Software residing on Licensee's computer equipment. Ter-
mination shall be without prejudice to the accrued rights of either party, including payments due to
NovAtel. This provision shall survive termination of this Agreement howsoever arising.
6. Warranty: NovAtel does not warrant the contents of the Software or that it will be error free. The
Software is furnished "AS IS" and without warranty as to the performance or results you may obtain by
using the Software. The entire risk as to the results and performance of the Software is assumed by
you. See product enclosure, if any for any additional warranty.
7. Indemnification: NovAtel shall be under no obligation or liability of any kind (in contract, tort or oth-
erwise and whether directly or indirectly or by way of indemnity contribution or otherwise howsoever) to
the Licensee and the Licensee will indemnify and hold NovAtel harmless against all or any loss, dam-
age, actions, costs, claims, demands and other liabilities or any kind whatsoever (direct, consequential,
special or otherwise) arising directly or indirectly out of or by reason of the use by the Licensee of the
Software whether the same shall arise in consequence of any such infringement, deficiency, inaccu-
racy, error or other defect therein and whether or not involving negligence on the part of any person.
8. Disclaimer and Limitation of Liability:
(a) THE WARRANTIES IN THIS AGREEMENT REPLACE ALL OTHER WARRANTIES,
EXPRESS OR IMPLIED, INCLUDING ANY WARRANTIES OF MERCHANTABILITY OR
FITNESS FOR A PARTICULAR PURPOSE. NovAtel DISCLAIMS AND EXCLUDES ALL
OTHER WARRANTIES. IN NO EVENT WILL NovAtel's LIABILITY OF ANY KIND
INCLUDE ANY SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES, INCLUDING
LOST PROFITS, EVEN IF NovAtel HAS KNOWLEDGE OF THE POTENTIAL LOSS OR
DAMAGE.
(b) NovAtel will not be liable for any loss or damage caused by delay in furnishing the Software or
any other performance under this Agreement.
(c) NovAtel's entire liability and your exclusive remedies for our liability of any kind (including lia-
bility for negligence) for the Software covered by this Agreement and all other performance or
non-performance by NovAtel under or related to this Agreement are to the remedies specified
by this Agreement.
9. Governing Law: This Agreement is governed by the laws of the Province of Alberta, Canada. Each
of the parties hereto irrevocably attorns to the jurisdiction of the courts of the Province of Alberta.
10. Customer Support: For Software UPDATES and UPGRADES, and regular customer support,
contact the NovAtel GPS Hotline at 1-800-NOVATEL (U.S. or Canada only), or +1-403-295-4900, Fax
+1-403-295-4901, e-mail to [email protected],
website: http://www.novatel.com or write to:
NovAtel Inc.
Customer Service Department
1120 - 68 Avenue NE,
Calgary, Alberta, Canada T2E 8S5
OEMV Family Application Program Interface (API) User Guide Rev 2 8
Warranty
Warranty Policy
NovAtel Inc. warrants that its Global Positioning System (GPS) products are free from defects in materials and
workmanship, subject to the conditions set forth below, for the following periods of time:
OEMV Family Receiver Cards One (1) Year
OEMV-Based Receivers One (1) Year
NovAtel Antennas One (1) Year
Cables and Accessories Ninety (90) Days
Software Support One (1) Year
Date of sale shall mean the date of the invoice to the original customer for the product. NovAtel’s responsibility
respecting this warranty is solely to product replacement or product repair at an authorized NovAtel location only.
Determination of replacement or repair will be made by NovAtel personnel or by technical personnel expressly
authorized by NovAtel for this purpose.
There are no user serviceable parts in the GPS receiver and no maintenance is required. When the status code
indicates that a unit is faulty, replace with another unit and return the faulty unit to NovAtel Inc.
Once you have obtained an RMA number, you will be advised of proper shipping procedures to return any
defective product. When returning any product to NovAtel, please return the defective product in the original
packaging to avoid shipping damage.
THE FOREGOING WARRANTIES DO NOT EXTEND TO (I) NONCONFORMITIES, DEFECTS OR
ERRORS IN THE PRODUCTS DUE TO ACCIDENT, ABUSE, MISUSE OR NEGLIGENT USE OF
THE PRODUCTS OR USE IN OTHER THAN A NORMAL AND CUSTOMARY MANNER, ENVI-
RONMENTAL CONDITIONS NOT CONFORMING TO NOVATEL’S SPECIFICATIONS, OR FAIL-
URE TO FOLLOW PRESCRIBED INSTALLATION, OPERATING AND MAINTENANCE
PROCEDURES, (II) DEFECTS, ERRORS OR NONCONFORMITIES IN THE PRODUCTS DUE TO
MODIFICATIONS, ALTERATIONS, ADDITIONS OR CHANGES NOT MADE IN ACCORDANCE
WITH NOVATEL’S SPECIFICATIONS OR AUTHORIZED BY NOVATEL, (III) NORMAL WEAR
AND TEAR, (IV) DAMAGE CAUSED BY FORCE OF NATURE OR ACT OF ANY THIRD PERSON,
(V) SHIPPING DAMAGE; OR (VI) SERVICE OR REPAIR OF PRODUCT BY THE DEALER WITH-
OUT PRIOR WRITTEN CONSENT FROM NOVATEL. IN ADDITION, THE FOREGOING WAR-
RANTIES SHALL NOT APPLY TO PRODUCTS DESIGNATED BY NOVATEL AS BETA SITE TEST
SAMPLES, EXPERIMENTAL, DEVELOPMENTAL, PREPRODUCTION, SAMPLE, INCOMPLETE
OR OUT OF SPECIFICATION PRODUCTS OR TO RETURNED PRODUCTS IF THE ORIGINAL
IDENTIFICATION MARKS HAVE BEEN REMOVED OR ALTERED. THE WARRANTIES AND
REMEDIES ARE EXCLUSIVE AND ALL OTHER WARRANTIES, EXPRESS OR IMPLIED, WRIT-
TEN OR ORAL, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY OR FIT-
NESS FOR ANY PARTICULAR PURPOSE ARE EXCLUDED. NOVATEL SHALL NOT BE LIABLE
FOR ANY LOSS, DAMAGE, EXPENSE, OR INJURY ARISING DIRECTLY OR INDIRECTLY OUT
OF THE PURCHASE, INSTALLATION, OPERATION, USE OR LICENSING OR PRODUCTS OR
SERVICES. IN NO EVENT SHALL NOVATEL BE LIABLE FOR SPECIAL, INDIRECT, INCIDEN-
TAL OR CONSEQUENTIAL DAMAGES OF ANY KIND OR NATURE DUE TO ANY CAUSE.
Before shipping any material to NovAtel or Dealer, please obtain a Return Material Authorization (RMA)
number by calling NovAtel Customer Service at 1-800-NOVATEL in North America or 1-403-295-4900
elsewhere.
9 OEMV Family Application Program Interface (API) User Guide Rev 2
Foreword
Foreword
Scope
This document contains sufficient information on working with the Application Program Interface
(API) to be able to develop applications for NovAtel’s OEMV family of receivers. It does not provide
specific details of the functions offered by the API, but rather information on building and loading
applications. Details of the API functions can be found in the API header file.
Conventions
The conventions used throughout this document are:
< > Text displayed between < and > indicates a variable parameter.
This is a notebox that contains important additional information.
In tables where no values are given, such fields should be assumed to be reserved for future use.
Customer Service
If you have any questions or concerns regarding the OEMV API, please contact NovAtel Customer
Service using any one of the following methods:
NovAtel GPS Hotline: 1-800-NOVATEL (U.S. & Canada)
403-295-4900 (International)
Fax: 403-295-4901
E-mail: [email protected]
Website: www.novatel.com
Write: NovAtel Inc. Customer Service Dept.
1120 - 68 Avenue NE
Calgary, Alberta, Canada
T2E 8S5
OEMV Family Application Program Interface (API) User Guide Rev 2 10
Chapter 1 Introduction
1.1 Overview
The Application Program Interface (API) allows you to develop specialized C/C++ applications to
further extend the functionality of your OEMV family receiver. By using the functions provided by
the API, along with the commands and logs already provided by the OEMV, a wide variety of
applications can be created.
1.2 Features
The OEMV API provides the following features:
• The ability to open physical ports on the receiver to interface with external devices
• Support for three virtual ports, allowing you to directly send commands to and receive
logs from the receiver firmware
• Support for multiple tasks, with varying priority levels
• Message queuing functionality
• Support for semaphores and mutexes
• The ability to control many of the receiver’s general purpose input/output (GPIO) lines
• Access to receiver time
• Controller Area Network (CAN) protocol functionality (for receivers that support it)
• Pulse-width modulation control (for receivers that support it)
• SoftLoad interface, which provides functionality for upgrading the receiver firmware
Refer to the API header file for more information on the features provided by the API.
1.3 Requirements to Build and Run an Application
In addition to the items listed in the API Development Kit ( see Section 1.4), the following is required
to develop and run an application on an OEMV family receiver:
• A NovAtel supported complier. Currently, Green Hills Software C/C++ compilers, and
Rowley Associates CrossWorks for ARM are supported. The Green Hills Software C/C++
compiler is available in the Green Hills Multi 2000 Integrated Development
Environment, for the Intel XScale processor family. CrossWorks for ARM is an integrated
development environment offered by Rowley Associates. For more information about
CrossWorks, please see Appendix B on page 28.
• OEMV family receiver loaded with an API enabled software model (See Section 3.1 on
page 20 for more information about setting up the receiver for loading an application.)
• PC with a serial port and a serial cable to load the application on to the receiver
• OEMV Family Firmware Reference Manual
OEMV Family Application Program Interface (API) User Guide Rev 2 11
1.3.1 Firmware Compatibility
Firmware support for the API has been designed for backwards compatibility. For example, if the
firmware loaded on to the receiver supports version 15 of the API, an application built using version
14 of the API will execute correctly. However, if the application uses a newer version of the API than
the firmware supports, the additional or updated functionality provided by the API may not be
available.
A description of the changes made to the API since the last version can be found at the beginning of
the API header file. To determine what version of the API your firmware supports, log the
APPLICATIONSTATUS message, which is described further in Section 4.2 on page 24.
Compiler compatibility has been tested successfully up to Green Hills Multi V4.2.3 and CrossWorks
for ARM version 1.7. You must run OEMV firmware version 3.100 or higher.
1.4 Materials Provided
As part of the OEMV API Development Kit, the following is provided:
• An OEMV API library file (oem4api.a)
• An OEMV API header file (oem4api.h)
• The CrossWorks initialization library (CrossWorksInit.a)
• The CrossWorks initialization header file (CrossWorksInit.h)
• Sample projects for the Greenhills Multi and CrossWorks compiler environments
• Two Windows command line utility programs, TOSREC and DATABLK, which format
the executable for use with a NovAtel receiver
• NovAtel’s WinLoad utility for loading the application on to the receiver
OEMV Family Application Program Interface (API) User Guide Rev 2 12
Chapter 2 Designing and Building the Application
2.1 Designing the Application
When designing an application for an OEMV family receiver, it is important to have an understanding
of some of the key features of the API, which are explained in the sections below.
Review the sample application provided with the API for more information on how to design
your application to work with the receiver firmware.
2.1.1 Working with the Virtual Ports
When communicating through one of the physical or virtual ports, the application must be designed to
either:
• Read all data sent to the port, or
• Configure the port to not transmit data and disable response generation
This is necessary because any incoming data will remain in a buffer until it is read and will not be
automatically discarded if more data arrives, resulting in a build up of waiting data.
To disable transmission and response generation at the port, use the INTERFACEMODE command
with the NONE mode for the txtype field and OFF for the responses field. Refer to the OEMV Family
Firmware Reference Manual for more information on this command.
2.1.2 Using the GPIOs
Many of the OEMV family receivers provide LV-TTL general-purpose input/output (GPIO) signals
that can be used by your application. The API header file provides more details on the functions
available to control and read these GPIOs. The sections below indicate which GPIOs are provided on
each receiver type and Section A.1 on page 27 gives the electrical specifications for those GPIOs.
2.1.2.1 OEMV-3
There are four GPIO pins available on the OEMV-3:
• GPIO1
• Error
• PV
• GPIO_FR
To use GPIO_USER2, be sure to disable the MK2I input, which shares a pin with GPIO_USER2.
Refer to the MARKCONTROL command in the OEMV Family Firmware Reference Manual for more
information. The electrical specifications for these pins are given in Table 6 on Page 27.
OEMV Family Application Program Interface (API) User Guide Rev 2 13
2.1.2.2 OEMV-2
There are four GPIO pins available on the OEMV-2:
• GPIO0
• TXD2
• Error
• PV
The OEMV Family Installation and Operation User Manual provides the location of these pins and
details of internal pull-up or pull-down resistors. The electrical specifications for this pin are given in
Table 7 on Page 27.
2.1.2.3 OEMV-1 & OEMV-1G
There is one GPIO pin available on the OEMV-1:
• PV
The OEMV Family Installation and Operation User Manual provides the location of this pin and
details of internal pull-up or pull-down resistors. The electrical specifications for this pin are given in
Table 8 on Page 27.
2.1.2.4 FlexPak-V2
There is one GPIO pin available on the FlexPak-V2:
• GPIO
The OEMV Family Installation and Operation User Manual provides the location of this pin and
details of internal pull-up or pull-down resistors. The electrical specifications for this pin are given in
Table 9 on Page 27.
2.1.2.5 FlexPak-V1, FlexPak-V1G, ProPak-V3 and DL-V3
Not available.
2.1.3 Input Parameters
There are two methods that can be used to pass parameters to an application, as discussed in the
following sections.
2.1.3.1 Command-Line Entry
The application can be designed to accept a single unsigned, 32-bit parameter, which is then entered
as part of the command string for starting the application. This parameter could be used, for example,
to set the output serial port used by the application.
For more information about entering a parameter when starting the application, see Section 3.3.1 on
page 22.
14 OEMV Family Application Program Interface (API) User Guide Rev 2
See Section 2.1.4 for a note about the use of command-line entry input parameters with auto-start
applications.
2.1.3.2 DATABLK Entry
Alternately, the <SNKey> field, set when the DATABLK utility is run on the executable, can be used
to store an input parameter, which would then be read from the VERSION log by the application.
For more information about the <SNKey> field, see Section 2.2.3.1 on page 16. Section 4.3 on page
26 provides more information about where the field is stored in the VERSION log.
2.1.4 Auto-Start Applications
An application loaded on to an OEMV family receiver can be set to automatically start whenever the
receiver is powered up. This option is set using the <ComponentEnum #> field of the DATABLK
utility, which is described in Section 2.2.3 on page 16.
When an application is configured to automatically start, the input parameter is fixed as 0, the
priority is set to 1, and the stack size is 10,000. See Section 3.3 on page 22 for more
information.
2.2 Building the Application
Building the application in a format that can be loaded on to a receiver is a three step process:
1. Build the application using one of the supported compilers.
2. Convert the binary executable to S-records.
3. Add the S-records necessary for loading the application.
Each of these steps is discussed in the sections that follow.
2.2.1 Building the Application Using a Supported Compiler
2.2.1.1 Project Configuration
If you are using the Greenhills compiler, use the build file provided with the sample application as a
template. This build file has the necessary settings for a variety of options, including the application
format and target, which should not be altered. However, the following can be changed to customize
the project, either by directly editing the file or using the interface provided by the compiler.
• The name of the output file
• The files included in the project
To build your code using CrossWorks please see Appendix B on page 28. It provides the necessary
OEMV Family Application Program Interface (API) User Guide Rev 2 15
information for setting up a project, and building a user application.
2.2.1.2 Output Format
When the application is built, the executable is generated in the binary Executable and Linking
Format (ELF). Once the ELF file has been built, the steps that follow are the same for all supported
compilers.
2.2.2 Converting Binary to S-Records
When loading the application on to the receiver, the S-record format, which is described in Section
2.2.2.1, is used. Therefore, once the application has been built, the resulting binary ELF file must be
converted to S-record format. The TOSREC utility is provided to complete this conversion.
2.2.2.1 S-Records
The S-record format is an industry standard for encoding programs or data files in a printable form
that allows for ease of transfer between devices.
An S-record is an ASCII character string consisting of five fields, in the format shown below.
<type><length><address><data...><checksum>
The S-record fields all use hexadecimal format, except for the <type> field. The fields are described
in Table 1 below.
Table 1: S-Record Fields
Field
Length
(Characters)
Description
<type> 2 The type of S-record, as described by Table 2.
<length> 2
The number of character pairs in the record,
excluding the <type> and <length> fields.
<address> 4, 6, or 8
The 2, 3, or 4-byte address at which to load the
contents of the data field in memory.
<data> variable Executable code or memory-loadable data.
<checksum> 2
The least significant byte of the one’s complement
of the sum of the values represented by the length,
the address, and the data fields.
16 OEMV Family Application Program Interface (API) User Guide Rev 2
There are 3 types of S-records used for OEMV applications, as shown in Table 2 below.
Table 2: S-Record Types
Typically, each S-record file consists of one or more header records, followed by one or more data
records, concluded with a single end-of-file record.
2.2.2.2 Using TOSREC
The TOSREC utility is a Windows command line program. To run the application, enter the following
in a command window:
tosrec <infile>
where <infile> is the name of the file to be converted. The name of the S-record file to be
generated can be specified using the following option trigger:
-o <outfile>
where <outfile> is the name of the output file.
Examples of command strings to run the utility are given below.
tosrec input.elf
tosrec input.elf -o output.hex
2.2.3 Adding Information for Loading the Application
The WinLoad utility, which is used to load the application on to the receiver, reads information from
the input file in order to determine how the application should be loaded. This information is included
in a special set of S-records placed at the beginning of the file. Once the application data has been
converted to an S-record format, the DATABLK utility is used to add these necessary records.
2.2.3.1 Using DATABLK
The DATABLK utility is a Windows command line program. To run the application, enter the
following string in a command window.
datablk <In SREC File> <Out SREC File> <Compress> <Block #>
<ComponentEnum #> <Name> <Version> <SNKey> <Compile Date>
<Compile Time>
Type Description
S0
Header record. Used by WinLoad to determine how to load the
application as described in Section 2.2.3.2 on page 18
S3 Data record
S7 End-of-file record
OEMV Family Application Program Interface (API) User Guide Rev 2 17
Each of the parameters are described in the table below.
Table 3: DATABLK Parameters
An example command string to run the utility is given below.
datablk input.hex output.hex raw 2 1 SampleApp 1.00 1234
See Section 4.3 on page 26 for more information about how the values entered for the DATABLK
parameters are used in the receiver logs.
Parameter Valid Values Description
<In SREC File> Any File name of input file.
<Out SREC File> Any File name of output file.
<Compress>
Compress or
Raw
Specifies whether or not the data
will be compressed.
<Block #> 2
The data block in memory in
which the application will be
loaded into.
<ComponentEnum #> 1 or 5
The type of application, where 1
specifies a standard user
application and 5 specifies an
auto-starting user application.
<Name> 14 non-null characters or less
A string indicating the name of
the application
<Version> 14 non-null characters or less
A string indicating the version of
the application.
<SNKey> 14 non-null characters or less
A string indicating the serial
number or key for the
application. Can also be used to
set an application parameter. See
Section 2.1.3.2 on page 14 for
more details.
<Compile Date>
Any valid date in the format
yyyy/mmm/dd, where mmm is
three letters for the month (eg.
JAN)
Optional field to specify the date
the application was compiled. If
no value is provided, the PC’s
current date will be used.
<Compile Time>
Any valid time in the format
hh:mm:ss
Optional field to specify the time
the application was compiled.If
no value is provided, the PC’s
current time will be used.
18 OEMV Family Application Program Interface (API) User Guide Rev 2
2.2.3.2 Records Used By WinLoad
DATABLK adds three header records that are required by the WinLoad utility when loading the
application. The records provide the following information to WinLoad:
• The target platform of the OEMV family receiver (XScale)
• The version of the application
• In which data block to load the application (block 2)
2.2.4 Automating Utility Execution
Both CrossWorks and the Greenhills Multi development environment support execution of specified
programs after compilation. This feature can be used to automate execution of TOSREC and
DATABLK. By doing so, the binary executable will automatically be converted to S-records and the
necessary records for loading will be added. The resultant executable can be loaded directly on to the
receiver without further manipulation. Please see below if you are developing with Greenhills Multi.
CrossWorks users, go to the CrossWorks Appendix on page 28.
To automate this, with the project open in Multi, select File Options... from the Project menu.
OEMV Family Application Program Interface (API) User Guide Rev 2 19
Select the Actions tab from the File Options dialog box.
If in View mode, select the Edit button to enable editing of the options.
In the Commands to process output box, enter the command strings to run the utilties.
Select OK to save the changes.
The next time the application is built, the utilities will automatically be executed as specified.
OEMV Family Application Program Interface (API) User Guide Rev 2 20
Chapter 3 Loading and Controlling the Application
Once the application has been built and converted to S-record format, with the necessary S-records
added, the application can be loaded on to the receiver.
A Windows-based utility named WinLoad has been created to assist with loading the firmware.
3.1 Setting up the Receiver
In order to load and run an application, the receiver must have:
• A model with the API option enabled, and
• Version 3.100 or higher of firmware loaded
The following sections provide information on how to determine if your receiver meets these criteria
and how to update it if it does not.
3.1.1 Determining the Current Model and Firmware Version
To determine the current model and firmware version of the receiver, read the VERSION log. To do
so, send the following command to the receiver.
LOG VERSION
Read the output provided, specifically the 1st and 4th fields after the word GPSCARD. The first field
provides the model and the fourth field indicates the version of firmware loaded on the receiver. In the
example below, the model is “L12LGRVA” and the firmware version field shows “3.200”.
In this example, the model field ends with an “A” and the firmware version field reads “3.200”
therefore, an application can be loaded on to the receiver. If an update to the firmware and/or model is
needed, instructions are provided in Section 3.1.2 and Section 3.1.3.
<VERSION COM1 0 51.5 FINESTEERING 1416 396847.889 00000020 3681 2678
< 3
< GPSCARD "L12LGRVA" "DAB06420097" "OEMV3G-3.02-2T2" "3.200" "3.000" "2007/Feb/20" "11:44:36"
< DB_USERAPPAUTO "DL-V3" "0" "" "1.000A16" "" "2007/Jan/03" "17:39:23"
< USERINFO "LMX9820A" "0623" "" "" "" "" "”
GPSCARD
Field
Firmware Version
Field
Model
Field
OEMV Family Application Program Interface (API) User Guide Rev 2 21
3.1.2 Updating the Firmware
To update the firmware to a version that supports the API, obtain the following from NovAtel
Customer Service.
• The firmware update file, with version 3.100 or higher
• An update authorization code
WinLoad is also required to load the firmware on to the receiver and is included with the API package.
Follow the procedure given in the HowTo.txt file provided with the update file to upgrade the
firmware.
3.1.3 Authorizing a Model with the API Option
To authorize a model with the API option enabled, contact NovAtel Customer Service to obtain the
necessary authorization code and use the AUTH command to add the code to the receiver. Refer to the
OEMV Family Firmware Reference Manual for more information on this command.
3.2 Loading the Application
Once the receiver is set up with the necessary model and firmware version, the application can be
loaded in to non-volatile memory on the receiver using version 1.0.0.0.58 or higher of the WinLoad
utility. This utility is provided as part of the API package or can be obtained from NovAtel Customer
Service.
By reading the S-records added using the DATABLK utility, WinLoad automatically knows where and
how to place the application in memory so it does not interfere with the operation of the main receiver
firmware. Therefore, loading the application can be done using the same method as that used when
loading GPS firmware, with the following exceptions:
• The application HEX file should be selected, rather than a standard firmware HEX file.
• An authorization code is not needed and, therefore, you will not be prompted for one.
For more information on using WinLoad to load the application, follow the procedure given in the
OEMV Family Installation and Operation User Manual, making adjustments for the selection of the
application file, rather than the firmware file, and the absent authorization code prompt.
Only one application can be loaded on to the receiver at any one time. However, functions are
provided to allow for multiple tasks running within the application. Please see the provided
library files for more information.
22 OEMV Family Application Program Interface (API) User Guide Rev 2
3.3 Controlling the Application
The operation of the application can be controlled by using the APPLICATION command as
discussed below.
3.3.1 Starting the Application
Once the application has been loaded on to the receiver, enter the following command string to start
the application.
application start <parameter> <priority> <stack>
The values that can be entered when starting an application are described in the table below.
Table 4: APPLICATION START Parameters
3.3.1.1 Auto-Start Applications
If 5 was entered for the <ComponentEnum #> field when running the DATABLK utility, the
application will be set to auto-start. Therefore, when the receiver is first powered, the application will
begin running.
An alternate method for setting an application to automatically start is by using the SAVECONFIG
command after the application has been started. When this is done, the application will automatically
start whenever the receiver is powered up as long as the saved receiver configuration is present in
memory. However, as soon as the FRESET command is issued, the configuration will be lost and the
application will not automatically start. When an application is configured to auto-start using the
method described in Section 2.1.4 on page 14, it will not be affected by the state of the receiver
configuration.
Parameter Valid Values Description
<parameter>
Any ulong
value
Optional field to specify an input parameter for the
application.
If a value is not specified, the default of 0 is used.
<priority>
Any long
value from
0 to 16
Optional field to specify the priority of the
application in relation to system tasks. See the API
header file for details.
In order to specify the priority, a value must be
entered for the <parameter> field as well.
If a value is not specified, the default of 1 is used.
<stack>
Any long
value from
200 to 20000
Optional field to specify the size of the stack to be
used by the application in bytes.
In order to specify the stack size, a value must be
entered for both the <parameter> and
<priority> fields as well.
If a value is not specified, the default of 10000 is
used.
OEMV Family Application Program Interface (API) User Guide Rev 2 23
3.3.2 Stopping the Application
To stop the application, enter the following command.
application stop
This command can be used to stop either standard or auto-start applications.
3.3.3 Removing the Application
To remove the application from non-volatile memory, enter the following command.
application remove
The application is not recoverable when removed from non-volatile memory, so be sure to use
this command with care.
OEMV Family Application Program Interface (API) User Guide Rev 2 24
Chapter 4 Additional Information
The following sections provide additional information that may be useful when working with OEMV
applications.
4.1 Determining the Version of the Loaded Application
When an application is loaded on to the receiver, the VERSION log provides information about the
application. When an application is loaded, an additional entry is displayed in the VERSION log, with
the type field showing DB_USERAPP for a standard application or DB_USERAPPAUTO for an auto-
start application. All the parameters given in that entry apply to the application loaded on to the
receiver. An example of the log with a DB_USERAPP entry is shown below.
<VERSION COM1 0 51.5 FINESTEERING 1416 396847.889 00000020 3681 2678
< 3
< GPSCARD "L12LGRVA" "DAB06420097" "OEMV3G-3.02-2T2" "3.200" "3.000"
< "2007/Feb/20" "11:44:36"
< DB_USERAPPAUTO "DL-V3" "0" "" "1.000A16"
< "" "2007/Jan/03" "17:39:23"
< USERINFO "LMX9820A" "0623" "" "" "" "" "”
For information on how to capture the VERSION log or the fields it contains, refer to the OEMV
Family Firmware Reference Manual. Section 4.3 on page 26 provides information on how some of the
VERSION log fields are set by the DATABLK utility.
4.2 Logging the Application Status
A log has been created to capture the details of any application loaded on to the receiver. The details
of this log follow. All formats and standard fields, such as the header, are explained further in the
OEMV Family Firmware Reference Manual. Many of the fields are set to values entered for use by the
DATABLK utility, as described in Section 4.3 on page 26.
The time indicated in the log header is the time when the application status was last changed, for
example, the time when the application was started or stopped.
OEMV Family Application Program Interface (API) User Guide Rev 2 25
APPLICATIONSTATUS API Application Status Information
Log Type: Asynch Message ID: 520
Recommended Input:
LOG APPLICATIONSTATUSA
ASCII Example:
#APPLICATIONSTATUSA,COM1,0,72.5,UNKNOWN,0,8.181,00000020,3EFF
,754;14,FALSE,00000000,00000000,"SAMPLEOEMVAPP","1.0","2006/
JAN/31","14:23:54"*77BB5E52
Field Field Type Data Description Format
Binary
Bytes
Binary
Offset
1 header Log header H 0
2 api version
The version of the API that the
currently loaded firmware supports
Ulong 4 H
3 running
Flag indicating whether the application
is currently running, where
0 = FALSE
1 = TRUE
Enum 4 H+4
4 base address
The base address in RAM the
application is running from
Valid only when the application is
running
Ulong 4 H+8
5 size
The number of bytes in RAM the
application is using
Valid only when the application is
running
Ulong 4 H+12
6 name The name of the application Char[16] 16 H+16
7 version The version of the application Char[16] 16 H+32
8 compile date
The date the application was compiled
In the format yyyy/mmm/dd, where
mmm is three letters for the month (eg.
JAN)
Char[12] 12 H+48
9 compile time
The time the application was compiled
In the format hh:mm:ss
Char[12] 12 H+60
10 xxxx 32-bit CRC (ASCII and Binary only) Hex 4 H+72
11 [CR][LF] Sentence terminator (ASCII only)
26 OEMV Family Application Program Interface (API) User Guide Rev 2
4.3 DATABLK Parameters Used in Logs
Many of the fields captured in the APPLICATIONSTATUS log and the DB_USERAPP or
DB_USERAPPAUTO entry of the VERSION log are set to the values entered for parameters used by
the DATABLK utility. The table below provides a list of these parameters and the matching log fields.
For more information about the DATABLK utility, see Section 2.2.3.1 on page 16.
Table 5: DATABLK Parameters Used in Logs
4.4 Determining the Version of WinLoad
To load an application on to the receiver, version 1.0.0.0.58 or higher of WinLoad must be used. To
determine the version of WinLoad you currently have, run the application and select About... from the
Help menu.
The version is shown in the Loader Version field in the About dialog box.
DATABLK
Parameter
Matching Log Field
VERSION
a
a. Only valid for the DB_USERAPP or DB_USERAPPAUTO entry in the log.
APPLICATIONSTATUS
<Name> model name
<SNKey> psn N/A
<Version> sw version version
<Compile Date> comp date compile date
<Compile Time> comp time compile time
27 OEMV Family Application Program Interface (API) User Guide Rev 2
Appendix A Technical Specifications
A.1 GPIO Electrical Specifications
A.1.1 OEMV-3
Table 6: OEMV-3 GPIO Electrical Specifications
A.1.2 OEMV-2
Table 7: OEMV-2 GPIO Electrical Specifications
A.1.3 OEMV-1
Table 8: OEMV-1 GPIO Electrical Specifications
A.1.4 FlexPak-V2
Table 9: FlexPak-V2 GPIO Electrical Specifications
Low High
Voltage Current Voltage Current
Input
0 < V
IL
< 0.8 VDC I
IL
= -0.5 mA 2.4 < V
IH
< 3.6 VDC I
IH
~ 0 mA
Output
V
OL
< 0.4 VDC I
OLMAX
= 0.8 mA V
OH
> 2.4 VDC I
OHMAX
= -0.8 mA
Low High
Voltage Current Voltage Current
Input
0 < V
IL
< 0.8 VDC I
IL
= -0.5 mA 2.4< V
IH
< 3.6 VDC I
IH
~ 0 mA
Output
V
OL
< 0.4 VDC I
OLMAX
= 0.8 mA V
OH
> 2.4 VDC I
OHMAX
= -0.8 mA
Low High
Voltage Current Voltage Current
Input
0 < V
IL
< 0.8 VDC I
IL
= -0.5 mA 2.4 < V
IH
< 3.6VDC I
IH
~ 0 mA
Output
V
OL
< 0.4 VDC I
OLMAX
= 0.8 mA V
OH
> 2.4 VDC I
OHMAX
= -0.8 mA
Low High
Voltage Current Voltage Current
Input
0 < V
IL
< 0.8 VDC I
IL
= -0.5 mA 2.4 < V
IH
< 3.6VDC I
IH
~ 0 mA
Output
V
OL
< 0.4 VDC I
OLMAX
= 0.8 mA V
OH
> 2.4 VDC I
OHMAX
= -0.8 mA
28 OEMV Family Application Program Interface (API) User Guide Rev 2
Appendix B CrossWorks
This appendix contains steps to make a CrossWorks project, create and build a user app, and load the
app on to the GNSS receiver. The user app is a relocatable S-record file that the receiver loads from
flash at runtime. The app communicates with the firmware via the NovAtel API, provided in the
oem4api.a archive file. The user application is loaded onto the receiver using the WinLoad utility.
B.1 CrossWorks Description and Overview
CrossWorks is a development environment distributed by Rowley Associates. It is comprised of an
IDE (Integrated Development Environment) called CrossStudio, the GNU GCC compiler, and the
CrossWorks standard C library.
Although the IDE contains an integrated debugger and flash programming functionality, this is not
used with NovAtel user applications. You will only be making use of the code editing, project system,
and build system functionality that CrossWorks provides.
B.2 Getting and Installing CrossWorks
CrossWorks is available from the Rowley website: http://www.rowley.co.uk. The product can be
evaluated for a 30-day trial period. You will need to download the latest version of CrossWorks for
ARM, and you’ll also need to install the CPU support package for the ARM processor. the CPU
package can be found at http://www.rowleydownload.co.uk/arm/packages. To download The CPU
support package, click on Tools then Package Manager. Select Generic ARM CPU Support
Package. Click Next twice, then Finish. Finally, you will need to buy a license at http://
sites.fastspring.com/rowley/product/crossworksforarm, or you can get a trial license at http://
www.rowley.co.uk/crossworks/Evaluating.htm.
B.3 Using CrossWorks
B.3.1 Create a CrossWorks project
1. Click File then New Project. This brings up the new project wizard.
2. Select XScale Board in the Categories window.
3. Select An executable for a generic XScale processor that supports running from
RAM located at address 0x00000000 in the Project Templates window.
4. Choose the Name for the project and the Location you want to store the project and press
Next.
OEMV Family Application Program Interface (API) User Guide Rev 2 29
The Project Setup menu appears.
5. Set Heap Size to a suitable size (in bytes) to accommodate your program.
The heap size you need depends on how many bytes you allocate using malloc or new. It can
be difficult to predict just how large the heap needs to be, so it is prudent to give yourself a
reasonable amount of “head room”. Running out of room on the heap results in an exception. This
can be hard to trace back to a heap size issue, so it is preferable to make sure you have plenty of
heap space available.
6. Set Stack Size for FIQ Mode, IRQ Mode, and Main Stack Size to 0.
7. Select Yes in Printf Floating Point Supported to be able to use floating point in sprintf
(optional).
30 OEMV Family Application Program Interface (API) User Guide Rev 2
8. Click Next.
9. Clear all entries except sram_placement.xml and Standard_ARM_MemoryMap.xml.
in the next screen.
OEMV Family Application Program Interface (API) User Guide Rev 2 31
10. Clear all entries in the next screen except ARM RAM Release.
11. Click Finish.
B.3.2 Setting Project Options
Next, you need to set the project options so that the program runs correctly as a NovAtel user
application.
1. Right click the Project menu item to set project options
2. Select Properties.
3. Add -fno-threadsafe-statics in the Additional Compiler Options under
Compiler Options.
A pop-up window may appear asking you to confirm that you want to change the public
configuration ARM RAM Release. Choose Yes.
32 OEMV Family Application Program Interface (API) User Guide Rev 2
4. Select XScale for Arm Core Type under Code Generation Options.
5. Do the following under Linker Options:
a. Add --emit-relocs in the Additional Linker Options .
b. Change the Entry Point to the name of the function that starts your
program.
6. Change Use GCC Libraries to No under the Library Options .
7. Click on User Include Directories under Preprocessor Options and add the directory
path for your source files. Crossworks defines the variable $(ProjectDir), which
represents the directory path that your project file is located in. You can use this variable
to define relative addresses. You should add the path to the folder that contain oem4api.h
and CrossWorksInit.h in this field.
8. Click OK.
OEMV Family Application Program Interface (API) User Guide Rev 2 33
B.3.3 Using a Project
Before writing any code you should add the oem4api.a and CrossWorksInit.a archives to your
project (oem4api.a contains all of the API code, and CrossWorksInit.a contains code that initializes
the heap, and calls all of the constructors for global objects in your code). Follow these steps to do
this:
1. Right-click your project in the Project Explorer window then select Add Existing File.
Navigate to the oem4api.a and CrossWorksInit.a library files on your hard drive then
select them.
2. Repeat the procedure for the oem4api.h and CrossWorksInit.h header files.
You should add the folder paths for these header files to the User Include Directories field in the
Preprocessor Options of the project properties or the compiler may not be able to find them.
34 OEMV Family Application Program Interface (API) User Guide Rev 2
B.3.4 Setting up the Heap
Expand the System Files folder then click the sram_placement.xml file. It displays all of the sections
in your output file. The lines starting with ProgramSection contain all the information for the
loadable sections of your executable. Notice that there are entries named load for each line. If you are
going to be using dynamic memory allocation, make sure that the .heap section has load=”Yes”.
If you are not using the heap, then leave the .heap section unloaded. However, if you are
using malloc (C) or new (C++), you need to have the heap loaded and you need to set the
heap size in the project properties.
B.3.5 Programming and Building
You’re now ready to start adding your own files to the project. In your entry point function
you’ll need to add a call to the function CrossWorksInit(). The prototype for the function is
in the CrossWorksInit.h header file. It should be the first piece of code in your main
function.
Here is an example of where to call CrossWorksInit():
//Must extern "C" this to avoid C++ name mangling - the API expects
the non-//mangled name only
extern "C" void MainTask(unsigned long ulParam_ )
{
//Initialize the heap and call constructors for all global objects
CrossWorksInit();

//This is using the heap. CrossWorksInit() must be called before new
can be //used.
MyClass *Obj = new MyObject;
Here, MainTask() is the entry point function for the program. It is the function called when the user
application starts. Notice that CrossWorksInit() is called immediately upon program entry.
CrossWorksInit() must be called before dynamic memory or global objects are used, as this function
initializes the heap and calls the constructors for static objects.
To build the project, all you need to do is right-click your project in the Project Explorer window
OEMV Family Application Program Interface (API) User Guide Rev 2 35
then select Build. Within your project folder CrossWorks creates a folder called ARM RAM Release.
It puts all of the object files and the elf file in this folder.
B.4 Post Build
After you have built your .elf file you need to change it into the proper format to be run on the
receiver. To do this you make use of two utilities: toscrec.exe and datablk.exe. The tosrec.exe utility
changes the elf to a Motorola S-record format .hex file. The datablk.exe utility takes the .hex file and
adds some information that the receiver firmware uses when loading your app from flash.
To make the build process faster, you may want to set up a post-build step in CrossWorks to run these
programs. In the properties for the project under User Build Step Options there is an entry called
Post-Link Command:. You can create a batch file to run the utilities, and then call the batch file as a
Post Build Command. Here is an example batch file for processing an elf file called “cplusplus.elf”:
tosrec.exe -o cplusplus.hex cplusplus.elf
datablk.exe cplusplus.hex dlcplusplus.hex raw 2 1 cplusplus 1.0 1
You will want to update the names of the files in the above batch file example to the names you are
using in your project. Make sure the .elf file name in the first line is name of the elf file that is created
in your project. The names of all the hex files created by these utilities can be whatever you want them
to be.
In the above example, tosrec.exe creates a hex file (cplusplus.hex) from the elf and
datablk.exe alters the hex file (cplusplus.hex) to create a downloadable version
(dlcplusplus.hex).
Once the batch is created you can put the following text in the Post-Link Command entry of the
User Build Step Options: "$(ProjectDir)/$(OutDir)/postBuild.bat".
Make sure you place the batch file in the project directory where your proejct file is located. You
also have to have the utilities in this directory (or put them in one of the paths in your path
environment variable for your system).
36 OEMV Family Application Program Interface (API) User Guide Rev 2
B.5 Common Problems
B.5.1 Undefined reference to “__cxa_pure_virtual”
__cxa_pure_virtual is an error handler inserted by gcc. It’s invoked when a pure virtual function is
called. Since we are not using gcc’s standard libraries, the linker will not find this function. If you are
writing a C++ application with pure virtual functions, you will need to supply your own error handler
function, for example:
extern "C" void __cxa_pure_virtual()
{
while (1);
}
37 OEMV Family Application Program Interface (API) User Guide Rev 2
Index
A
antenna
warranty 8
API
building 14
designing 12
Features 10
loading 15
Project configuration 14
Requirements 10
API Development Kit
Contents 11
Application
Auto-start 22
controlling 21
loading 21
removing 23
starting 21
status 24
stopping 23
Application Program Interface (API)
Description 10
APPLICATIONSTATUS log 24
Automating utility 18
Auto-Start Applications 14
C
cables
warranty 8
Command-Line Entry 13
Compiler compatibility 11
conventions, document 9
Converting binary 15
CrossWorks 10
automating 18
building 34
building the application 14
compatibility 11
Creating a project 28
Description 28
Installing 28
post build 35
setting up the heap 34
support 10
using a project 33
Customer Service 9
Customer service
contact information 9
D
DATABLK 16
DATABLK Entry 14
DATABLK utility 26
F
Firmware
updating 20
version 20
G
GPIO 12
Specs 27
Green Hills Software 10
Greenhills
automating 18
I
Input Parameters 13
R
Receiver
set-up 20
rollover, GPS week 9
S
scope 9
S-Record 15
T
TOSREC 16
V
Version log 24
Virtual ports 12
38 OEMV Family Application Program Interface (API) User Guide Rev 2
Index
W
warranty 8
WinLoad 16
records 18
version 26
OEMV Family Application Program Interface (API) User Guide Rev 2 39
OM-20000116 Rev 2 2009/08/07
Recyclable
Printed in Canada on recycled paper

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close