注意:

The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.

Difference between revisions of "Bluetooth"

From Funtoo
Jump to navigation Jump to search
Line 54: Line 54:
== Controller Setup ==
== Controller Setup ==


* execute following command:
* execute following command as ordinary user:
<syntaxhighlight lang="bash"> user# bluetoothctl </syntaxhighlight>
<syntaxhighlight lang="bash"> user# bluetoothctl </syntaxhighlight>


Line 63: Line 63:
* List available controllers
* List available controllers
<syntaxhighlight lang="bash"> list </syntaxhighlight>
<syntaxhighlight lang="bash"> list </syntaxhighlight>
* Set "power on" on your controller
<syntaxhighlight lang="bash"> power on </syntaxhighlight>
* Set controller into pairable mode
<syntaxhighlight lang="bash"> pairable on </syntaxhighlight>
* Set controller into discoverable mode
<syntaxhighlight lang="bash"> discoverable on </syntaxhighlight>
* Scan for devices
<syntaxhighlight lang="bash"> scan on </syntaxhighlight>
** this will display DEVICE_MAC_Adrress and name of a device that is in visible mode (and in range of your Bluetooth antena)
* List available devices
<syntaxhighlight lang="bash"> devices </syntaxhighlight>
** display devices that vere "scanned" with "scan on" command
* Trust device
<syntaxhighlight lang="bash"> trust DEVICE_MAC_Address </syntaxhighlight>
* Pair device
<syntaxhighlight lang="bash"> trust DEVICE_MAC_Address </syntaxhighlight>
== Obexfs ==
Now we can use obexfs to connect to our smartphone.

Revision as of 19:45, October 31, 2015

Bluetooth

Bluetooth is a wireless technology standard for exchanging data over short distances. It is using short-wavelength UHF radio waves in the ISM band from 2.4 to 2.485 GHz. It was developed by Ericsson in 1994. Today it is used mostly to connect peripherals and smartphones to your computer.

Kernel configuration

  • Enable these options in your kernel:
[*] Networking support --->
     <M>   Bluetooth subsystem support --->
             [*]    Bluetooth Classic (BR/EDR) features
             <M>   RFCOMM protocol support
             [*]     RFCOMM TTY support
             <M>   BNEP protocol support
             [*]     Multicast filter support
             [*]     Protocol filter support
             <M>   CMTP protocol support
             <M>   HIDP protocol support
             [*]    Bluetooth Low Energy (LE) features
             <M> Bluetooth 6LoWPAN support
             [*]   Export Bluetooth internals in debugfs
                   Bluetooth device drivers --->
                     <M> HCI USB driver
                     <M> HCI UART driver
     <M>   RF switch subsystem support --->

Software

  • Add these use-flags into your package.use:
  • app-mobilephone/obexftp bluetooth
 root# echo "app-mobilephone/obexftp bluetooth" >> /etc/portage/package.use
  • dev-libs/openobex bluetooth
 root# echo "dev-libs/openobex bluetooth" >> /etc/portage/package.use

Additionally you can globally enable bluetooth use flag in your make.conf, but this is not required. Dont forget to run emerge -uDN @world if you enable bluetooth use flag globally. file /etc/portage/make.conf:

 USE="bluetooth"

You need to install these packages:

  • net-wireless/bluez
 root# emerge bluez
  • sys-fs/obexfs
 root# emerge obexfs
  • add your user to plugdev group:
 root# gpasswd -a user plugdev

Bluetooth Service

  • add bluetooth service to default runlevel:
 rc-update add bluetooth default
  • start bluetooth service:
 rc-service bluetooth start

Controller Setup

  • execute following command as ordinary user:
 user# bluetoothctl
  • description of commands inside bluetoothctl:
  • to get help
 help
  • List available controllers
 list
  • Set "power on" on your controller
 power on
  • Set controller into pairable mode
 pairable on
  • Set controller into discoverable mode
 discoverable on
  • Scan for devices
 scan on
    • this will display DEVICE_MAC_Adrress and name of a device that is in visible mode (and in range of your Bluetooth antena)
  • List available devices
 devices
    • display devices that vere "scanned" with "scan on" command
  • Trust device
 trust DEVICE_MAC_Address
  • Pair device
 trust DEVICE_MAC_Address

Obexfs

Now we can use obexfs to connect to our smartphone.