Extensibility and Integration
  • 🔌Extensibility and Integration
  • 📦Products
    • Active Directory
      • Microsoft Graph
        • Overview
        • Tutorials
        • How to Guides
          • Create App Registration
          • Limit Permissions to a Specific Mailbox
      • OpenID
        • UPN Transformation
    • Cognitive Services
      • Form Recognizer
        • Overview
        • Tutorials
        • How to Guides
          • Set Up Form Recognizer
      • Anomaly Detector
        • Overview
        • Tutorials
        • How to Guides
    • Database
      • MS SQL Server
        • Overview
        • Tutorial
          • Flow on MS SQL - Basics
          • Flow on MS SQL - Extended
        • How to Guides
          • Query SQL in odd ways
    • ERP
      • Infor M3 Cloud
        • Overview
        • Tutorials
        • How to Guides
      • IFS Cloud
        • Overview
        • Tutorials
        • How to Guides
          • Import Application Configuration Packages
          • Add a new projection to the connector
          • Add a new server to the connector
      • IFS App 10
        • Overview
        • Tutorials
        • How to Guides
          • Import Application Configuration Packages
    • Storage
      • Azure Storage Account
        • Overview
        • Tutorials
        • How to Guides
          • Set Up Azure Storage Account
    • Studio
      • Applications
        • Workflow
          • Overview
          • Tutorials
          • How to Guides
            • Create Global Properties
            • Import Workflows
            • Setting Menu Roles
            • Publishing Workflows
            • Bluetooth Low Energy Quick Start Guide
      • Environment
        • Import Flow Properties
      • Connectors
        • Database
          • IFS Apps 10
            • Overview
            • Tutorials
            • How To Guides
              • Configure IFS Apps 10 Connector
        • Email
          • How to Guides
            • Email Example
        • File System
          • How to Guides
            • File System Example
            • Importing data from flat files (or other sources)
              • Scheduled Flows
        • HTML to PDF
          • How to Guides
            • HTML to PDF Example
        • Table Operation
          • How To Guides
            • Table Operations Example
        • REST Connector
          • How To Guides
            • Import a REST Configuration
            • Authenticate
              • OAUTH2
              • Cookie
          • Known Issues
            • HTTP Method: Delete - with body - not supported
            • HTTP Method: POST- Header parameters are not passed if no Body is sent
          • Tutorial
            • REST Basic training using Flow and Postman
        • OPC UA Client
          • How to Guides
            • Configure OPC UA Client Connector
        • OData Connector
        • OData Connector
    • Portal 2
      • Portlet
        • Basic
          • Data Tree
            • Overview
            • Tutorial
            • How to Guides
        • Visual Planning
          • Scheduler
            • Overview
            • Tutorial
              • Configure Scheduler
            • How to Guides
      • How To Guides
        • Start browser and auto login
    • Clients
      • Mobile Clients
        • Preference file
  • 📚Resources
    • Flow Help
    • Flow Forum
Powered by GitBook
On this page
  • Introduction
  • BLE (Bluetooth Low Energy)
  • Peripheral vs Central
  • References

Was this helpful?

  1. Products
  2. Studio
  3. Applications
  4. Workflow
  5. How to Guides

Bluetooth Low Energy Quick Start Guide

Introduction

This document serves as a Quick Start Guide for anyone who wants to setup BLE connectivity in order to utilize this technology with Novacura Flow.

BLE (Bluetooth Low Energy)

BLE or formerly known as Bluetooth Low Energy is a low power wireless communication technology that can be used over a short distance to enable smart devices to communicate. Compared to Classic Bluetooth, BLE is intended to provide considerably reduced power consumption and cost while maintaining similar capabilities. Therefore, BLE is especially well suited for sensors, actuators and other IoT devices that require periodic transfer of data while maintaining extremely low power consumption. There are many use cases of BLE in industrial settings such as Asset Tracking, Internal Navigation, Security, Advertising & etc.

BLE uses a Client/Server or Central/Peripheral model.

  • Central (Client) - A device that initiates request and accepts responses.

    • Examples: computer, smartphone

  • Peripheral (Server) - A device that receives requests and returns responses.

    • Examples: a temperature sensor

Advertising is how devices are found in BLE. Peripherals (Server) advertises its availability for connection by broadcasting packets of data at regular intervals. The Central (Client) scans for nearby peripherals and when it finds a device (Peripheral) it wants to connect to, it initiates a connection. Once connected the Central (Client) can begin exchanging information with the Peripheral (Server).

Peripheral vs Central

To demonstrate the concept of Peripheral/Central model we can use two smart phones. One will act as Server and the other will act as Client.

Peripheral Device (Server)

BLE device that advertises its availability for connection. Usually, it is a sensor or some form of IoT device. For demonstration purpose we will use an Android smartphone to act as Peripheral with the help of a third-party app available in the market.

On your Android device:

  • Open the App and you should see a screen similar to the one below.

  • Click on Battery and you will be asked to turn on Bluetooth if not already done.

  • Now the device is ready to act as a Peripheral. As long as you are on the above screen, the Peripheral device will advertise the Battery Service with battery level. You can set the battery level by editing the numeric value or by dragging the progress bar.

Central Device (Client)

BLE device that connects to the Peripheral. This can be a PC, Tablet, or a smartphone. In Flow context, the device which runs flow (ex - Flow mobile Client) always acts as Central (Client). For demonstration purpose we will use the other smartphone to act as Central (Client) with the help of a third-party app available in the market.

On another Android or iOS device:

  • Open the App and you will be asked to turn on Bluetooth if not already done. You will see a screen with list of Peripheral devices with a CONNECT button right next to it.

  • Select your Peripheral device and click on the CONNECT button. Now the Central (Client) is connected to the Peripheral (Server).

  • Scroll down and select the Battery Service.

  • Click on the SUBSCRIBE button.

  • You can change the data format by simply clicking on the Data format dropdown. For string values, you can use UTF-8 String. If you choose Binary, data will be visible in Binary format.

References

PreviousPublishing WorkflowsNextEnvironment

Last updated 3 years ago

Was this helpful?

Install the App

According to the the battery level is an Integer ranged between 1-100 and transmitted as a single Byte. This piece of information is important since we need set a compatible data format at the receiving end (Central device).

Install the App LightBlue for or .

Now go back to the Peripheral device and click on the NOTIFY button. You should see battery level visible in Hex data format in the Client Device. For example, if the battery level set in Peripheral is 80 the corresponding Hex value is 50. Please refer this for more info on the data formats and conversion.

For dealing with numeric values there are 4 combinations. There is Little-Endian & Big- Endian which corresponds to the Byte order. This is applicable for large number and floating-point values involving multiple Bytes of data. To Read more on the topic, refer to this . The Signed & Unsigned corresponds to positive and negative numbers.

In our Battery Service use case, the battery level is an Integer ranged between 1-100 (always a positive value) and transmitted as a single Byte. Hence no matter what you choose among the Unsigned Little-Endian, Signed Little-Endian, Unsigned Big-Endian or Signed Big-Endian. It will be always the same. For example, if you choose Signed Big-Endian you will see the battery level changed to 80. Refer this for more info.

📦
BLE Peripheral Simulator
BLE Simulator app source code
Android
iOS
conversion table
article
online converter
Bluetooth Low Energy - Wikipedia
Bluetooth Special Interest Group
What is BLE?
Bluetooth low energy Services, a beginner's tutorial
BLE in IoT
A Complete Guide to BLE Beacons
iOS BLE Simulator
Hexadecimal, Decimal and Binary
Understanding Big- and Little-Endian Byte Order
Online Hex Converter
Graphical user interface, text, application

Description automatically generated
Graphical user interface, text, application

Description automatically generated
Waterfall chart

Description automatically generated
Graphical user interface, text, application

Description automatically generated