Jump to content

Component: Bluetooth (BL0170) (E-blocks 2): Difference between revisions

From Flowcode Help
SamT (talk | contribs)
No edit summary
Line 1: Line 1:
 
{| style="width:50%"
 
{| 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.0 (Release)
| 1.3
|-
|-
| width="20%" style="color: gray;" | Category
| width="20%" style="color:gray;" | Category
| E-blocks 2
| E-blocks 2
|}
|}




==Bluetooth component==
Low level routines for controlling a Microchip RN4677 Bluetooth Module. Also available in the form of the BL0170 Bluetooth E-block. Uses an interrupt to receive characters from the UART and improve reliability, Must be used with a hardware UART channel.
==Component Source Code==


==[[File:Component Icon 5f9d5a58_6c01_4588_afa0_df4c01ce161a.png|Image]] Bluetooth (BL0170) component==
Please click here for the component source code: [https://www.flowcode.co.uk/wikicopy/componentsource/FC_Comp_Source_EBlocks2_Bluetooth_RN4677_BL0170.fcfx FC_Comp_Source_EBlocks2_Bluetooth_RN4677_BL0170.fcfx]
Low level routines for controlling a Microchip RN4677 Bluetooth Module.
Also available in the form of the BL0170 Bluetooth E-block.
Uses an interrupt to receive characters from the UART and improve reliability, Must be used with a hardware UART channel.


There are component macros in flowcode 8 that allow you to send to and receive information from the Bluetooth component in the form of a string or a single byte. The component needs to be initialised before it can send or receive information, with the ‘Initialise’ macro.
==Detailed description==


Make sure the Bluetooth component is connected to the right port in flowcode, corresponding to the port it’s connected to on your E-blocks 2 upstream board.
''No detailed description exists yet for this component''


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


Line 30: Line 31:
==Downloadable macro reference==
==Downloadable macro reference==


===<span style="font-weight: normal;"><u><tt>ReceiveByte</tt></u></span>===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
Receives a single data byte from the Bluetooth module.
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReceiveByte'''
|-
| colspan="2" | Receives a single data byte from the Bluetooth module. 0-255 signifies valid data / 256 signifies no data available.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Timeout
|-
| colspan="2" | Amount of time to wait in milliseconds 0=Wait forever&nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


0xFF signifies no data available.


'''Parameters'''
{| 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;" | '''SendString'''
|-
| colspan="2" | Sends a string to the Bluetooth module.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Command
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | SendCR
|-
| 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''
|}


:[[Variable Types|UINT]] ''Timeout''
::Amount of time to wait in milliseconds 0=Wait forever


{| 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;" | '''LeaveCommandMode'''
|-
| colspan="2" | Leaves command mode allowing data to be passed back and forth,&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''
|}


'''Return value'''


:[[Variable Types|BYTE]]
{| 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;" | '''ConnectToMAC'''
|-
| colspan="2" | Connects to a specific Bluetooth MAC address. Waits up to 5 seconds for connection to be established. Returns 1 if connection was successful.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | MACAddress
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




===<span style="font-weight: normal;"><u><tt>SendString</tt></u></span>===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
Sends a string to the GSM module.
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendCommand'''
|-
| colspan="2" | Sends a command string to the Bluetooth module. Returns: 0 = No Reply / 1 = Command sent ok&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Command
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | SendCR
|-
| colspan="2" | &nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | DiscardReply
|-
| colspan="2" | 0=Do not touch the reply, 1=Wait for reply and remove from buffer&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|<- STRING]] ''Command''
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
::''This parameter may be returned back to the caller''
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReceiveCount'''
|-
| colspan="2" | Returns the number of bytes currently sat waiting in the receive buffer.&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


:[[Variable Types|BYTE]] ''SendCR''


{| 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;" | '''ReadString'''
|-
| colspan="2" | Copies the incoming data from the data string array to a local string variable. &nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | NumBytes
|-
| colspan="2" | Maximum number of bytes to try and read&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''
|}


'''Return value'''


:''This call does not return a value''
{| 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;" | '''SendByte'''
|-
| colspan="2" | Sends a single data byte out to the Bluetooth module.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Data
|-
| 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''
|}




===<span style="font-weight: normal;"><u><tt>ReadString</tt></u></span>===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
Copies the incoming data from the data string array to a local string variable.
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''EnterCommandMode'''
|-
| colspan="2" | Enters command mode allowing commands to be sent using the SendCommand macro. Returns: 0 = No Reply / 1 = Command Mode OK&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


'''Parameters'''


:[[Variable Types|BYTE]] ''NumBytes''
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
::Maximum number of bytes to try and read
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''WaitForStringValue'''
|-
| colspan="2" | Allows us to wait and check for an incoming value. Returns 1 if the string value is found otherwise returns 0.&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | Value
|-
| colspan="2" | String value to look for&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | Timeout
|-
| colspan="2" | Length of time to wait in milliseconds&nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




'''Return value'''
{| 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;" | '''GetMACAddress'''
|-
| colspan="2" | Gets the local Bluetooth device MAC address.&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''
|}


:[[Variable Types|STRING]]
===<span style="font-weight: normal;"><u><tt>SendByte</tt></u></span>===
Sends a single data byte out to the Bluetooth module.
'''Parameters'''
:[[Variable Types|BYTE]] ''Data''
'''Return value'''
:''This call does not return a value''


{| 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 Bluetooth module including:  - Enabling the UART  - Configuring the module (Name / Key / etc) Returns 1 for OK and 0 for no reply.&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>Initialise</tt></u></span>===
Sets up the Bluetooth module including:


- Enabling the UART
- Configuring the module (Name / Key / etc)
Returns 1 for OK and 0 for no reply.
'''Parameters'''
:''This macro has no parameters''
'''Return value'''
:[[Variable Types|BYTE]]
==Simulation macro reference==
''This component does not contain any simulation macros''




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


This property is of type ''Line of text'' and can be referenced with the variable name ''DeviceName''.
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
Sets the friendly name of the Bluetooth device.
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
<span style="font-weight: normal;"><u>Pair Key</u></span>
|-
 
|-
This property is of type ''Line of text'' and can be referenced with the variable name ''PairKey''.
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Bluetooth Settings
''<span style="color:red;">No additional information</span>''
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
 
| width="90%" | Device Name
<span style="font-weight: normal;"><u>Discoverable</u></span>
|-
 
| colspan="2" | Sets the friendly name of the Bluetooth device.&nbsp;
This property is of type ''True or false'' and can be referenced with the variable name ''InitDisc''.
|-
 
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
Is the Bluetooth module discoverable by default?
| width="90%" | Pair Key
 
|-
<span style="font-weight: normal;"><u>Reply Timeout</u></span>
| colspan="2" | &nbsp;
 
|-
This property is of type ''Unsigned integer'' and can be referenced with the variable name ''ReplyTimeout''.
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Discoverable
Specifies the amount of time to wait for incoming data before timing out in milliseconds.
|-
 
| colspan="2" | Is the Bluetooth module discoverable by default?&nbsp;
Default 2000 = 2 seconds.
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
<span style="font-weight: normal;"><u>RX Buffer Size</u></span>
| width="90%" | Reply Timeout
 
|-
This property is of type ''Signed integer'' and can be referenced with the variable name ''string_size''.
| colspan="2" | Specifies the amount of time to wait for incoming data before timing out in milliseconds. Default 2000 = 2 seconds.&nbsp;
 
|-
Amount of RAM memory to dedicate to receiving responses and incoming data from the BT module.
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | RX Buffer Size
Default 40
|-
 
| colspan="2" | Amount of RAM memory to dedicate to receiving responses and incoming data from the BT module. Default 40&nbsp;
<span style="font-weight: normal;"><u>Channel</u></span>
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_uart::CHANNEL''.
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Connections
 
|-
UART Channel selector
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
Software channels are bit banged using generic I/O pins but are not as reliable as hardware channels.
| width="90%" | Channel
 
|-
Hardware channels use the selected peripheral on-board the target microcontroller.
| 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;
 
|-
<span style="font-weight: normal;"><u>Baud Options</u></span>
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Baud Options
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_uart::BAUD_LIST''.
|-
 
| colspan="2" | Baud rate option selector&nbsp;
Baud rate option selector
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
<span style="font-weight: normal;"><u>Baud Rate</u></span>
| width="90%" | Baud Rate
 
|-
This property is of type ''Signed integer'' and can be referenced with the variable name ''cal_uart::BAUD''.
| colspan="2" | &nbsp;
 
|-
''<span style="color:red;">No additional information</span>''
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | TX
 
|-
 
| colspan="2" | Pin to be used for Transmit data&nbsp;
<span style="font-weight: normal;"><u>TX</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
This property is of type ''Single digital pin'' and can be referenced with the variable name ''cal_uart::TX''.
| width="90%" | TX Remap Pin
 
|-
Pin to be used for Transmit data
| colspan="2" | Allows the hardware transmit pin to be configured from a list of available pins based on your target device,&nbsp;
 
|-
<span style="font-weight: normal;"><u>TX Remap Pin</u></span>
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | RX
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_uart::OutputPins''.
|-
 
| colspan="2" | Pin to be used for Receive data&nbsp;
Allows the hardware transmit pin to be configured from a list of available pins based on your target device,
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
<span style="font-weight: normal;"><u>RX</u></span>
| width="90%" | RX Remap Pin
 
|-
This property is of type ''Single digital pin'' and can be referenced with the variable name ''cal_uart::RX''.
| colspan="2" | Allows the hardware receive pin to be configured from a list of available pins based on your target device,&nbsp;
 
|-
Pin to be used for Receive data
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation
<span style="font-weight: normal;"><u>RX Remap Pin</u></span>
|-
 
|-
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_uart::InputPins''.
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Simulate Comms
Allows the hardware receive pin to be configured from a list of available pins based on your target device,
|-
 
| colspan="2" | &nbsp;
<span style="font-weight: normal;"><u>Use Flow Control</u></span>
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_uart::FLOWEN''.
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation
 
|-
Flow Control (Handshake) enable or disable.
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
    On: Two I/O pins are used to control the flow of data in and out of the device.
| width="90%" | Scope Traces
 
|-
    Off: Flow control is disabled.
| 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>Reset Pin</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 ''Reset''.
|-
 
| colspan="2" | Selects if the console data is automatically generated or not&nbsp;
''<span style="color:red;">No additional information</span>''
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Console Columns
 
|-
<span style="font-weight: normal;"><u>Label</u></span>
| colspan="2" | Number of characters that can be displayed on a single line of the console.&nbsp;
 
|-
This property is of type ''Line of text'' and can be referenced with the variable name ''label''.
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Data Source
Textual label shown on the component I/O flasher
|-
 
| 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;
<span style="font-weight: normal;"><u>Scope Traces</u></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.
 
     ICT - sets up the scope trace for incoming data and adds UART packet decoding at the correct BAUD.
 
<span style="font-weight: normal;"><u>Console Data</u></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>
 
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.
 
<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
 
     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.

Revision as of 14:40, 16 January 2023

Author Matrix Ltd.
Version 1.3
Category E-blocks 2


Bluetooth component

Low level routines for controlling a Microchip RN4677 Bluetooth Module. Also available in the form of the BL0170 Bluetooth E-block. Uses an interrupt to receive characters from the UART and improve reliability, Must be used with a hardware UART channel.

Component Source Code

Please click here for the component source code: FC_Comp_Source_EBlocks2_Bluetooth_RN4677_BL0170.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples


Downloadable macro reference

ReceiveByte
Receives a single data byte from the Bluetooth module. 0-255 signifies valid data / 256 signifies no data available. 
- UINT Timeout
Amount of time to wait in milliseconds 0=Wait forever 
- UINT Return


SendString
Sends a string to the Bluetooth module. 
- STRING Command
 
- BYTE SendCR
 
- VOID Return


LeaveCommandMode
Leaves command mode allowing data to be passed back and forth, 
- VOID Return


ConnectToMAC
Connects to a specific Bluetooth MAC address. Waits up to 5 seconds for connection to be established. Returns 1 if connection was successful. 
- STRING MACAddress
 
- BOOL Return


SendCommand
Sends a command string to the Bluetooth module. Returns: 0 = No Reply / 1 = Command sent ok 
- STRING Command
 
- BYTE SendCR
 
- BYTE DiscardReply
0=Do not touch the reply, 1=Wait for reply and remove from buffer 
- BYTE Return


ReceiveCount
Returns the number of bytes currently sat waiting in the receive buffer. 
- UINT Return


ReadString
Copies the incoming data from the data string array to a local string variable.  
- BYTE NumBytes
Maximum number of bytes to try and read 
- STRING Return


SendByte
Sends a single data byte out to the Bluetooth module. 
- BYTE Data
 
- VOID Return


EnterCommandMode
Enters command mode allowing commands to be sent using the SendCommand macro. Returns: 0 = No Reply / 1 = Command Mode OK 
- BOOL Return


WaitForStringValue
Allows us to wait and check for an incoming value. Returns 1 if the string value is found otherwise returns 0. 
- STRING Value
String value to look for 
- UINT Timeout
Length of time to wait in milliseconds 
- BOOL Return


GetMACAddress
Gets the local Bluetooth device MAC address. 
- STRING Return


Initialise
Sets up the Bluetooth module including: - Enabling the UART - Configuring the module (Name / Key / etc) Returns 1 for OK and 0 for no reply. 
- BYTE Return



Property reference

Properties
Bluetooth Settings
Device Name
Sets the friendly name of the Bluetooth device. 
Pair Key
 
Discoverable
Is the Bluetooth module discoverable by default? 
Reply Timeout
Specifies the amount of time to wait for incoming data before timing out in milliseconds. Default 2000 = 2 seconds. 
RX Buffer Size
Amount of RAM memory to dedicate to receiving responses and incoming data from the BT module. Default 40 
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. 
Baud Options
Baud rate option selector 
Baud Rate
 
TX
Pin to be used for Transmit data 
TX Remap Pin
Allows the hardware transmit pin to be configured from a list of available pins based on your target device, 
RX
Pin to be used for Receive data 
RX Remap Pin
Allows the hardware receive pin to be configured from a list of available pins based on your target device, 
Simulation
Simulate Comms
 
Simulation
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.