First, a little bit of historyFirst, a little bit of history
It Seems that was yesterday when a year ago in the Gran Canaria Desktop Summit, Victor sent a file to me through Bluetooth and kdebluetooth saved it in a hidden folder, the file is still there “~/.kbluetooth4/Vídeo003.3gp”. That fact is what made me decide to use my spare time working on kdebluetooth.
After months of work in kbluetooth (the kdebluetooth fork I did), it started to work, but that spent hours made me realize that the kbluetooth never would be stable, it is a clear example of spaghetti code. Because of that, we started a new project called BlueDevil. If you’re wondering about the name, Edulix came with it while working on the daemon, and it is based on PowerDevil (the name).
After a few fridays working on it, suddenly a Spanish company sent an email to me, asking for help to develop a Qt library to deal with BlueZ. A couple of emails (and beers) later, they hired us (ufocoders) to write the library, the first big step towards a real BlueDevil was done.
It’s known that the best way to fully test a library is by using it a lot, so we started a negotiation to finance the development of BlueDevil, finally we got an agreement, we’ll pay it 50% / 50%.
So, this is the boring history, that in my most humble opinion had to be written, now let’s start with the review.
KDE Config Module (system preferences)
The Bluetooth KCM allows you to configure all the options from a single place, it is divided in 3 pages:
- Devices, allows you to switch on/off global KDE Platform Bluetooth integration, and manage your remote devices (add, rename, remove…)
- File Transfer, allows you to switch on/off the reception of files, and configure where (by default) they will be saved once received.
- Adapters, allows you to configure your adapters, changing the name, the visibility…
The wizard allows you to pair with other bluetooth devices, and if they have compatible services connect to them. the highlights are:
- Pair with any device
- Connect to input service (mouse, keyboard, Wiimote)
- Connect to audio service (headset, phones)
- Powerfull “auto” PIN Mode, which has a database containing exceptions.
In the following video, you can see the pair+input connection done with a cellphone, which is used at the final to disconnect itself :p
In this one, you can see the connection of a Nokia Headset, and the integration with the system (kmix/phonon)
The systray is executed only if Bluetooth adapters are found, it allows you to do everything you want to:
- Send files
- Browse devices
- Configure remote devices
- Configure adapters
- Configure file transfer
- Add new remove devices
- Connect to known devices services.
KDE Input/Output integration (KIO):
The KIO integration allows you to discover and browse your devices from your favorite file browser, the highlights are:
- Discover device
- Show and configure (after clicking on them) the supported services.
- If supported by the device, browse the files (copy, remove, create dir…)
Receive files from other devices is supported and totally integrated with the system (using notifications instead of blocking popups etc).
Finally, we’ll be releasing one RC each week until we consider BlueDevil stable enough, so the next release will be Friday 4
if you wish to help in the development of BlueDevil, you can contact us in irc.freenode.net #solid and in the kde-hardware-devel mailist.