Jump to content

Component: Bluetooth (RN4677) (RN4677) (Wireless): Difference between revisions

From Flowcode Help
m Text replacement - "class="wikitable" style="width:60%; background-color:#FFFFFF;"" to "class="mtx-class-macrotable wikitable""
m Text replacement - "width="10%" align="center" style="background-color:#D8C9D8;" align="center"" to "width="10%" align="center" class="mtx-class-macrohead""
Line 94: Line 94:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ConnectToMAC'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ConnectToMAC'''
|-
|-
Line 113: Line 113:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''EnterCommandMode'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''EnterCommandMode'''
|-
|-
Line 127: Line 127:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetMACAddress'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetMACAddress'''
|-
|-
Line 141: Line 141:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
|-
|-
Line 155: Line 155:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''LeaveCommandMode'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''LeaveCommandMode'''
|-
|-
Line 169: Line 169:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadString'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadString'''
|-
|-
Line 188: Line 188:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReceiveByte'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReceiveByte'''
|-
|-
Line 207: Line 207:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendByte'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendByte'''
|-
|-
Line 226: Line 226:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendCommand'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendCommand'''
|-
|-
Line 255: Line 255:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendString'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendString'''
|-
|-
Line 279: Line 279:
{| class="mtx-class-macrotable wikitable"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''WaitForStringValue'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''WaitForStringValue'''
|-
|-

Revision as of 14:16, 13 July 2026

Author Matrix Ltd.
Version 1.4
Category Wireless


Bluetooth (RN4677) 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 to download the component source project: FC_Comp_Source_Bluetooth_RN4677.fcfx

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

Detailed description

No detailed description exists yet for this component

Examples

No additional examples







Macro reference

ConnectToMAC

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
MAC Address of the Bluetooth Device we wish to connect to 
- BOOL Return


EnterCommandMode

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


GetMACAddress

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


Initialise

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


LeaveCommandMode

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


ReadString

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


ReceiveByte

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


SendByte

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


SendCommand

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


SendString

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


WaitForStringValue

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


Property reference

Properties
Bluetooth Settings
Init Details
Allows the Bluetooth device name and key to be automatically assigned on initialise. 
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, 
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. 
Reset Pin
 
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.