Difference between revisions of "Component: GSM (EB066, Generic AT) (Wireless)"

From Flowcode Help
Jump to navigationJump to search
(XML import)
 
(XML import)
 
(6 intermediate revisions by 3 users not shown)
Line 7: Line 7:
 
|-
 
|-
 
| width="20%" style="color: gray;" | Version
 
| width="20%" style="color: gray;" | Version
| 1.2
+
| 2.0 (Release)
 
|-
 
|-
 
| width="20%" style="color: gray;" | Category
 
| width="20%" style="color: gray;" | Category
Line 15: Line 15:
  
  
==[[Media:Component Icon 0d02ccfd_4cda_42b8_91d8_5392f491f9af.png|Image]] GSM (EB066, Generic AT) component==
+
==[[File:Component Icon 0d02ccfd_4cda_42b8_91d8_5392f491f9af.png|Image]] GSM (EB066, Generic AT) component==
 
Low level routines for controlling a standard AT GSM / GPRS interface
 
Low level routines for controlling a standard AT GSM / GPRS interface
 
Also available in the form of the EB066 GSM E-block.
 
Also available in the form of the EB066 GSM E-block.
  
 
==Examples==
 
==Examples==
''<span style="color:red;">No additional examples</span>''
+
{{Fcfile|GSM_Test.fcfx|GSM Example}}
 +
Example should show the following on the display on the panel and on the hardware.
  
 +
[[File:GSMPan.jpg]]
 +
 +
 +
The AT injector component allows us to simulate the response of the GSM module.
 +
 +
[[File:GSMInject.jpg]]
  
 
==Downloadable macro reference==
 
==Downloadable macro reference==
Line 42: Line 49:
  
 
===<span style="font-weight: normal;"><u><tt>GetTextString</tt></u></span>===
 
===<span style="font-weight: normal;"><u><tt>GetTextString</tt></u></span>===
''<span style="color:red;">No additional information</span>''
+
Collects the text message data from an incoming text message.
 +
 
 +
'''Parameters'''
 +
 
 +
:[[Variable Types|BYTE]] ''NumBytes''
 +
 
 +
 
 +
'''Return value'''
 +
 
 +
:[[Variable Types|STRING]]
  
  
 +
===<span style="font-weight: normal;"><u><tt>SendString</tt></u></span>===
 +
Sends a string to the GSM module.
  
 
'''Parameters'''
 
'''Parameters'''
  
:[[Variable Types|BYTE]] ''NumBytes''
+
:[[Variable Types|<- STRING]] ''Text''
 +
::''This parameter may be returned back to the caller''
  
  
 
'''Return value'''
 
'''Return value'''
  
:[[Variable Types|STRING]]
+
:''This call does not return a value''
  
  
Line 105: Line 124:
  
 
===<span style="font-weight: normal;"><u><tt>GetTextNumber</tt></u></span>===
 
===<span style="font-weight: normal;"><u><tt>GetTextNumber</tt></u></span>===
''<span style="color:red;">No additional information</span>''
+
Collects the sender's phone number from an incoming text message.
 
 
 
 
  
 
'''Parameters'''
 
'''Parameters'''
Line 167: Line 184:
  
 
===<span style="font-weight: normal;"><u><tt>StringReceive</tt></u></span>===
 
===<span style="font-weight: normal;"><u><tt>StringReceive</tt></u></span>===
''<span style="color:red;">No additional information</span>''
+
Attempts to receive a string from the GSM modem.
 +
 
 +
'''Parameters'''
 +
 
 +
:''This macro has no parameters''
 +
 
 +
 
 +
'''Return value'''
 +
 
 +
:[[Variable Types|BYTE]]
 +
 
  
 +
===<span style="font-weight: normal;"><u><tt>DeleteAllMessages</tt></u></span>===
 +
Removes all pending text messages from the GSM module.
  
 +
Returns 0 for success and 255 for fail.
  
 
'''Parameters'''
 
'''Parameters'''
Line 237: Line 267:
 
This property is of type ''True or false'' and can be referenced with the variable name ''expect_echo''.
 
This property is of type ''True or false'' and can be referenced with the variable name ''expect_echo''.
  
''<span style="color:red;">No additional information</span>''
+
Sets if we expect an echo of any data we send out to the GSM modem.
 
 
  
 +
Most AT type modems (e.g. GSM modules) will automatically echo back incoming data.
  
 
<span style="font-weight: normal;"><u>String Array Size</u></span>
 
<span style="font-weight: normal;"><u>String Array Size</u></span>
Line 253: Line 283:
 
Amount of RAM memory to dedicate to storing the last SMS message received by the GSM.
 
Amount of RAM memory to dedicate to storing the last SMS message received by the GSM.
  
<span style="font-weight: normal;"><u>Baud Rate</u></span>
+
<span style="font-weight: normal;"><u>Script Count</u></span>
 +
 
 +
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''script_count''.
 +
 
 +
Maximum number of scripts to store in the device's ROM
 +
 
 +
<span style="font-weight: normal;"><u>Script1</u></span>
 +
 
 +
This property is of type ''Multiple lines of text'' and can be referenced with the variable name ''script1''.
 +
 
 +
ASCII based AT command data stored in ROM and used when sending script 1
 +
 
 +
<span style="font-weight: normal;"><u>Channel</u></span>
 +
 
 +
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_uart::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.
  
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''baud''.
+
<span style="font-weight: normal;"><u>TX</u></span>
  
''<span style="color:red;">No additional information</span>''
+
This property is of type ''Single digital pin'' and can be referenced with the variable name ''cal_uart::TX''.
  
 +
Pin to be used for Transmit data
  
 +
<span style="font-weight: normal;"><u>RX</u></span>
  
<span style="font-weight: normal;"><u>Flow Control</u></span>
+
This property is of type ''Single digital pin'' and can be referenced with the variable name ''cal_uart::RX''.
  
This property is of type ''True or false'' and can be referenced with the variable name ''flow_control''.
+
Pin to be used for Receive data
  
''<span style="color:red;">No additional information</span>''
+
<span style="font-weight: normal;"><u>Use Flow Control</u></span>
  
 +
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_uart::FLOWEN''.
  
 +
Flow Control (Handshake) enable or disable.
  
<span style="font-weight: normal;"><u>Script Count</u></span>
+
    On: Two I/O pins are used to control the flow of data in and out of the device.
  
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''script_count''.
+
    Off: Flow control is disabled.
  
''<span style="color:red;">No additional information</span>''
+
<span style="font-weight: normal;"><u>Baud Options</u></span>
  
 +
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_uart::BAUD_LIST''.
  
 +
Baud rate option selector
  
<span style="font-weight: normal;"><u>Script1</u></span>
+
<span style="font-weight: normal;"><u>Baud Rate</u></span>
  
This property is of type ''Multiple lines of text'' and can be referenced with the variable name ''script1''.
+
This property is of type ''Signed integer'' and can be referenced with the variable name ''cal_uart::BAUD''.
  
 
''<span style="color:red;">No additional information</span>''
 
''<span style="color:red;">No additional information</span>''
Line 285: Line 341:
  
  
<span style="font-weight: normal;"><u>Channel</u></span>
+
<span style="font-weight: normal;"><u>Label</u></span>
 +
 
 +
This property is of type ''Line of text'' and can be referenced with the variable name ''label''.
 +
 
 +
Textual label shown on the component I/O flasher
  
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''channel''.
+
<span style="font-weight: normal;"><u>Scope Traces</u></span>
  
''<span style="color:red;">No additional information</span>''
+
This property is of type ''True or false'' and can be referenced with the variable name ''cal_uart::ScopeTraces''.
  
 +
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.
  
<span style="font-weight: normal;"><u>TX Pin</u></span>
+
    ICT - sets up the scope trace for incoming data and adds UART packet decoding at the correct BAUD.
  
This property is of type ''Single digital pin'' and can be referenced with the variable name ''tx_pin''.
+
<span style="font-weight: normal;"><u>Console Data</u></span>
  
''<span style="color:red;">No additional information</span>''
+
This property is of type ''True or false'' and can be referenced with the variable name ''cal_uart::ConsoleData''.
  
 +
Selects if the console data is automatically generated or not
  
 +
<span style="font-weight: normal;"><u>Console Columns</u></span>
  
<span style="font-weight: normal;"><u>RX Pin</u></span>
+
This property is of type ''Unsigned integer'' and can be referenced with the variable name ''cal_uart::ConsoleColumns''.
  
This property is of type ''Single digital pin'' and can be referenced with the variable name ''rx_pin''.
+
Number of characters that can be displayed on a single line of the console.
  
''<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 ''cal_uart::DataSource''.
  
 +
Simulation data source used to allow the component to connect to various remote devices
  
<span style="font-weight: normal;"><u>Label</u></span>
+
    Nothing - Simulation data is ignored
  
This property is of type ''Line of text'' and can be referenced with the variable name ''label''.
+
    COM port - Routes the communication data to and from a physical or virtual COM port
  
''<span style="color:red;">No additional information</span>''
+
    Injector - Routes the communication data via a data injector component on the Panel.

Latest revision as of 10:28, 9 May 2018


Author Matrix Ltd.
Version 2.0 (Release)
Category Wireless


Image GSM (EB066, Generic AT) component

Low level routines for controlling a standard AT GSM / GPRS interface Also available in the form of the EB066 GSM E-block.

Examples

FC6 Icon.png GSM Example Example should show the following on the display on the panel and on the hardware.

GSMPan.jpg


The AT injector component allows us to simulate the response of the GSM module.

GSMInject.jpg

Downloadable macro reference

DialNumber

Performs a standard voice call by dialling the number specified.

Returns 0 for call in progress and 255 for no response.

Parameters

<- STRING Number
This parameter may be returned back to the caller


Return value

BYTE


GetTextString

Collects the text message data from an incoming text message.

Parameters

BYTE NumBytes


Return value

STRING


SendString

Sends a string to the GSM module.

Parameters

<- STRING Text
This parameter may be returned back to the caller


Return value

This call does not return a value


SendScript

Send an AT command script.

Returns 0 for fail, 1 for success and 255 for unrecognised script idx.

Parameters

BYTE idx


Return value

BYTE


AnswerIncomingCall

Answers the phone for an incoming type call.

Returns 0 for success and 255 for failure.

Parameters

This macro has no parameters


Return value

BYTE


SendCommand

Sends a command string to the GSM module.

0 = Command sent ok, 255 = No Reply

Parameters

<- STRING Command
This parameter may be returned back to the caller
BYTE SendCR


Return value

BYTE


GetTextNumber

Collects the sender's phone number from an incoming text message.

Parameters

BYTE NumBytes


Return value

STRING


HangUpCall

Ends a voice based call.

Returns 0 for success and 255 for failure.

Parameters

This macro has no parameters


Return value

BYTE


ReadString

Copies the data from the data string array to a local string variable

Parameters

BYTE NumBytes


Return value

STRING


SendTextMessage

Sends the text message data specified to the number specified using the SMS protocol.

Returns 0 for success and 255 for failure.

Parameters

<- STRING Number
This parameter may be returned back to the caller
<- STRING Message
This parameter may be returned back to the caller


Return value

BYTE


StringReceive

Attempts to receive a string from the GSM modem.

Parameters

This macro has no parameters


Return value

BYTE


DeleteAllMessages

Removes all pending text messages from the GSM module.

Returns 0 for success and 255 for fail.

Parameters

This macro has no parameters


Return value

BYTE


CheckNetworkStatus

Returns the state of the GSM network.

0 = Not connected, 1 = connected, 255 = no reply from GSM.

Parameters

This macro has no parameters


Return value

BYTE


CheckForIncoming

Checks to see if any incoming phone call or SMS message.

0 = Nothing, 1 = Text Received, 2 = Phone Ringing

Parameters

This macro has no parameters


Return value

BYTE


Initialise

Sets up the GSM module.

Returns 0 for OK, 255 for no reply and 254 for command fail.

Parameters

This macro has no parameters


Return value

BYTE


Simulation macro reference

This component does not contain any simulation macros


Property reference

Expect Echo

This property is of type True or false and can be referenced with the variable name expect_echo.

Sets if we expect an echo of any data we send out to the GSM modem.

Most AT type modems (e.g. GSM modules) will automatically echo back incoming data.

String Array Size

This property is of type Signed integer and can be referenced with the variable name string_size.

Amount of RAM memory to dedicate to receiving responces from the GSM

Message Array Size

This property is of type Signed integer and can be referenced with the variable name message_size.

Amount of RAM memory to dedicate to storing the last SMS message received by the GSM.

Script Count

This property is of type Fixed list of ints and can be referenced with the variable name script_count.

Maximum number of scripts to store in the device's ROM

Script1

This property is of type Multiple lines of text and can be referenced with the variable name script1.

ASCII based AT command data stored in ROM and used when sending script 1

Channel

This property is of type Fixed list of ints and can be referenced with the variable name cal_uart::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.

TX

This property is of type Single digital pin and can be referenced with the variable name cal_uart::TX.

Pin to be used for Transmit data

RX

This property is of type Single digital pin and can be referenced with the variable name cal_uart::RX.

Pin to be used for Receive data

Use Flow Control

This property is of type Fixed list of ints and can be referenced with the variable name cal_uart::FLOWEN.

Flow Control (Handshake) enable or disable.

   On: Two I/O pins are used to control the flow of data in and out of the device.
   Off: Flow control is disabled.

Baud Options

This property is of type Fixed list of ints and can be referenced with the variable name cal_uart::BAUD_LIST.

Baud rate option selector

Baud Rate

This property is of type Signed integer and can be referenced with the variable name cal_uart::BAUD.

No additional information


Label

This property is of type Line of text and can be referenced with the variable name label.

Textual label shown on the component I/O flasher

Scope Traces

This property is of type True or false and can be referenced with the variable name cal_uart::ScopeTraces.

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

This property is of type True or false and can be referenced with the variable name cal_uart::ConsoleData.

Selects if the console data is automatically generated or not

Console Columns

This property is of type Unsigned integer and can be referenced with the variable name cal_uart::ConsoleColumns.

Number of characters that can be displayed on a single line of the console.

Data Source

This property is of type Fixed list of ints and can be referenced with the variable name cal_uart::DataSource.

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.