{"id":22139043,"url":"https://github.com/kcsoft/synology-bluetooth","last_synced_at":"2025-04-10T12:04:40.543Z","repository":{"id":172360135,"uuid":"649191772","full_name":"kcsoft/synology-bluetooth","owner":"kcsoft","description":"Compile bluetooth modules for Synology DSM7.1 and DSM7.2","archived":false,"fork":false,"pushed_at":"2024-07-28T05:54:15.000Z","size":9,"stargazers_count":36,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-24T10:50:50.645Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kcsoft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2023-06-04T04:38:46.000Z","updated_at":"2025-03-19T07:52:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"6d42b3d3-6db7-487f-9f74-c4b3095527b5","html_url":"https://github.com/kcsoft/synology-bluetooth","commit_stats":null,"previous_names":["kcsoft/synology-bluetooth"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kcsoft%2Fsynology-bluetooth","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kcsoft%2Fsynology-bluetooth/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kcsoft%2Fsynology-bluetooth/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kcsoft%2Fsynology-bluetooth/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kcsoft","download_url":"https://codeload.github.com/kcsoft/synology-bluetooth/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248216322,"owners_count":21066628,"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":[],"created_at":"2024-12-01T20:13:22.331Z","updated_at":"2025-04-10T12:04:40.525Z","avatar_url":"https://github.com/kcsoft.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# synology-bluetooth\n\n**Compile bluetooth modules for Synology DSM7.1**\n\n**The guide for DSM7.2 is [here](https://github.com/kcsoft/synology-bluetooth/blob/master/Compile%20bluetooth%20modules%20for%20Synology%20DSM7.2.md)**\n\n_The guide is for geminilake architecture, kernel version 4.4.180+ but the steps are similar for other architectures._\n\n## Steps\n\n### 1. prepare the environment (Ubuntu 20 was used) ([source](https://help.synology.com/developer-guide/getting_started/prepare_environment.html)):\n\n```sh\nmkdir -p /toolkit \u0026\u0026 cd /toolkit\ngit clone https://github.com/SynologyOpenSource/pkgscripts-ng\napt-get install cifs-utils python python-pip python3 python3-pip # depend on os\ncd /toolkit/pkgscripts-ng/\ngit checkout DSM7.1\nsudo ./EnvDeploy -v 7.1 -p geminilake\n```\n---\n\n### 2. download the kernel source (for geminilake, kernel 4.4.180)\n\n  * Look for your the kernel for your arch here https://archive.synology.com/download/ToolChain/Synology%20NAS%20GPL%20Source/7.0-41890\n  * Search for `\"linux-4\"` or `\"linux-3\"` packages.\n\n  * For *geminilake* there is a kernel v4: https://global.synologydownload.com/download/ToolChain/Synology%20NAS%20GPL%20Source/7.0-41890/geminilake/linux-4.4.x.txz\n---\n\n### 3. unpack to `/toolkit/build_env/ds.geminilake-7.1usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/src/`\n\n```sh\ntar xvf linux-4.4.x.txz -C /toolkit/build_env/ds.geminilake-7.1/usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/src/\n```\n---\n\n### 4. enter chroot and compile\n\n```sh\nsudo chroot toolkit/build_env/ds.geminilake-7.1\n\nmake -C /usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/lib/modules/DSM-7.1/build M=/usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/src/linux-4.4.x/net/bluetooth/ -e CONFIG_BT=m modules\n\nmake -C /usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/lib/modules/DSM-7.1/build M=/usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/src/linux-4.4.x/drivers/bluetooth/ -e CONFIG_BT_HCIBTUSB=m modules\n# ignore warnings\n```\n---\n\n### 5. copy `bluetooth.ko` and `btusb.ko` to your NAS `/lib/modules/` folder\n\n```sh\n# assuming you have transferred the 2 files on the NAS\nsudo cp bluetooth.ko btusb.ko /lib/modules/\n```\n---\n\n### 6. create a startup file on the NAS to load them on boot\n\n```sh\necho -e \"#!/bin/sh\\ncase \\$1 in\\n  start)\\n    insmod /lib/modules/bluetooth.ko \u003e /dev/null 2\u003e\u00261\\n    insmod /lib/modules/btusb.ko \u003e /dev/null 2\u003e\u00261\\n    ;;\\n  stop)\\n    exit 0\\n    ;;\\n  *)\\n    exit 1\\n    ;;\\nesac\" | sudo tee /usr/local/etc/rc.d/bluetooth-modules.sh\nsudo chmod 755 /usr/local/etc/rc.d/bluetooth-modules.sh\n\n# execute manually this time, will execute automatically on next boot\nsudo /usr/local/etc/rc.d/bluetooth-modules.sh start\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkcsoft%2Fsynology-bluetooth","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkcsoft%2Fsynology-bluetooth","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkcsoft%2Fsynology-bluetooth/lists"}