Jump to content

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

From Flowcode Help
No edit summary
No edit summary
Line 17: Line 17:
==Component Source Code==
==Component Source Code==


Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_GSM.fcfx FC_Comp_Source_GSM.fcfx]
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_temp/GSM.fcfx FC_Comp_Source_temp/GSM.fcfx]


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


==Detailed description==
==Detailed description==
Line 60: Line 60:


''<span style="color:red;">No additional examples</span>''
''<span style="color:red;">No additional examples</span>''




Line 67: Line 69:
==Macro reference==
==Macro reference==


===DialNumber===
===AnswerIncomingCall===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DialNumber'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''AnswerIncomingCall'''
|-
|-
| colspan="2" | Performs a standard voice call by dialling the number specified. Returns 0 for call in progress and 255 for no response.&nbsp;
| colspan="2" | Answers the phone for an incoming type call. Returns 0 for success and 255 for failure.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Number
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
Line 86: Line 83:




===GetTextString===
===CheckForIncoming===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTextString'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CheckForIncoming'''
|-
|-
| colspan="2" | Collects the text message data from an incoming text message.&nbsp;
| colspan="2" | Checks to see if any incoming phone call or SMS message. 0 = Nothing, 1 = Text Received, 2 = Phone Ringing&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | NumBytes
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




===SendString===
===CheckNetworkStatus===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendString'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CheckNetworkStatus'''
|-
|-
| colspan="2" | Sends a string to the GSM module. &nbsp;
| colspan="2" | Returns the state of the GSM network. 0 = Not connected, 1 = connected, 255 = no reply from GSM.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Text
|-
| colspan="2" | &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''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




===SendScript===
===DeleteAllMessages===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendScript'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DeleteAllMessages'''
|-
| colspan="2" | Send an AT command script. Returns 0 for fail, 1 for success and 255 for unrecognised script idx.&nbsp;
|-
|-
| colspan="2" | Removes all pending text messages from the GSM module. Returns 0 for success and 255 for fail.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | idx
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
Line 143: Line 125:




===SendCommand===
===DialNumber===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendCommand'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DialNumber'''
|-
|-
| colspan="2" | Sends a command string to the GSM module. 0 = Command sent ok, 255 = No Reply&nbsp;
| colspan="2" | Performs a standard voice call by dialling the number specified. Returns 0 for call in progress and 255 for no response.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Command
| width="90%" | Number
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | SendCR
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
Line 167: Line 144:




===AnswerIncomingCall===
===GetTextNumber===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''AnswerIncomingCall'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTextNumber'''
|-
| colspan="2" | Collects the sender's phone number from an incoming text message.&nbsp;
|-
|-
|-
| colspan="2" | Answers the phone for an incoming type call. Returns 0 for success and 255 for failure.&nbsp;
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | NumBytes
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




===GetTextNumber===
===GetTextString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTextNumber'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetTextString'''
|-
|-
| colspan="2" | Collects the sender's phone number from an incoming text message.&nbsp;
| colspan="2" | Collects the text message data from an incoming text message.&nbsp;
|-
|-
|-
|-
Line 207: Line 189:
|-
|-
| colspan="2" | Ends a voice based call. Returns 0 for success and 255 for failure.&nbsp;
| colspan="2" | Ends a voice based call. Returns 0 for success and 255 for failure.&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''
|}
===Initialise===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
|-
| colspan="2" | Sets up the GSM module. Returns 0 for OK, 255 for no reply and 254 for command fail.&nbsp;
|-
|-
|-
|-
Line 233: Line 229:




===SendTextMessage===
===SendCommand===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendTextMessage'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendCommand'''
|-
|-
| colspan="2" | Sends the text message data specified to the number specified using the SMS protocol. Returns 0 for success and 255 for failure.&nbsp;
| colspan="2" | Sends a command string to the GSM module. 0 = Command sent ok, 255 = No Reply&nbsp;
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Number
| width="90%" | Command
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Message
| width="90%" | SendCR
|-
|-
| colspan="2" | &nbsp;
| colspan="2" | &nbsp;
Line 257: Line 253:




===StringReceive===
===SendScript===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''StringReceive'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendScript'''
|-
| colspan="2" | Send an AT command script. Returns 0 for fail, 1 for success and 255 for unrecognised script idx.&nbsp;
|-
|-
|-
| colspan="2" | Attempts to receive a string from the GSM modem.&nbsp;
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | idx
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
Line 271: Line 272:




===DeleteAllMessages===
===SendString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DeleteAllMessages'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendString'''
|-
| colspan="2" | Sends a string to the GSM module. &nbsp;
|-
|-
|-
| colspan="2" | Removes all pending text messages from the GSM module. Returns 0 for success and 255 for fail.&nbsp;
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Text
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| 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''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




===CheckNetworkStatus===
===SendTextMessage===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CheckNetworkStatus'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendTextMessage'''
|-
|-
| colspan="2" | Returns the state of the GSM network. 0 = Not connected, 1 = connected, 255 = no reply from GSM.&nbsp;
| colspan="2" | Sends the text message data specified to the number specified using the SMS protocol. Returns 0 for success and 255 for failure.&nbsp;
|-
|-
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | Number
|}
 
 
===CheckForIncoming===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" | &nbsp;
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''CheckForIncoming'''
|-
|-
| colspan="2" | Checks to see if any incoming phone call or SMS message. 0 = Nothing, 1 = Text Received, 2 = Phone Ringing&nbsp;
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Message
|-
|-
| colspan="2" | &nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
Line 313: Line 315:




===Initialise===
===StringReceive===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''StringReceive'''
|-
|-
| colspan="2" | Sets up the GSM module. Returns 0 for OK, 255 for no reply and 254 for command fail.&nbsp;
| colspan="2" | Attempts to receive a string from the GSM modem.&nbsp;
|-
|-
|-
|-

Revision as of 12:01, 3 February 2023

Author Matrix Ltd.
Version 2.0
Category Wireless


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.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_temp/GSM.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_temp/GSM.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples




Macro reference

AnswerIncomingCall

AnswerIncomingCall
Answers the phone for an incoming type call. Returns 0 for success and 255 for failure. 
- BYTE Return


CheckForIncoming

CheckForIncoming
Checks to see if any incoming phone call or SMS message. 0 = Nothing, 1 = Text Received, 2 = Phone Ringing 
- BYTE Return


CheckNetworkStatus

CheckNetworkStatus
Returns the state of the GSM network. 0 = Not connected, 1 = connected, 255 = no reply from GSM. 
- BYTE Return


DeleteAllMessages

DeleteAllMessages
Removes all pending text messages from the GSM module. Returns 0 for success and 255 for fail. 
- BYTE Return


DialNumber

DialNumber
Performs a standard voice call by dialling the number specified. Returns 0 for call in progress and 255 for no response. 
- STRING Number
 
- BYTE Return


GetTextNumber

GetTextNumber
Collects the sender's phone number from an incoming text message. 
- BYTE NumBytes
 
- STRING Return


GetTextString

GetTextString
Collects the text message data from an incoming text message. 
- BYTE NumBytes
 
- STRING Return


HangUpCall

HangUpCall
Ends a voice based call. Returns 0 for success and 255 for failure. 
- BYTE Return


Initialise

Initialise
Sets up the GSM module. Returns 0 for OK, 255 for no reply and 254 for command fail. 
- BYTE Return


ReadString

ReadString
Copies the data from the data string array to a local string variable 
- BYTE NumBytes
 
- STRING Return


SendCommand

SendCommand
Sends a command string to the GSM module. 0 = Command sent ok, 255 = No Reply 
- STRING Command
 
- BYTE SendCR
 
- BYTE Return


SendScript

SendScript
Send an AT command script. Returns 0 for fail, 1 for success and 255 for unrecognised script idx. 
- BYTE idx
 
- BYTE Return


SendString

SendString
Sends a string to the GSM module.  
- STRING Text
 
- VOID Return


SendTextMessage

SendTextMessage
Sends the text message data specified to the number specified using the SMS protocol. Returns 0 for success and 255 for failure. 
- STRING Number
 
- STRING Message
 
- BYTE Return


StringReceive

StringReceive
Attempts to receive a string from the GSM modem. 
- BYTE Return



Property reference

Properties
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
Amount of RAM memory to dedicate to receiving responces from the GSM 
Message Array Size
Amount of RAM memory to dedicate to storing the last SMS message received by the GSM. 
Script Count
Maximum number of scripts to store in the device's ROM 
Script1
ASCII based AT command data stored in ROM and used when sending script 1 
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. 
TX
Pin to be used for Transmit data 
RX
Pin to be used for Receive data 
Use Flow Control
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
Baud rate option selector 
Baud Rate
 
Simulation
Label
Textual label shown on the component I/O flasher 
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 API - Routes the communication data via a data API component on the Panel.