No, udev does not send D-Bus events on its own. Programs such as Xorg, PuslseAudio, and udisks directly control uevents (some of which come from the kernel, and some of them are generated by udev). For many uevents, there is nothing that reflects them on the D-Bus.
udevadm monitor print the uevents stream. It is easy to read like a pipe in Perl. For instance,
open my $udev, '-|', qw(udevadm monitor); while (<$udev>) { my ($source, $ts, $action, $dev, $sys) = split; if ($action eq 'add') {
However, Bluetooth is handled via BlueZ on most distributions, and BlueZ provides a D-Bus interface. For example, you can track the org.bluez.Device1.Connected property of the /org/bluez/hciX/dev_XX_XX_XX_XX_XX_XX in the well-known name of the org.bluez system bus if you are interested in a specific device.
source share