Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

BLUETOOTH

BLE (BLUETOOTH LOW ENERGY)

Tharaka Ram E | Intern, Karotimam Innovations | 04-06-2024


INTRODUCTION
Bluetooth is a wireless technology standard for exchanging data over short
distances, using UHF radio waves. It connects devices like smartphones, headphones, and
computers, enabling hands-free calling, audio streaming, and data transfer without
physical cables. There are two subtypes in it one is Classic Bluetooth and another one is
Bluetooth Low Energy (BLE).

CLASSIC BLUETOOTH:

 Supports relatively high data transfer rates, suitable for tasks like audio streaming
and file transfer.
 Consumes more power compared to Bluetooth Low Energy, making it less suitable
for battery-operated devices.
 Typically provides a longer range compared to BLE, enabling communication over
larger distances.
 Commonly used for continuous data transfer tasks such as audio streaming
between devices like smartphones and headphones.

BLE:

 Optimized for minimal energy usage, making it ideal for battery-powered devices
and applications requiring extended battery life.
 Designed for sporadic data transmission, such as sensor data in wearables or IoT
devices, rather than continuous streaming.
 Establishes connections quickly and efficiently, minimizing energy consumption
during the connection process.
 Offers shorter communication distances compared to Classic Bluetooth, but this
limitation is offset by its energy efficiency and suitability for close-range
applications.

OBJECTIVE
The objective of this project is to establish a connection between the module and a
mobile application via Bluetooth Low Energy (BLE), enabling the recording and
visualization of data collected from the sensor.

PAGE 1
LITERATURE SURVEY
ESP32 WROOM32

The ESP32 Wroom-32 is a powerful, low-cost microcontroller module with


integrated Wi-Fi and Bluetooth capabilities. It features dual-core processing, versatile I/O
options, and supports a range of communication protocols, making it ideal for IoT
applications.

Specifications:

https://www.espressif.com/en/news/new-espressif-module-esp32-wrover-b

The Dev Module frequency ranges from 2.4 GHz to 2.5GHz and Bluetooth version 4.2,
supports Bluetooth Low Energy (BLE). It’s operating voltage is between 2.7 to 3.6 V. We
can operate this dev module even in minus temperature which can bear up to -40C and
maximum temperature it can hold is 65C.

PAGE 2
Pinout Diagram:

https://www.electronicshub.org/esp32-pinout/

Important peripherals of ESP32 and their associated pins. ESP32 Microcontroller has

 34 Programmable GPIOs
 18 12-bit ADC Channels
 2 8-bit DAC Channels
 16 PWM Channels
 3 UART Interfaces
 3 SPI Interfaces
 2 I2C Interfaces
 2 I2S Interfaces
 10 Capacitive Touch Sensing GPIOs
 16 RTC GPIOs

METHODOLOGY
Arduino IDE:

The Arduino IDE is an open-source platform for programming Arduino boards,


renowned for its user-friendly interface and robust features. It supports C/C++ and offers
built-in libraries and examples, simplifying hardware-software integration. Tools like a

PAGE 3
text editor with syntax highlighting and a serial monitor for real-time communication
make development and debugging straightforward. Its cross-platform compatibility
ensures that it can be used on Windows, macOS, and Linux, catering to a wide range of
users.

ESP32 with Arduino IDE:

Using the ESP32 Dev Module with the Arduino IDE involves installing the ESP32
board definitions through the IDE's Board Manager. Once installed, users can select the
ESP32 Dev Module from the Tools menu and begin writing sketches as they would for any
other Arduino board. The ESP32's Wi-Fi and Bluetooth capabilities can be leveraged using
specific libraries available within the IDE. Uploading code to the ESP32 is seamless, using
the standard USB connection for programming and debugging.

Kodular APP:

Kodular is a web-based platform that allows users to create Android applications


without any prior programming knowledge. It uses a visual drag-and-drop interface
similar to Scratch or MIT App Inventor, enabling users to design and build apps by
assembling blocks of code. This makes app development more accessible, especially for
beginners and those who are more visually oriented. Kodular offers a variety of built-in
components and extensions for functionalities like user interfaces, connectivity, sensors,
and more. It's popular among educators, hobbyists, and entrepreneurs looking to
prototype and deploy Android apps quickly and efficiently.

PROCEDURE:
Setting up Arduino code to ESP32:

I have developed a code that connects the module to an app through BLE,
indicating the module's connection status and transmitting characteristics to the app.

Here is the code,

PAGE 4
PAGE 5
APP Building in Kodular:

I have designed and built an app in Kodular, utilizing both the designer interface
and the block interface.

Designer Interface

Block Interface

PAGE 6
Result:

Data transfer from Potentiometer:

I have revised the code to establish connectivity with the application, display the
current status, and transmit real-time data, specifically showcasing voltage variations over
time. I am currently enhancing the existing app to receive data from the module and
display it. The data is currently in 8-bit ASCII format, which is not easily understandable
by humans. I am working on converting this ASCII format into characters for better
readability. Furthermore, I plan to integrate functionality to plot a voltage vs. time graph
using the received data within the same app.

PAGE 7

You might also like