{"id":13585350,"url":"https://github.com/vegardinho/alfred_bluetooth_controller","last_synced_at":"2025-04-07T09:34:41.427Z","repository":{"id":37806285,"uuid":"249162849","full_name":"vegardinho/alfred_bluetooth_controller","owner":"vegardinho","description":"Alfred workflow for managing bluetooth settings and -connections","archived":false,"fork":false,"pushed_at":"2024-07-30T20:56:29.000Z","size":20458,"stargazers_count":98,"open_issues_count":1,"forks_count":7,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-08-02T15:59:47.214Z","etag":null,"topics":["alfred","alfred-workflow","bluetooth","blueutil","macos"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vegardinho.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-03-22T10:49:10.000Z","updated_at":"2024-07-31T05:08:25.000Z","dependencies_parsed_at":"2023-11-09T10:45:22.994Z","dependency_job_id":"3fb2e44a-e8b8-44e8-b33e-854bdd8f048a","html_url":"https://github.com/vegardinho/alfred_bluetooth_controller","commit_stats":null,"previous_names":[],"tags_count":34,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vegardinho%2Falfred_bluetooth_controller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vegardinho%2Falfred_bluetooth_controller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vegardinho%2Falfred_bluetooth_controller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vegardinho%2Falfred_bluetooth_controller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vegardinho","download_url":"https://codeload.github.com/vegardinho/alfred_bluetooth_controller/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223277807,"owners_count":17118646,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["alfred","alfred-workflow","bluetooth","blueutil","macos"],"created_at":"2024-08-01T15:04:53.429Z","updated_at":"2025-04-07T09:34:41.410Z","avatar_url":"https://github.com/vegardinho.png","language":"Python","funding_links":[],"categories":["Python","macos","Utility","System"],"sub_categories":[],"readme":"# Alfred Workflow: Bluetooth Controller \u003c!-- omit in toc --\u003e\n\nA powerful toolkit for managing your bluetooth connections. Includes Remote Trigger, to manage your Bluetooth devices on\nthe big screen.\n\n## Contents \u003c!-- omit in toc --\u003e\n\n- [Installation](#installation)\n- [Usage](#usage)\n  - [Commands](#commands)\n    - [Manage bluetooth status](#manage-bluetooth-status)\n    - [Toggle Device Connections](#toggle-device-connections)\n    - [Manage favorite device](#manage-favorite-device)\n    - [Pair/Unpair Device](#pairunpair-device)\n    - [Large-Type Bluetooth Status](#large-type-bluetooth-status)\n  - [Safe Mode](#safe-mode)\n  - [Remote triggers](#remote-triggers)\n- [Troubleshooting](#troubleshooting)\n  - [Notifications not working, or notificator error](#notifications-not-working-or-notificator-error)\n  - [Error `xcrun: error: invalid active developer path`](#error-xcrun-error-invalid-active-developer-path)\n  - [Remove quarantine using terminal](#remove-quarantine-using-terminal)\n  - [Allow Alfred to control bluetooth](#allow-alfred-to-control-bluetooth)\n  - [Why do I need to install blueutil with Homebrew?](#why-do-i-need-to-install-blueutil-with-homebrew)\n- [Installation images](#installation-images)\n- [Screenshots](#screenshots)\n- [Attribution](#attribution)\n\n---\n\n## Installation\n\n1. Download the [Alfred workflow](https://github.com/vegardinho/alfred_bluetooth_controller/releases/latest) and\n   double-click to install.\n2. Install [blueutil](http://www.frederikseiffert.de/blueutil/):\n  - Using package manager [Homebrew](https://brew.sh/):\n\n      ```sh\n      # install\n      brew install blueutil\n      \n      # update\n      brew update\n      brew upgrade blueutil\n      \n      # uninstall\n      brew remove blueutil\n      ```\n\n  - Using package manager [MacPorts](https://www.macports.org/):\n\n      ```sh\n      # install\n      port install blueutil\n      \n      # update\n      port selfupdate\n      port upgrade blueutil\n      \n      # uninstall\n      port uninstall blueutil\n      ```\n4. [Allow Alfred to control bluetooth](#allow-alfred-to-control-bluetooth).\n5. Enjoy!\n\nPlease see [troubleshooting section](#troubleshooting) if you experience any issues, and post an issue if the problem persists. Description of commands can be found below.\n\n---\n\n## Usage\n\n### Commands\n\n#### Manage bluetooth status\n\n- Turn bluetooth on: `bton`\n- Turn bluetooth off: `btoff`\n- Toggle bluetooth status: `bttoggle`\n- Reset (disable, wait 1.5 seconds, enable: `btreset`\n\n#### Toggle Device Connections\n\n- Connect/disconnect from device: `btd` + `device name`\n\n#### Manage favorite device\n\n- Set favorite device: `btsetfavorite` + `device name`\n- Toggle connection with favorite device:\n  - with hotkey: `cmd-ctr-option-f`\n  - with keyword: `btfavorite`\n- Remove device as favorite:\n  - `btd` + `device name` + press modifier key `shift`\n  - `btsetfavorite` + `device name` + press modifier key `shift`\n\n#### Pair/Unpair Device\n\n- Pair:\n  - `btp` + `device name`\n  - Wait 5 seconds for results to show up.\n- Unpair:\n  - `btd` + `device name` + press modifier key `cmd`\n\n#### Large-Type Bluetooth Status\n\n- See status of bluetooth connection and paired devices.\n- `btstatus`\n\n### Safe Mode\n\nSet workflow configuration variable `confirm` in workflow to `true` if you want to force user confirmation on toggle and\ndeactivation commands. (Useful for iMacs and Mac Minis who that would have trouble turning Bluetooth on again without\nany input devices.)\n\n### Remote triggers\n\nMost, or all, the listed commands have their own Remote Trigger. (You're welcome to add ones that are missing.)\n\n---\n\n## Troubleshooting\n\n### Notifications not working, or notificator error\n\nHave you granted [Alfred access to controlling bluetooth](#allow-alfred-to-control-bluetooth)? If you still experience issues after granting access, these problems probably stems from the `notificator` binary being blocked by Gatekeeper. We therefore need to allow it to run (remove the quarantine attribute from the bundled binary):\n\n1.  Open workflow folder in Finder by right clicking workflow ([see image](#installation-images)).\n2.  Right-click on `notificator` and click 'open' ([see image](#installation-images)).\n3.  Confirm open when dialog appears.\n4.  This can alternatively be done [using the terminal](#remove-quarantine-using-terminal).\n\n### Error `xcrun: error: invalid active developer path`\n\nIf you experience the error `xcrun: error: invalid active developer path`, Command Line Tools is likely not installed properly. More info, as well as instructions on how to install it, can be found here: https://apple.stackexchange.com/a/254381\n\n### Remove quarantine using terminal\n\nUse the following command once in directory:\n\n- Notificator: `xattr -d com.apple.quarantine ./notificator`\u003c/br\u003e\n  ![How to open directory in Terminal](img/open-in-terminal.png)\n\n### Allow Alfred to control bluetooth\n\nGo to `System Preferences -\u003e Privacy \u0026 Security -\u003e Bluetooth` and add the Alfred version you are using (e.g., Alfred 5). If you have already added Alfred, ensure it is turned on.\u003c/br\u003e\n![Allow bluetooth in System Preferences](img/security_bluetooth.png)\n\n### Why do I need to install blueutil with Homebrew?\n\nMany users with silicon chip macs experienced issues with the local binaries provided in the workflow. It also required manual removal of quarantine for many users, and relied on workflow updates for every new release of `blueutil`. After the implementation of Alfred's new [Resolve Dependecies feature], use of Homebrew installed tools suddenly became a lot more user friendly. I decided the time had come for letting Homebrew manage `blueutil`.\n\n---\n\n## Installation images\n\n(Note: in the second image, the binary should be `notificator`, not `blueutil`.)\n![\"How to open directory in Finder\"](img/open-in-finder.png)\n![How to open binary file](img/open-manually.png)\n\n---\n\n## Screenshots\n\n![Screenshot of all options](img/screenshot_bt.png)\n![Screenshot of device toggle](img/screenshot_btd.png)\n\n---\n\n## Attribution\n\n- [blueutil](https://github.com/toy/blueutil) binary is used for bluetooth functionality.\n- [notificator](https://github.com/vitorgalvao/notificator) binary is used for notifications.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvegardinho%2Falfred_bluetooth_controller","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvegardinho%2Falfred_bluetooth_controller","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvegardinho%2Falfred_bluetooth_controller/lists"}