site  news  contact

BluePup easy Bluetooth management

April 29, 2022 — BarryK

Originally written: Nov. 22, 2020
Updated: April 29, 2022

EasyOS prior to version 2.5 has Blueman Bluetooth manager, which is in many Linux distributions. However, Barry experienced some issues with it, so decided to write a GUI BT manager from scratch -- well, not from scratch exactly, but using existing excellent commandline utilities.

It is somewhat naive of Barry, perhaps, to think that something knocked together in a couple of weeks could compete with a product that has been under development for years. Maybe, but BluePup has turned out well, not all the features of Blueman, but is simple, easy and logical to use, and does the basic operations that most people would want, which is to connect their BT keyboard, mouse, speaker/headset, and transfer files to and from a mobile phone.

BluePup is in the system tray, bottom-right of the screen, just click on it to bring up the GUI. Here is a quick run-through:

Barry, the author of this tutorial, is now switching over to first-person commentary...

I clicked on the Bluetooth icon in the systray to launch BluePup. Note, 'bluez', a daemon, which is the intermediary between Linux and the BT devices, will also be running in the background. I ran through connecting my mouse, keyboard, speaker and Android phone...

Launching BluePup, you get a GUI window that has a lot of stuff on it, however, usage comes down to clicking just a couple of buttons, "SCAN" and "REGISTER" -- that's it, and you are connected, though in some case a PIN has to be entered.

Firstly, turned on the mouse, put it into pairing mode, then clicked the "SCAN" button in BluePup:


...I don't know what that "4F:A0:41:58:EA:44" device is, something at my neighbour's place. I selected the mouse in the "New devices" section, then clicked on the "REGISTER" button:


...yay, mouse works! I then turned on my keyboard, pressed it's pairing button, and scanned for it, then clicked the "REGISTER" button:


...this required a PIN code to be entered on the keyboard, and success, Bluetooth keyboard is working. I then repeated the exercise for my speaker, and got all three devices connected:


...notice the green ticks, these mean currently connected and working. Connecting the speaker also automatically pops up the Multiple Sound Card Wizard (MSCW):

img6 sure to click "Test Sound" before selecting the Bluetooth audio device as the default, to make sure that it is working!

Note, in the above snapshot, the first entry, "ALC233", is my internal motherboard audio, and "HDMI 1" is my monitor (which is actually a TV).

BluePup automatically detects changes, and will update the GUI. For example, I turned off all three devices, and the GUI updated to orange ticks, meaning paired but currently not connected:


Turning any device back on, it automatically reconnects, and the GUI updates.

A usability note about turning devices off and on: modern BT devices have low-power mode, making them "invisible" to the Linux kernel, and 'bluez' might not be immediately aware when a device is turned off. You might have to wait a minute before those ticks turn from green to orange -- please do wait, before turning the device back on, as otherwise 'bluez' might get confused.

One point about the speaker -- if I had set the Bluetooth speaker as the default audio device, turning it off will cause the MSCW to popup. Ditto with turning it on. This is achieved by a udev rule, so if anyone wants to create a BluePup PET to run on other Puppy Linux derivatives, or a package for another Linux distro, they will need to chase up all of these support files.

Now for my Huawei Y9 Android phone:


...notice the orange tick. Unlike the mouse, keyboard and speaker, the phone is only connected when an actual operation is taking place. That is, the orange tick means we are paired with the phone, but not connected.

To send a file, click "SEND FILE" and to receive a file from the phone, click "RECEIVE FILE". These operations will perform a temporary connection with the phone. It is pretty simple, I don't think any further explanation is required.

Um, perhaps a comment how to receive a file from the phone: on your phone, run an app, such as the Photo Gallery, select a photo, then tap the "share" icon, then choose "bluetooth", then tap on "BlueZ 5.50" which is the name of the pairing with the PC. That's it, the photo will appear in your PC, and BluePup will have opened the appropriate folder with the file manager.

Of course, being a very new product, BluePup will likely have issues for some users. Report any problem to the EasyOS forum: would be especially nice if you find a bug and then fix it! You can find most of the BluePup scripts at /usr/local/bluepup

I hope that you enjoy using BluePup as much as I have in creating it!

Barry Kauler
Page (c) copyright Barry Kauler, all rights reserved.  
BluePup is (c) copyright 2020 Barry Kauler, license GPL v3 (/usr/share/doc/legal) 

Tags: apps