Jump to content

Component: GPS (EB056, Generic NMEA) (Wireless): Difference between revisions

From Flowcode Help
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(26 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{| width="50%"
{| style="width:50%"
|-
|-
| width="20%" style="color: gray;" | Author
| width="20%" style="color:gray;" | Author
| Matrix Ltd.
| Matrix Ltd.
|-
|-
| width="20%" style="color: gray;" | Version
| width="20%" style="color:gray;" | Version
| 1.3
| 2.1
|-
|-
| width="20%" style="color: gray;" | Category
| width="20%" style="color:gray;" | Category
| Wireless
| Wireless
|}
|}




==GPS (EB056, Generic NMEA) component==
Component designed to process incoming NMEA style GPS data and convert into meaningful values such as longitude, lattitude, ground speed, UTC date and time. Also available in the form of the EB056 GPS E-block.


==[[File:Component Icon 575a3a3f_09b8_46be_8069_c4d1894d7e7e.png|Image]] GPS (EB056, Generic NMEA) component==
==Component Source Code==
Component designed to process incoming NMEA style GPS data and convert into meaningful
values such as longitude, lattitude, ground speed, UTC date and time.
Also available in the form of the EB056 GPS E-block.


==Examples==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_GPS.fcfx FC_Comp_Source_GPS.fcfx]


GPS Example File
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_GPS.fcfx FC_Comp_Source_GPS.fcfx]


{{Fcfile|GPS_test2.fcfx|GPS Example}}
==Detailed description==




Example should show the Lattitude generated by the GPS injector as well as the system time in simulation or UTC time on hardware.


[[File:GPS.jpg]]




Example data provided by the GPS NMEA injector component


[[File:GPSCon.jpg]]


==Downloadable macro reference==


===<span style="font-weight: normal;"><u><tt>ReadGroundSpeed</tt></u></span>===
Returns the current ground speed.


Only returns correct data if Log Ground Speed property is set to yes.


'''Parameters'''


:''This macro has no parameters''




'''Return value'''


:[[Variable Types|FLOAT]]




===<span style="font-weight: normal;"><u><tt>ReadNumberOfSatellites</tt></u></span>===
Returns the current detected number of satellites.


Only returns correct data if Log Satellite Count property is set to yes.


'''Parameters'''


:''This macro has no parameters''




'''Return value'''


:[[Variable Types|BYTE]]


''No detailed description exists yet for this component''


===<span style="font-weight: normal;"><u><tt>ReadDilutionOfPrecision</tt></u></span>===
==Examples==
Returns the current dilution of precision.


Only returns correct data if Log Dilution Of Precision property is set to yes.


'''Parameters'''


:''This macro has no parameters''




'''Return value'''


:[[Variable Types|FLOAT]]




===<span style="font-weight: normal;"><u><tt>CheckBufferOverflow</tt></u></span>===
Returns the state of the buffer - 0 = OK, 1 = BufferTooShort, 2 = ItemNotFound.


Only returns correct data if Log Buffer Overflow Property is set to Yes.


'''Parameters'''


:''This macro has no parameters''




'''Return value'''


:[[Variable Types|BYTE]]




===<span style="font-weight: normal;"><u><tt>ReadLongitude</tt></u></span>===
Returns the current longitude.


Only returns correct data if Log Longitude property is set to yes.


'''Parameters'''


:''This macro has no parameters''




'''Return value'''


:[[Variable Types|FLOAT]]




===<span style="font-weight: normal;"><u><tt>ReadUTCTime</tt></u></span>===
GPS Example File
Returns a segment of the current UTC Time.
{{Fcfile|GPS_test2.fcfx|GPS Example}}
Example should show the Latitude generated by the GPS injector as well as the system time in simulation or UTC time on hardware.


Only returns correct data if Log UTC Time property is set to yes.
[[File:GPS.jpg]]


'''Parameters'''


:[[Variable Types|BYTE]] ''Unit''
Example data provided by the GPS NMEA injector component
::Specifies which segment to read - 'h', 'm', 's'


[[File:GPSCon.jpg]]


'''Return value'''


:[[Variable Types|BYTE]]


GPS tracking application using an Arduino and an SD card reader.
{{Fcfile|GPSTracker.fcfx|GPS Tracker}}


===<span style="font-weight: normal;"><u><tt>IsDataValid</tt></u></span>===
Returns the state of the incoming data - 0 = NotValid, 1 = Valid


255 = No GPS Data Received.


'''Parameters'''


:''This macro has no parameters''




'''Return value'''


:[[Variable Types|BYTE]]




===<span style="font-weight: normal;"><u><tt>ReadHorizontalDilutionOfPrecision</tt></u></span>===
Returns the current horizontal dilution of precision.


Only returns correct data if Log HDOP property is set to yes.


'''Parameters'''
==Macro reference==


:''This macro has no parameters''
===CheckBufferOverflow===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''CheckBufferOverflow'''
|-
| colspan="2" | Returns the state of the buffer - 0 = OK, 1 = BufferTooShort, 2 = ItemNotFound. Only returns correct data if Log Buffer Overflow Property is set to Yes.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




'''Return value'''
===Initialise===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''Initialise'''
|-
| colspan="2" | Initialises the UART used to communicate with the GPS module.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


:[[Variable Types|FLOAT]]


===IsDataValid===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''IsDataValid'''
|-
| colspan="2" | Returns the state of the incoming data - 0 = NotValid, 1 = Valid 255 = No GPS Data Received.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


===<span style="font-weight: normal;"><u><tt>ReadAltitude</tt></u></span>===
Returns the current altitude.


Only returns correct data if Log Altitude property is set to yes.
===ReadAltitude===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadAltitude'''
|-
| colspan="2" | Returns the current altitude. Only returns correct data if Log Altitude property is set to yes.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


'''Parameters'''


:''This macro has no parameters''
===ReadCourseOverGround===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadCourseOverGround'''
|-
| colspan="2" | Returns the current course over ground. Only returns correct data if Log Course Over Ground property is set to yes.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




'''Return value'''
===ReadDilutionOfPrecision===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadDilutionOfPrecision'''
|-
| colspan="2" | Returns the current dilution of precision. Only returns correct data if Log Dilution Of Precision property is set to yes.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


:[[Variable Types|FLOAT]]


===ReadGroundSpeed===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadGroundSpeed'''
|-
| colspan="2" | Returns the current ground speed. Only returns correct data if Log Ground Speed property is set to yes.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


===<span style="font-weight: normal;"><u><tt>ReadCourseOverGround</tt></u></span>===
Returns the current course over ground.


Only returns correct data if Log Course Over Ground property is set to yes.
===ReadHorizontalDilutionOfPrecision===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadHorizontalDilutionOfPrecision'''
|-
| colspan="2" | Returns the current horizontal dilution of precision. Only returns correct data if Log HDOP property is set to yes.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


'''Parameters'''


:''This macro has no parameters''
===ReadLatitude===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadLatitude'''
|-
| colspan="2" | Returns the current latitude. Only returns correct data if Log Latitude property is set to yes.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




'''Return value'''
===ReadLongitude===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadLongitude'''
|-
| colspan="2" | Returns the current longitude. Only returns correct data if Log Longitude property is set to yes.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


:[[Variable Types|FLOAT]]


===ReadNumberOfSatellites===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadNumberOfSatellites'''
|-
| colspan="2" | Returns the current detected number of satellites. Only returns correct data if Log Satellite Count property is set to yes.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


===<span style="font-weight: normal;"><u><tt>ReadUTCDate</tt></u></span>===
Returns a segment of the current UTC Date.


Only returns correct data if Log UTC Date property is set to yes.
===ReadUTCDate===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadUTCDate'''
|-
| colspan="2" | Returns a segment of the current UTC Date. Only returns correct data if Log UTC Date property is set to yes.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Unit
|-
| colspan="2" | Specifies which segment to read - 'd', 'm', 'y'&nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


'''Parameters'''


:[[Variable Types|BYTE]] ''Unit''
===ReadUTCTime===
::Specifies which segment to read - 'd', 'm', 'y'
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadUTCTime'''
|-
| colspan="2" | Returns a segment of the current UTC Time. Only returns correct data if Log UTC Time property is set to yes.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Unit
|-
| colspan="2" | Specifies which segment to read - 'h', 'm', 's'&nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




'''Return value'''
===ReadVerticalDilutionOfPrecision===
 
{| class="mtx-class-macrotable wikitable"
:[[Variable Types|BYTE]]
|-
 
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
 
| width="90%" class="mtx-class-macrohead" | '''ReadVerticalDilutionOfPrecision'''
===<span style="font-weight: normal;"><u><tt>ReadVerticalDilutionOfPrecision</tt></u></span>===
|-
Returns the current vertical dilution of precision.
| colspan="2" | Returns the current vertical dilution of precision. Only returns correct data if Log VDOP property is set to yes.&nbsp;
 
|-
Only returns correct data if Log VDOP property is set to yes.
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-f32-icon.png]] - FLOAT
'''Parameters'''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
:''This macro has no parameters''
 
 
'''Return value'''
 
:[[Variable Types|FLOAT]]
 
 
===<span style="font-weight: normal;"><u><tt>ReadLatitude</tt></u></span>===
Returns the current latitude.
 
Only returns correct data if Log Latitude property is set to yes.
 
'''Parameters'''
 
:''This macro has no parameters''
 
 
'''Return value'''
 
:[[Variable Types|FLOAT]]
 
 
===<span style="font-weight: normal;"><u><tt>Initialise</tt></u></span>===
Initialises the UART used to communicate with the GPS module.
 
'''Parameters'''
 
:''This macro has no parameters''
 
 
'''Return value'''
 
:''This call does not return a value''
 
 
 
==Simulation macro reference==
 
''This component does not contain any simulation macros''




==Property reference==
==Property reference==
<span style="font-weight: normal;"><u>Buffer Size</u></span>


This property is of type ''Unsigned integer'' and can be referenced with the variable name ''buff_size''.
{| class="mtx-class-macrotable wikitable"
 
|-
''<span style="color:red;">No additional information</span>''
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
 
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
 
|-
 
|-
<span style="font-weight: normal;"><u>Log Altitude</u></span>
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Buffer Size
This property is of type ''True or false'' and can be referenced with the variable name ''ALT_EN''.
|-
 
| colspan="2" | The maximum number of bytes of a NMEA message we can store before processing the message.&nbsp;
Adds a variable to store the incoming altitude value
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
Referenced by macro: ReadAltitude
| width="90%" | Log Altitude
 
|-
<span style="font-weight: normal;"><u>Log Buffer Overflow</u></span>
| colspan="2" | Adds a variable to store the incoming altitude value Referenced by macro: ReadAltitude&nbsp;
 
|-
This property is of type ''True or false'' and can be referenced with the variable name ''OVERFLOW_EN''.
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Log Buffer Overflow
Adds a variable to store if the incoming message buffer overflows
|-
 
| colspan="2" | Adds a variable to store if the incoming message buffer overflows Referenced by macro: CheckBufferOverflow&nbsp;
Referenced by macro: CheckBufferOverflow
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
<span style="font-weight: normal;"><u>Log Course Over Ground</u></span>
| width="90%" | Log Course Over Ground
 
|-
This property is of type ''True or false'' and can be referenced with the variable name ''COG_EN''.
| colspan="2" | Adds a variable to store the incoming course over ground value Referenced by macro: ReadCourseOverGround&nbsp;
 
|-
Adds a variable to store the incoming course over ground value
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Log Dilution Of Precision
Referenced by macro: ReadCourseOverGround
|-
 
| colspan="2" | Adds a variable to store the incoming DOP value Referenced by macro: ReadDilutionOfPrecision&nbsp;
<span style="font-weight: normal;"><u>Log Dilution Of Precision</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
This property is of type ''True or false'' and can be referenced with the variable name ''DOP_EN''.
| width="90%" | Log Ground Speed
 
|-
Adds a variable to store the incoming DOP value
| colspan="2" | Adds a variable to store the incoming ground speed value Referenced by macro: ReadGroundSpeed&nbsp;
 
|-
Referenced by macro: ReadDilutionOfPrecision
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Log Horizontal DOP
<span style="font-weight: normal;"><u>Log Ground Speed</u></span>
|-
 
| colspan="2" | Adds a variable to store the incoming HDOP value Referenced by macro: ReadHorizontalDilutionOfPrecision&nbsp;
This property is of type ''True or false'' and can be referenced with the variable name ''SPD_EN''.
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
Adds a variable to store the incoming ground speed value
| width="90%" | Log Latitude
 
|-
Referenced by macro: ReadGroundSpeed
| colspan="2" | Adds a variable to store the incoming latitude value Referenced by macro: ReadLatitude&nbsp;
 
|-
<span style="font-weight: normal;"><u>Log Horizontal DOP</u></span>
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Log Longitude
This property is of type ''True or false'' and can be referenced with the variable name ''HDOP_EN''.
|-
 
| colspan="2" | Adds a variable to store the incoming longitude value Referenced by macro: Read Longitude&nbsp;
Adds a variable to store the incoming HDOP value
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
Referenced by macro: ReadHorizontalDilutionOfPrecision
| width="90%" | Log Satellite Count
 
|-
<span style="font-weight: normal;"><u>Log Latitude</u></span>
| colspan="2" | Adds a variable to store the number of satellites in range Referenced by macro: ReadNumberOfSatellites&nbsp;
 
|-
This property is of type ''True or false'' and can be referenced with the variable name ''LAT_EN''.
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Log UTC Time
Adds a variable to store the incoming latitude value
|-
 
| colspan="2" | Adds a variable to store the incoming UTC Time value Referenced by macro: ReadUTCTime&nbsp;
Referenced by macro: ReadLatitude
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
<span style="font-weight: normal;"><u>Log Longitude</u></span>
| width="90%" | Log UTC Date
 
|-
This property is of type ''True or false'' and can be referenced with the variable name ''LON_EN''.
| colspan="2" | Adds a variable to store the incoming UTC Date value Referenced by macro: ReadUTCDate&nbsp;
 
|-
Adds a variable to store the incoming longitude value
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Log Verticle DOP
Referenced by macro: Read Longitude
|-
 
| colspan="2" | Adds a variable to store the incoming VDOP value Referenced by macro: ReadVerticalDilutionOfPrecision&nbsp;
<span style="font-weight: normal;"><u>Log Satellite Count</u></span>
|-
 
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
This property is of type ''True or false'' and can be referenced with the variable name ''CNT_EN''.
| width="90%" class="mtx-class-propfolder" | Connections
 
|-
Adds a variable to store the number of satellites in range
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
Referenced by macro: ReadNumberOfSatellites
| width="90%" | Channel
 
|-
<span style="font-weight: normal;"><u>Log UTC Time</u></span>
| colspan="2" | UART Channel selector Software channels are bit banged using generic I/O pins but are not as reliable as hardware channels. Hardware channels use the selected peripheral on-board the target microcontroller.&nbsp;
 
|-
This property is of type ''True or false'' and can be referenced with the variable name ''TIME_EN''.
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | RX
Adds a variable to store the incoming UTC Time value
|-
 
| colspan="2" | Pin to be used for Receive data&nbsp;
Referenced by macro: ReadUTCTime
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
<span style="font-weight: normal;"><u>Log UTC Date</u></span>
| width="90%" | Baud Options
 
|-
This property is of type ''True or false'' and can be referenced with the variable name ''DATE_EN''.
| colspan="2" | Baud rate option selector&nbsp;
 
|-
Adds a variable to store the incoming UTC Date value
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Baud Rate
Referenced by macro: ReadUTCDate
|-
 
| colspan="2" | &nbsp;
<span style="font-weight: normal;"><u>Log Verticle DOP</u></span>
|-
 
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
This property is of type ''True or false'' and can be referenced with the variable name ''VDOP_EN''.
| width="90%" class="mtx-class-propfolder" | Simulation
 
|-
Adds a variable to store the incoming VDOP value
|-
 
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
Referenced by macro: ReadVerticalDilutionOfPrecision
| width="90%" | Label
 
|-
<span style="font-weight: normal;"><u>Channel</u></span>
| colspan="2" | Label used to help identify the component on the panel.&nbsp;
 
|-
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''CHANNEL''.
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Show Globe
UART Channel Selection
|-
 
| colspan="2" | Allows a graphical globe to be shown on the panel along with a coordinate marker.&nbsp;
<span style="font-weight: normal;"><u>Baud List</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''BAUD_LIST''.
| width="90%" | Scope Traces
 
|-
UART Baud Setting - Check the datasheet of your GPS module to find the correct setting.
| colspan="2" | Selects if the scope traces are automatically added to the data recorder window or not.    Simulation - draws an approximation of the UART data onto the scope trace.    ICT - sets up the scope trace for incoming data and adds UART packet decoding at the correct BAUD.&nbsp;
 
|-
<span style="font-weight: normal;"><u>TX</u></span>
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Console Data
This property is of type ''Single digital pin'' and can be referenced with the variable name ''TX''.
|-
 
| colspan="2" | Selects if the console data is automatically generated or not&nbsp;
UART Transmit pin
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
<span style="font-weight: normal;"><u>RX</u></span>
| width="90%" | Console Columns
 
|-
This property is of type ''Single digital pin'' and can be referenced with the variable name ''RX''.
| colspan="2" | Number of characters that can be displayed on a single line of the console.&nbsp;
 
|-
UART Receive pin
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Data Source
<span style="font-weight: normal;"><u>Label</u></span>
|-
 
| colspan="2" | Simulation data source used to allow the component to connect to various remote devices    Nothing - Simulation data is ignored    COM port - Routes the communication data to and from a physical or virtual COM port      Injector - Routes the communication data via a data injector component on the Panel.&nbsp;
This property is of type ''Line of text'' and can be referenced with the variable name ''label''.
|}
 
''<span style="color:red;">No additional information</span>''
 
 
 
<span style="font-weight: normal;"><u>Show Globe</u></span>
 
This property is of type ''True or false'' and can be referenced with the variable name ''ShowGlobe''.
 
''<span style="color:red;">No additional information</span>''
 
 
 
<span style="font-weight: normal;"><u>Data Source</u></span>
 
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''DataSource''.
 
''<span style="color:red;">No additional information</span>''
 
 
 
<span style="font-weight: normal;"><u>COM Port</u></span>
 
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''com_port''.
 
''<span style="color:red;">No additional information</span>''

Latest revision as of 14:36, 13 July 2026

Author Matrix Ltd.
Version 2.1
Category Wireless


GPS (EB056, Generic NMEA) component

Component designed to process incoming NMEA style GPS data and convert into meaningful values such as longitude, lattitude, ground speed, UTC date and time. Also available in the form of the EB056 GPS E-block.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_GPS.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_GPS.fcfx

Detailed description

No detailed description exists yet for this component

Examples

GPS Example File GPS Example Example should show the Latitude generated by the GPS injector as well as the system time in simulation or UTC time on hardware.


Example data provided by the GPS NMEA injector component


GPS tracking application using an Arduino and an SD card reader. GPS Tracker






Macro reference

CheckBufferOverflow

CheckBufferOverflow
Returns the state of the buffer - 0 = OK, 1 = BufferTooShort, 2 = ItemNotFound. Only returns correct data if Log Buffer Overflow Property is set to Yes. 
- BYTE Return


Initialise

Initialise
Initialises the UART used to communicate with the GPS module. 
- VOID Return


IsDataValid

IsDataValid
Returns the state of the incoming data - 0 = NotValid, 1 = Valid 255 = No GPS Data Received. 
- BYTE Return


ReadAltitude

ReadAltitude
Returns the current altitude. Only returns correct data if Log Altitude property is set to yes. 
- FLOAT Return


ReadCourseOverGround

ReadCourseOverGround
Returns the current course over ground. Only returns correct data if Log Course Over Ground property is set to yes. 
- FLOAT Return


ReadDilutionOfPrecision

ReadDilutionOfPrecision
Returns the current dilution of precision. Only returns correct data if Log Dilution Of Precision property is set to yes. 
- FLOAT Return


ReadGroundSpeed

ReadGroundSpeed
Returns the current ground speed. Only returns correct data if Log Ground Speed property is set to yes. 
- FLOAT Return


ReadHorizontalDilutionOfPrecision

ReadHorizontalDilutionOfPrecision
Returns the current horizontal dilution of precision. Only returns correct data if Log HDOP property is set to yes. 
- FLOAT Return


ReadLatitude

ReadLatitude
Returns the current latitude. Only returns correct data if Log Latitude property is set to yes. 
- FLOAT Return


ReadLongitude

ReadLongitude
Returns the current longitude. Only returns correct data if Log Longitude property is set to yes. 
- FLOAT Return


ReadNumberOfSatellites

ReadNumberOfSatellites
Returns the current detected number of satellites. Only returns correct data if Log Satellite Count property is set to yes. 
- BYTE Return


ReadUTCDate

ReadUTCDate
Returns a segment of the current UTC Date. Only returns correct data if Log UTC Date property is set to yes. 
- BYTE Unit
Specifies which segment to read - 'd', 'm', 'y' 
- BYTE Return


ReadUTCTime

ReadUTCTime
Returns a segment of the current UTC Time. Only returns correct data if Log UTC Time property is set to yes. 
- BYTE Unit
Specifies which segment to read - 'h', 'm', 's' 
- BYTE Return


ReadVerticalDilutionOfPrecision

ReadVerticalDilutionOfPrecision
Returns the current vertical dilution of precision. Only returns correct data if Log VDOP property is set to yes. 
- FLOAT Return


Property reference

Properties
Buffer Size
The maximum number of bytes of a NMEA message we can store before processing the message. 
Log Altitude
Adds a variable to store the incoming altitude value Referenced by macro: ReadAltitude 
Log Buffer Overflow
Adds a variable to store if the incoming message buffer overflows Referenced by macro: CheckBufferOverflow 
Log Course Over Ground
Adds a variable to store the incoming course over ground value Referenced by macro: ReadCourseOverGround 
Log Dilution Of Precision
Adds a variable to store the incoming DOP value Referenced by macro: ReadDilutionOfPrecision 
Log Ground Speed
Adds a variable to store the incoming ground speed value Referenced by macro: ReadGroundSpeed 
Log Horizontal DOP
Adds a variable to store the incoming HDOP value Referenced by macro: ReadHorizontalDilutionOfPrecision 
Log Latitude
Adds a variable to store the incoming latitude value Referenced by macro: ReadLatitude 
Log Longitude
Adds a variable to store the incoming longitude value Referenced by macro: Read Longitude 
Log Satellite Count
Adds a variable to store the number of satellites in range Referenced by macro: ReadNumberOfSatellites 
Log UTC Time
Adds a variable to store the incoming UTC Time value Referenced by macro: ReadUTCTime 
Log UTC Date
Adds a variable to store the incoming UTC Date value Referenced by macro: ReadUTCDate 
Log Verticle DOP
Adds a variable to store the incoming VDOP value Referenced by macro: ReadVerticalDilutionOfPrecision 
Connections
Channel
UART Channel selector Software channels are bit banged using generic I/O pins but are not as reliable as hardware channels. Hardware channels use the selected peripheral on-board the target microcontroller. 
RX
Pin to be used for Receive data 
Baud Options
Baud rate option selector 
Baud Rate
 
Simulation
Label
Label used to help identify the component on the panel. 
Show Globe
Allows a graphical globe to be shown on the panel along with a coordinate marker. 
Scope Traces
Selects if the scope traces are automatically added to the data recorder window or not. Simulation - draws an approximation of the UART data onto the scope trace. ICT - sets up the scope trace for incoming data and adds UART packet decoding at the correct BAUD. 
Console Data
Selects if the console data is automatically generated or not 
Console Columns
Number of characters that can be displayed on a single line of the console. 
Data Source
Simulation data source used to allow the component to connect to various remote devices Nothing - Simulation data is ignored COM port - Routes the communication data to and from a physical or virtual COM port Injector - Routes the communication data via a data injector component on the Panel.