🚀 Bluetooth Send Receive SoifGo

This tutorial helps you Bluetooth Send Receive

Soifgo has the capability to send and receive serial Bluetooth data in a controlled manner. Therefore, each transmission and reception must include a key or address—either a number or a text string.

There are no limitations on sending; this format is used when transmitting data to the microcontroller. However, receiving must include a key or address so that the corresponding configuration button can be displayed.


In the image below, you can see two examples of data transmission:

Recommended Converter Recommended Converter

There are two types of Bluetooth data reception:

Recommended Converter

Bluetooth Serial Data Format in SoiftGo

When sending serial Bluetooth data to SoiftGo—whether from a microcontroller or any other device—you must use a structured format like:

temp1:128

SoiftGo interprets temp1: as the address of the configured button, and 128 as the value to be displayed.

Display Behavior

Effect-Only Mode

If you want to activate effects without showing the name or value:

  1. Disable the name display in the button settings.
  2. Disable the value display in the value settings.

In this mode, the button can act like a gauge or needle, functioning with its effect while hiding both label and numeric value.

Sensor Data Transmission via Bluetooth in SoifGo

Another method of Bluetooth transmission in SoifGo allows sending smartphone sensor values to a microcontroller. Currently, three types of sensors are supported:

Configuring a Button to Send Sensor Data via Bluetooth

In the next step, go to the Edit mode and add a new button to the interface.

Step-by-Step Setup

  1. Set the button’s behavior to Bluetooth Send.
  2. In the Address field, enter a label such as: pwm1a: (used here to control motor speed).
  3. Click on the Sensor icon and choose the desired input—for example, X-axis motion.
  4. Then click on the Address Label (usually titled “Address Value Name”) and select the same address: pwm1a:.

Live Output Format

Once connected to Bluetooth and in Play Mode, the output will be sent in this format:

pwm1a:513

This means the X-axis motion value has been scaled and offset (as configured earlier) and is now transmitted to the microcontroller under the address pwm1a:

Value Adjustment Logic

To ensure compatibility with microcontrollers that do not support decimals or negative numbers, you can configure a scaling factor and offset:

adjusted_value = (original_value Ă— scale) + offset

For example, to send X-axis motion data:

The result is shown in the middle section of the window under "Calculated Value".

Practical Example: Bluetooth Send & Receive

This file provides a working example of Bluetooth communication. After extracting the ZIP archive:

This ensures that the Bluetooth send/receive example is properly configured and ready to use within your environment.

Download the soifgo file:

📦 Download soifgo_design_Bluetooth.zip

Microcontroller BASCOM & HEX Files

The following file contains both the BASCOM source and the compiled HEX file for the microcontroller. Remember to use the HEX file when programming the device.

With these files, you can either directly program the microcontroller or adapt the source for alternative development environments.

Download the Bascom and hex file:

📦 Download the Bascom and hex file.zip

Microcontroller & Bluetooth Module Schematic

The following file contains the schematic diagram of the microcontroller and the Bluetooth module. This schematic illustrates the wiring and connections required for proper communication between the two components.

With this schematic, you can confidently set up the hardware portion of your project and integrate it with the provided software examples.

Bluetooth Module Variants

The images illustrate two different versions of the Bluetooth module:

Use the appropriate version depending on your microcontroller’s voltage requirements and available power supply.

Proteus Project ZIP File

The provided ZIP archive contains the Proteus simulation project. You can use this file to customize and adapt the schematic or layout according to your specific requirements.

By customizing the Proteus project, you can experiment with different configurations and ensure compatibility with your design goals.

Download the Proteuse_Bluetooth file:

📦 Download the Proteuse_Bluetooth file.zip

Practical Video: SoifGo Communication with Microcontroller

The video below demonstrates the real-world operation and interaction between the SoifGo system and the microcontroller. It provides a hands-on example of how data is exchanged and processed in practice.


⬅ Back to Tutorial


⬅ Back to Home