Component: Bluetooth (ESP32 SPP) (Wireless): Difference between revisions
No edit summary |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (6 intermediate revisions by 2 users not shown) | |||
| Line 22: | Line 22: | ||
==Detailed description== | ==Detailed description== | ||
''No detailed description exists yet for this component'' | ''No detailed description exists yet for this component'' | ||
==Examples== | ==Examples== | ||
A simple example file showing how to send and receive data using the ESP32 Bluetooth Serial Port Profile. | A simple example file showing how to send and receive data using the ESP32 Bluetooth Serial Port Profile. | ||
| Line 74: | Line 32: | ||
The SPP legacy bluetooth mode must be enabled in the ESP32 config file to allow SSP to work. For details please see this [https://www.flowcode.co.uk/forums/viewtopic.php?p= | The SPP legacy bluetooth mode must be enabled in the ESP32 config file to allow SSP to work. For details please see this [https://www.flowcode.co.uk/forums/viewtopic.php?p=12324#p12324 forum topic]. | ||
For problems sending strings or missing data bytes, please see this [https://www.flowcode.co.uk/forums/viewtopic.php?p=4466#p4466 forum topic]. | For problems sending strings or missing data bytes, please see this [https://www.flowcode.co.uk/forums/viewtopic.php?p=4466#p4466 forum topic]. | ||
| Line 94: | Line 41: | ||
===CheckConnectionStatus=== | ===CheckConnectionStatus=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''CheckConnectionStatus''' | ||
|- | |- | ||
| colspan="2" | Checks to see if the Bluetooth device is connected. Returns 1 if connected. | | colspan="2" | Checks to see if the Bluetooth device is connected. Returns 1 if connected. | ||
| Line 108: | Line 55: | ||
===Initialise=== | ===Initialise=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Initialise''' | ||
|- | |- | ||
| colspan="2" | Starts up the Bluetooth communications SPP service. | | colspan="2" | Starts up the Bluetooth communications SPP service. | ||
| Line 122: | Line 69: | ||
===ReceiveArray=== | ===ReceiveArray=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReceiveArray''' | ||
|- | |- | ||
| colspan="2" | Attempts to receive an array of bytes from the bluetooth serial port. Returns the number of bytes received. | | colspan="2" | Attempts to receive an array of bytes from the bluetooth serial port. Returns the number of bytes received. | ||
| Line 151: | Line 98: | ||
===ReceiveByte=== | ===ReceiveByte=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReceiveByte''' | ||
|- | |- | ||
| colspan="2" | Attempts to receive a byte from the bluetooth serial port. 0-255 = a valid received value 256 = a timeout has occured | | colspan="2" | Attempts to receive a byte from the bluetooth serial port. 0-255 = a valid received value 256 = a timeout has occured | ||
| Line 170: | Line 117: | ||
===ReceiveCount=== | ===ReceiveCount=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReceiveCount''' | ||
|- | |- | ||
| colspan="2" | Collects the number of bytes currently stored in the receive buffer. | | colspan="2" | Collects the number of bytes currently stored in the receive buffer. | ||
| Line 184: | Line 131: | ||
===ReceiveINTArray=== | ===ReceiveINTArray=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReceiveINTArray''' | ||
|- | |- | ||
| colspan="2" | Receives an array of 16-bit INT/UINT values and returns the number of values received. | | colspan="2" | Receives an array of 16-bit INT/UINT values and returns the number of values received. | ||
| Line 218: | Line 165: | ||
===ReceiveString=== | ===ReceiveString=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReceiveString''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| Line 242: | Line 189: | ||
===SendArray=== | ===SendArray=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SendArray''' | ||
|- | |- | ||
| colspan="2" | Sends a byte to the Bluetooth serial connection | | colspan="2" | Sends a byte to the Bluetooth serial connection | ||
| Line 266: | Line 213: | ||
===SendByte=== | ===SendByte=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SendByte''' | ||
|- | |- | ||
| colspan="2" | Sends a byte to the Bluetooth serial connection | | colspan="2" | Sends a byte to the Bluetooth serial connection | ||
| Line 285: | Line 232: | ||
===SendINTArray=== | ===SendINTArray=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SendINTArray''' | ||
|- | |- | ||
| colspan="2" | Transmits an array of 16-bit INT/UINT values via the Bluetooth peripheral | | colspan="2" | Transmits an array of 16-bit INT/UINT values via the Bluetooth peripheral | ||
| Line 314: | Line 261: | ||
===SendString=== | ===SendString=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SendString''' | ||
|- | |- | ||
| colspan="2" | Sends a string to the Bluetooth serial connection | | colspan="2" | Sends a string to the Bluetooth serial connection | ||
| Line 333: | Line 280: | ||
===SetBTName=== | ===SetBTName=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetBTName''' | ||
|- | |- | ||
| colspan="2" | Overrides the current friendly name | | colspan="2" | Overrides the current friendly name | ||
| Line 352: | Line 299: | ||
===Uninitialise=== | ===Uninitialise=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Uninitialise''' | ||
|- | |- | ||
| colspan="2" | Shots down the Bluetooth communications SPP service. | | colspan="2" | Shots down the Bluetooth communications SPP service. | ||
| Line 367: | Line 314: | ||
==Property reference== | ==Property reference== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
| Line 393: | Line 340: | ||
| colspan="2" | When enabled debug messages will be placed onto UART CH1 which is generally connected to via a Serial to USB IC to pipe messages back to the host PC. | | colspan="2" | When enabled debug messages will be placed onto UART CH1 which is generally connected to via a Serial to USB IC to pipe messages back to the host PC. | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Simulation | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:36, 13 July 2026
| Author | Matrix TSL |
| Version | 1.0 |
| Category | Wireless |
Bluetooth (ESP32 SPP) component
Bluetooth slave component designed to run on a ESP32 providing legacy SPP functionality. BT Legacy functionality must be switched on via the sdkconfig file.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_Bluetooth_ESP32_SPP.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_Bluetooth_ESP32_SPP.fcfx
Detailed description
No detailed description exists yet for this component
Examples
A simple example file showing how to send and receive data using the ESP32 Bluetooth Serial Port Profile.
The SPP legacy bluetooth mode must be enabled in the ESP32 config file to allow SSP to work. For details please see this forum topic.
For problems sending strings or missing data bytes, please see this forum topic.
Macro reference
CheckConnectionStatus
| CheckConnectionStatus | |
| Checks to see if the Bluetooth device is connected. Returns 1 if connected. | |
| Return | |
Initialise
| Initialise | |
| Starts up the Bluetooth communications SPP service. | |
| Return | |
ReceiveArray
ReceiveByte
| ReceiveByte | |
| Attempts to receive a byte from the bluetooth serial port. 0-255 = a valid received value 256 = a timeout has occured | |
| Timeout | |
| Number of ms to wait for incoming data | |
| Return | |
ReceiveCount
| ReceiveCount | |
| Collects the number of bytes currently stored in the receive buffer. | |
| Return | |
ReceiveINTArray
ReceiveString
| ReceiveString | |
| MaxBytes | |
| Max number of bytes to try and read within the time | |
| Timeout | |
| Number of ms to wait for incoming data | |
| Return | |
SendArray
| SendArray | |
| Sends a byte to the Bluetooth serial connection | |
| Data | |
| Data Array to send | |
| NumBytes | |
| Number of bytes to send | |
| Return | |
SendByte
| SendByte | |
| Sends a byte to the Bluetooth serial connection | |
| Data | |
| Return | |
SendINTArray
SendString
| SendString | |
| Sends a string to the Bluetooth serial connection | |
| Data | |
| Data Array to send | |
| Return | |
SetBTName
| SetBTName | |
| Overrides the current friendly name | |
| Name | |
| Name you want to use | |
| Return | |
Uninitialise
| Uninitialise | |
| Shots down the Bluetooth communications SPP service. | |
| Return | |