Quake Global 96XXCS Q4000 / QPRO Satellite Module User Manual 1135 4713G GREEN Users Guide to Q4000 QPRO

Quake Global Inc. Q4000 / QPRO Satellite Module 1135 4713G GREEN Users Guide to Q4000 QPRO

Full Manual part 5

User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 95
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
3. checkSerRxData() is called when serial data are available. It processes the data and
sends a message to the foundation to notify it that these data belong to the application for
processing.
Figure 12-32: DemoAppSERIAL - Processing incoming serial data
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 96
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
4. The data are then sent out over the first available network in the call to NIMM_send().
Figure 12-33: DemoAppSERIAL - Call to NIMM_send()
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 97
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
5. Figure 12-34 (from the Logger port) shows that the message has been successfully
transmitted with the line: Tx[TERR}123456789.
Figure 12-34: DemoAppSERIAL - Logger output of sending serial message
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 98
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
12.4.3 DemoAppREMOTE
This application demonstrates sending remote messages via GSM/GPRS and POP email to the
modem and the proper evaluation and operation of these message events. Message events
include sending an email to the modem, setting a relay, and remotely downloading a file to the
modem. In this example, you must have at least one valid email address for your modem. Note
that this sample application uses network-specific calls.
1. Select the DemoAppREMOTE Workspace from the drop-down list at the top, left-hand corner
of the IAR IDE screen. Open the APL.c file, as shown below:
Figure 12-35: DemoAppREMOTE - Selecting the Workspace
2. Now build, load and execute DemoAppREMOTE. The instructions for building, loading and
executing the code are the same as in Section 12, except that after building the application,
the executable bin file is:
…/DemoAppREMOTE/exe/xxx-DemoAppREMOTE.bin
.
3. After startup, check the Logger output for the line APL DEMO: Remote Control. This
indicates that the correct DemoApp is running.
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 99
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
12.4.3.1 Remotely set a relay (via email)
If the GSM/GPRS network is detected, DemoAppREMOTE checks for an incoming POP email
message. You may send the email from any email program such as Microsoft Outlook.
For an ORBCOMM modem, send an email to your modem with the words RELAY0=1 in
the body of the message. The subject line of the email doesn’t matter. Figure 12-36 is
an example of a Relay email to an ORBCOMM modem.
Figure 12-36: DemoAppREMOTE - Set relay email to ORBCOMM modem
For an Iridium modem, send an email to: data@sbd.iridium.com, with the IMEI number
of your modem in the subject of the message. The IMEI number should be visible on the
white modem label. Include an attachment that contains “RELAY0=1”. See Figure 12-37
for an example of a Relay email to an Iridium modem.
Figure 12-37: DemoAppREMOTE - Set relay email to Iridium modem
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 100
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
Figure 12-38 shows a call to MSG_receiveTerr(), which checks for an incoming POP email on
the GSM/GPRS network after receiving a TIMER_EVENT (that occurs every
REMOTE_CONTROL_DEMO_CHECK_GSM_TIMER_DUR_SECS).
Figure 12-38: DemoAppREMOTE - Checking GSM/GPRSPOP server
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 101
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
If a POP email message is received, it will trigger a MSG_RCVD event. Figure 12-39 shows the
processing of the retrieved message.
First, the event’s parameter is checked to determine if it is an SMS, POP or satellite
incoming message.
When it is recognized as a POP message, ParseCommandMessage() is called to parse
the incoming message into its constituent parts.
Figure 12-39: DemoAppREMOTE - Evaluating incoming message
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 102
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
In Figure 12-40, ParseCommandMessage() does the following:
An occurrence of the relayCmd, “RELAY” is sought.
If it is found, the relay number and value are extracted by the atoi() calls and the relay
number is verified to be less than two.
Using the function, RELAY_writeChannel(), a command is sent to the RELAY module
to set the appropriate relay.
Figure 12-40: DemoAppREMOTE - Parsing command message
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 103
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
Figure 12-41 shows the Logger output at the time the message is received. Note the Logger
output from the application: Set Relay 0 ON (Closed). This indicates that the message was
received, parsed properly and that the relay has been closed.
Figure 12-41: DemoAppREMOTE - Logger output for set relay
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 104
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
For the Iridium network, this file must be created as an attachment and have an
additional blank line below the LocalFile name.
12.4.3.2 Remotely download a file to the modem (via email)
The Q4000/QPRO API includes function calls that allow a user to download a file from a remote
server to the modem’s file system. This allows you to update an application running on the
modem. The DemoAppREMOTE application demonstrates the File Transfer Protocol (FTP)
capability by processing an email to download a file to the modem.
The email sent to the Q4000/QPRO should contain the words “APPLICATION UPDATE” in the
body of the message, as well as FTP download information. The body of the plain text email
should contain information relating to your FTP server, and to the file to be downloaded to the
Q4000/QPRO, as shown in Figure 12-42.
Figure 12-42: DemoAppREMOTE - Remote application update email
The email is processed as in the “set relay” example above. After determining that it is a POP
incoming message, it is parsed by ParseCommandMessage(). The code first checks to see if
“APPLICATION UPDATE” is in the body of the message. If so, it extracts the Server Name,
Username, Password, RemoteFile and LocalFile from the message. Note that the Remote File is
the name of the file on the FTP server and LocalFile is the name the file will be on the modem
itself.
Any file that is named: /tffs0/APL/CUST_APL.bin is executed as the custom application when the
modem boots up, so if this file is replaced, the new custom application is executed after the next
boot sequence.
Note:
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 105
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
Code to extract the relevant information from the email and accomplish the transfer is shown in
Figure 12-43.
Figure 12-43: DemoAppREMOTE - Parse incoming remote application update message
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 106
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
In Figure 12-44, note that in the main application task loop, there a case statement to handle the
APL_FTP_STATE_MSG. This prints a message to the Logger port when the FTP transfer is
complete.
Figure 12-44: DemoAppREMOTE - Event for FTP Load Successful
As the foundation code goes through the process of downloading the file, the various states are
printed out to the Logger. Here are the examples of the states:
FTP_STATE_READY, // Initial state of the state machine
FTP_STATE_INITIALIZE, // Request received state. Starts initialization
FTP_STATE_CONTEXT_ACTIVATED, // State after network context is activated
FTP_STATE_CONNECTION_ACTIVATED, // State after socket connection is activated
FTP_STATE_DOWNLOAD, // State before file is downloaded
FTP_STATE_CONNECTION_CLOSE, // State where connection is closed
FTP_STATE_STOP // State before returning to ready state
After the file is downloaded, the new application must execute a modem reboot. An example of
this call is:
SYS_pwrDownmodem ( s32 duration );
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 107
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
12.4.4 DemoAppCAN
The DemoAppCAN sample application demonstrates how the Q4000/QPRO receives Society of
Automotive Engineers (SAE) J1939 messages on the CAN bus. SAE J1939 is the vehicle bus
standard used for communication and diagnostics among vehicle components, originally by the
car and heavy duty truck industry in the United States. Note that this sample application uses
network-specific calls.
All J1939 packets, except for the request packet, contain eight bytes of data and a standard
header which contains an index called a PGN (Parameter Group Number). A PGN identifies a
message's function and associated data. J1939 attempts to define standard PGNs to encompass
a wide range of automotive, agricultural, marine and off-road vehicle purposes. PGNs define the
data, which are made up of a variable number of Suspect Parameter Number (SPN) elements
defined for unique data.
An instrument cluster PGN may be received where the SPNs in the group are fuel level, oil
pressure, and coolant temperature. Some of the parameters are 8 bits, some are 3 or 4 bits, and
some could be 16 bits. The offsets and size of each parameter within a particular group are
specified, like the PGNs, in the SAE documentation.
For example, SPN 184 of PGN 65266 is the "Engine Instantaneous Fuel Economy.” PGN 65266
may be obtained from the CAN bus and parsed to get SPN 184 (two bytes at byte positions 3-4,
numbering from byte position 1). Based on the SAE documentation, the data may be converted
to the appropriate units (1/512 km/L per bit).
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 108
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
1. To run the CAN/J1939 example, select the DemoAppCAN Workspace from the drop-down
list at the top, left-hand corner of the IAR IDE screen. Open the APL.c file, as shown below:
Figure 12-45: DemoAppCAN - Selecting the Workspace
2. Now build, load and execute DemoAppCAN. The instructions for building, loading and
executing the code are the same as in Section 12, except that after building the application,
the executable bin file is:
…/DemoAppCAN/exe/xxx-DemoAppCAN.bin
.
3. After startup, check the Logger output for the line APL DEMO: CAN/J1939. This indicates
that the correct DemoApp is running.
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 109
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
This application was tested at QUAKE by using two Q4000 modems connected together. Their
CAN inputs and outputs each sent and received data from each other at the same time. They
were configured to use Parameter Group Number (PGN) message 61444. Figure 12-46 shows
the initialization of the J1939 stack.
Figure 12-46: DemoAppCAN - Initialization of J1939
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 110
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
Figure 12-47 shows the POWER_ON event. Note that the:
buffer pointer in the J1939 message structure must be initialized to some allocated
memory of sufficient size to hold the message data
buf_len member in the structure must be initialized as well
CAN timer is set to expire in CAN_INTERVAL_SECS.
Figure 12-47: DemoAppCAN - Allocating CAN message buffer
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 111
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
Figure 12-48 shows the TIMER event, which first checks for the CAN timer number, then sends
the CAN message.
Figure 12-48: DemoAppCAN - Transmit J1939 data
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 112
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
In Figure 12-49, the TIMER event then reads the CAN data for this PGN from the other modem
with the call J1939_getPgnMsg().
Figure 12-49: DemoAppCAN - Receive J1939 data
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 113
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
Figure 12-50 shows the output after the CAN timer has expired, with the printout of the RPMs
from the PGN 61444 message:
Got CAN_MSG: pgn = 61444
EngineRPM = 40920
Figure 12-50: DemoAppCAN - Logger output for engine RPM
User Guide to Q4000/QPRO
Document Number 1135-4713 Rev G
THIS DOCUMENT CONTAINS CONFIDENTIAL AND PROPRIETARY INFORMATION OF QUAKE GLOBAL CORPORATION. IT MAY BE USED BY
RECIPIENT ONLY FOR THE PURPOSE FOR WHICH IT WAS TRANSMITTED AND WILL BE RETURNED UPON REQUEST OR WHEN NO LONGER NEEDED
BY RECIPIENT. DISCLOSURE TO UNAUTHORIZED THIRD PARTIES OR DUPLICATION WITHOUT THE EXPRESS WRITTEN PERMISSION OF QUAKE
GLOBAL IS PROHIBITED.
Page 114
CONFIDENTIAL
Information classified Confidential
-
Do not copy (See last page for obligations)
12.4.5 DemoAppFFS
The FFS example demonstrates use of the Flash File System (FFS). The application gets a GPS
position each time it starts, and creates a trail of the last positions which is stored in the FFS, so
that the trail of positions is retained over power cycles. The FFS functionality demonstrated is
fairly basic. Note that this application is network-specific.
1. Select the DemoAppFFS Workspace from the drop-down list at the top, left-hand corner of
the IAR IDE screen. Open the APL.c file, as shown below:
Figure 12-51: DemoAppFFS - Selecting the Workspace
2. Now build, load and execute DemoAppFFS. The instructions for building, loading and
executing the code are the same as in Section 12, except that after building the application,
the executable bin file is:
…/DemoAppFFS/exe/xxx-DemoAppFFS.bin
.
3. After startup, check the Logger output for the line APL DEMO: FFS. This indicates that the
correct DemoApp is running.

Navigation menu