Make Linux System Discoverable by Remote Bluetooth Devices

by mirza irwan osman in Circuits > Raspberry Pi

15822 Views, 31 Favorites, 0 Comments

Make Linux System Discoverable by Remote Bluetooth Devices

Raspi_Colour_R.png

Introduction

This instructable is based on my experience learning Bluetooth and Linux. Completion of this task is necessary for a Bluetooth Application that transfer photo from Android Device to Raspberry Pi using OBEX Push protocol.

Target Readers

This instructable will mostly benefit Linux users, especially Debian and its derivatives like Raspberry Pi running Raspbian OS.

System Environment

A notebook PC with the following specification:

  • Intel® Core™2 Duo Processor
  • Debian 7.4
  • Bluetooth Radio Built-in

Raspberry Pi with the following specification:

  • Model B
  • Debian 7.6
  • Bluetooth Radio USB Adaptor
  • Mains-Powered USB Hub

Scope

This instructable will show the following:

  • Make the Raspberry Pi and notebook PC discoverable to remote bluetooth devices
  • Test that the Raspberry Pi and notebook PC is discoverable by using a remote bluetooth device

Turn Linux System Into a Bluetooth Device

Complete the steps in "Install Bluetooth Radio Hardware in Linux System" instructable if you have not done so.

Configure Bluetooth Settings of Linux System

On the Linux System

Enable inquiry scan and page scan of RPi's Bluetooth Server

sudo hciconfig hci0 piscan

Check that the inquiry scan and page scan of RPi's Bluetooth Server is enabled

sudo hciconfig -a hci0 | grep -i 'PSCAN *ISCAN'

Output of Terminal Console

UP RUNNING PSCAN ISCAN

The bolded line in the output above indicates that the inquiry scan and page scan is enabled

Test That the Linux System Is Discoverable by Remote Bluetooth Device

2014_10_29_08.39.29.png
2014_10_29_09.00.10.png
Screenshot_2014-10-29-13-55-25.png

An Android Phone running KitKat is used to search for nearby Bluetooth Devices. The Raspberry is expected to appear in the Android Phones's list of available devices

On the Linux System

sudo hciconfig -a hci0 | grep -i Name

Output of terminal console

Name: 'rpipro-0'

On the Android Phone

Go the Android Settings:

Swipe using 2 fingers from top of screen.

Tap on Settings button

Turn on Bluetooth:

Tap ON/OFF button until ON button turns bright blue

Go to Bluetooth Setting:

Tap on the left end of Bluetooth button

Locate Raspberry Pi:

Tap "SEARCH FOR DEVICES" button until the Raspberry Pi's Bluetooth public name is displayed under "AVAILABLE DEVICES"

Status

You have successfully enabled your Linux system (eg. Raspberry Pi) to be discovered by remote Bluetooth device if the Raspberry Pi's Bluetooth public name is displayed under "AVAILABLE DEVICES".