User Tools

Site Tools


doc:howto:bluetooth.6lowpan

IPv6 over Bluetooth Smart (Low Energy)

Cross-compilation tested on Ubuntu 14.10 with kernel 3.18. Tested routers:

  • ASUS RT-N16
  • x86_64 (Virtual Box)

Prerequisites

  • Bluetooth 4.0 USB dongle
  • trunk (CC 3.18)

Needed Modules

Kernel modules→Other Modules:

  • kmod-6lowpan
  • kmod-bluetooth
  • kmod-bluetooth_6lowpan

Kernel modules→USB support:

  • kmod-usb-core
  • kmod-usb-ohci
  • kmod-usb2

Libraries:

  • bluez-libs

Utilities:

  • bluez-utils

Example of usage

Below procedure shows how to establish a connection with Bluetooth Smart device (with IPv6 stack software) and do a ping. Note that router has to have Bluetooth Smart chip or dongle connected to USB.

Load 6LoWPAN module:

modprobe 6lowpan
modprobe bluetooth_6lowpan
Set PSM channel as 0x23 (35):
echo 35 > /sys/kernel/debug/bluetooth/6lowpan_psm
Look for available HCI devices:
hciconfig
Reset HCI device - e.g. hci0 device:
hciconfig hci0 reset
Read 00:AA:BB:XX:YY:ZZ address of bluetooth device:
hcitool lescan
Connect to the device:
echo "connect 00:AA:BB:XX:YY:ZZ 1" > /sys/kernel/debug/bluetooth/6lowpan_control
Check if connection has been established:
ifconfig
Try to ping device using its link-local address, e.g. on bt0 interface:
ping6 -I bt0 fe80::2AA:BBFF:FEXX:YYZZ

doc/howto/bluetooth.6lowpan.txt · Last modified: 2015/04/25 13:10 by theoradicus