Connecting to Bluetooth Device is not triggering

I'm trying to connect to a Bluetooth device... but it is not working.
I am able to turn on and off the Bluetooth device... but it doesn't go further than that.

I was wondering that what could be the reason??? BTT has permission to access bluetooth.

Here is workflow, I press cmd + b and it triggers this.

Now, the interesting thing I noticed is anything after toggling, Bluetooth enabled/disabled doesn't trigger.

Let's say if I want to show notification after toggling the Bluetooth, it doesn't work.

Anything after the toggle is not triggering, so maybe the problem is somewhere else.

Can you please guide me, what I am missing here? :folded_hands:

@Andreas_Hegenberg


Device information:

  • Type of Mac:
  • macOS version: Sequoia 15.6.1
  • BetterTouchTool version: 5.554

Additional information (e.g. crash logs, related issues, etc.):

See the toggle works,

But it doesn't connect to the device, In my case, it is bedroom speaker.

What I am missing?

can anyone please guide, this would make a lot of things easier :folded_hands:

@fortred2 can you please help me with this?

Have you tried something similar?

When connecting things (be it Bluteooth, USB, WiFi, barbed wire, whatever) - I've noticed that delays make things work better. Add a second or two between the events to give the devices time to discover each other.

Thank you so much
It worked like a charm

But i have am struggling with notification part.

Since I am using toggle, it shows connected to bedroom even when I disconnect

1 Like

Well, you told it to show "Connected" no matter what. So it does.

If you want different messages you will have to use some more logic. I can't find any Bluetooth variables in BTT, but the shell command system_profiler SPBluetoothDataType will list all your devices, with the connected ones listed first. With some grepping and scripting, you can get the info from that.

You can also do it quick and dirty, since you are enabling/disabling the BT adapter. Just check if it is enabled. Add a "If Javascript returns true" action, and put this code in it:

async function someJavaScriptFunction() {
		let result = await runShellScript({script: 'system_profiler SPBluetoothDataType | grep "State: On" | wc -l'});
		return result;
}
1 Like