Introduction
ap BlueHydra is a Bluetooth device discovery service built on top of the bluez library. In this tutorial we are going to give the steps to install bluehydra on the rasperberry pi using Raspbian GNU/Linux 8 (jessie). If you are using raspbien wheezy, please see the Apendix
Installing ruby with rvm
There are several ways to install ruby, the one I prefer is with rvm. rvm is is a command-line tool which allows you to easily install, manage, and work with multiple ruby environments. Download and install rvm with:
curl -L https://get.rvm.io | bash -s stable --ruby
This will probably raise the error:
gpg: Can't check signature: public key not found
Read the instructions to download the signatures from the error..
Now let’s check that we are using a correct ruby version:
rvm current
In the following steps we are going to use blunder to install ruby gems.
sudo gem install bundler
Now that we have ruby working on the raspberry pi, we are going to install the dependencies.
sudo apt-get install python-bluez python-dbus sqlite3 bluez-tools ruby-dev bluez bluez-test-scripts python-bluez python-dbus libsqlite3-dev ubertooth
BlueHydra Instalation
git clone https://github.com/pwnieexpress/blue_hydra.git
cd blue_hydra
bundle install
Final Result
sudo ./bin/blue_hydra
If everything is right, you should see the bluehydra working.
if you have a python import error on bluezutils, try to download bluezutils.py and copy it to the bin directory of blue hydra:
wget https://raw.githubusercontent.com/pauloborges/bluez/master/test/bluezutils.py
Apendix
Not working in wheezy
When I began writting this tutorial I was using wheezy, but since I got a lot of issues with dbus and errors like:
E, [2016-08-24T00:19:43.606500 #27471] ERROR -- : File "/home/pi/blue_hydra/bin/test-discovery", line 15, in <module>
E, [2016-08-24T00:19:43.606813 #27471] ERROR -- : import bluezutils
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.UnknownMethod: Method "GetManagedObjects" with signature "" on interface "org.freedesktop.DBus.ObjectManager" doesn't exist
To check which version you are using just cat /etc/os-release