{"id":50413578,"url":"https://github.com/huizhilll/dctimer-ble","last_synced_at":"2026-05-31T05:01:08.690Z","repository":{"id":349320640,"uuid":"1201876047","full_name":"huizhiLLL/DCTimer-BLE","owner":"huizhiLLL","description":"基于 DCTimer-Android 二次开发，接入智能魔方并改进部分功能","archived":false,"fork":false,"pushed_at":"2026-05-30T09:43:09.000Z","size":24982,"stargazers_count":15,"open_issues_count":0,"forks_count":2,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-05-30T11:21:33.946Z","etag":null,"topics":["android","bluetooth","cube","dctimer"],"latest_commit_sha":null,"homepage":"https://dctimer.huizhi.ink/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/huizhiLLL.png","metadata":{"files":{"readme":"README-en.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"docs/roadmap.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-04-05T09:33:56.000Z","updated_at":"2026-05-30T09:43:13.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/huizhiLLL/DCTimer-BLE","commit_stats":null,"previous_names":["huizhilll/dctimer-android-ble","huizhilll/dctimer-ble"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/huizhiLLL/DCTimer-BLE","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huizhiLLL%2FDCTimer-BLE","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huizhiLLL%2FDCTimer-BLE/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huizhiLLL%2FDCTimer-BLE/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huizhiLLL%2FDCTimer-BLE/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/huizhiLLL","download_url":"https://codeload.github.com/huizhiLLL/DCTimer-BLE/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huizhiLLL%2FDCTimer-BLE/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33719601,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-31T02:00:06.040Z","response_time":95,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["android","bluetooth","cube","dctimer"],"created_at":"2026-05-31T05:01:07.312Z","updated_at":"2026-05-31T05:01:08.657Z","avatar_url":"https://github.com/huizhiLLL.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch4 align=\"right\"\u003eEnglish | \u003cstrong\u003e\u003ca href=\"README.md\"\u003e简体中文\u003c/a\u003e\u003c/strong\u003e\u003c/h4\u003e\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\".github/assets/dctimer-logo.png\" alt=\"DCTimer-BLE logo\" width=\"128\" height=\"128\" /\u003e\n\n  \u003ch1\u003eDCTimer-BLE\u003c/h1\u003e\n\n  \u003cp\u003e\n    A speedcubing timer based on DCTimer-Android, with support for smart cubes and the QiYi Smart Timer\n  \u003c/p\u003e\n\n  \u003cp\u003e\n    \u003cimg alt=\"Android\" src=\"https://img.shields.io/badge/Android-targetSdk%2035-3DDC84?style=for-the-badge\u0026logo=android\u0026logoColor=white\" /\u003e\n    \u003cimg alt=\"Java\" src=\"https://img.shields.io/badge/Java-17-007396?style=for-the-badge\u0026logo=openjdk\u0026logoColor=white\" /\u003e\n    \u003cimg alt=\"Gradle\" src=\"https://img.shields.io/badge/Gradle-8.11.1-02303A?style=for-the-badge\u0026logo=gradle\u0026logoColor=white\" /\u003e\n  \u003c/p\u003e\n\n  \u003cp\u003e\n    \u003cimg src=\"website/assets/web1.svg\" alt=\"DCTimer-BLE timer screen\" height=\"280\" /\u003e\n    \u003cimg src=\"website/assets/web3.svg\" alt=\"DCTimer-BLE feature improvements\" height=\"280\" /\u003e\n  \u003c/p\u003e\n\u003c/div\u003e\n\n---\n\n## Download\n\n- [GitHub Releases](https://github.com/huizhiLLL/DCTimer-Android-BLE/releases/latest)\n- [Official direct download](https://dctimer.huizhi.ink/assets/DCTimer-BLE-v2.2.6.apk)\n\n\u003e DCTimer-BLE uses a different package name from the original DCTimer, so it will not conflict during installation\n\u003e It is compatible with the original data format. Export data from the original DCTimer and import it into DCTimer-BLE to migrate your data.\n\n## Features\n\n- Compatible with mainstream smart cube brands\n- Draggable real-time 3D rendering for smart cubes\n- Carefully optimized smart scramble guidance and correction flow\n- Fast connection, with no manual MAC address entry required. From app launch to connected, it usually takes only 4-6 seconds.\n\n## Support\n\n- `Moyu32` (MoYu smart cube)\n- `QYSC` / `Tornado V4` (QiYi smart cube and Tornado series)\n- `GAN` (`v2 / v3 / v4`) (GAN smart cube)\n- `QiYi Smart Timer` (QiYi smart timer)\n\n## Improvements\n\n- Upgraded to `AndroidX / AGP 8.9.2 / Gradle 8.11.1 / targetSdk 35` for better stability on newer Android devices\n- Database import/export, scramble import/export, and background image selection have been migrated to the system document picker\n- The solve entry now supports separate `Smart Cube` / `Bluetooth Timer` modes\n- Added 8s/12s voice reminders for WCA inspection mode\n- Manual time entry now auto-splits the time, so no extra decimal point is needed\n- PB history markers and sorting in the solve list\n\n## Acknowledgements\n\n- [DCTimer-Android](https://github.com/MeigenChou/DCTimer-Android): original DCTimer-Android repository\n- [cstimer](https://github.com/cs0x7f/cstimer): smart cube protocol reference\n- [smartcube-web-bluetooth](https://github.com/poliva/smartcube-web-bluetooth)：smart cube protocol reference\n- [qiyi_smartcube_protocol](https://codeberg.org/Flying-Toast/qiyi_smartcube_protocol): smart cube protocol reference\n- [CubicTimer](https://github.com/hato-ya/CubicTimer): QiYi Smart Timer integration reference\n- [Miaoyan](https://miaoyan.app): official website design reference\n- [Codex](https://github.com/codex): development partner\n\n---\n\n- [Soda](https://space.bilibili.com/400839068): provided QiYi and Tornado smart cube test hardware\n- [Visionary](https://space.bilibili.com/674586122): GAN smart cube testing\n\nIf this project is helpful to you, I hope you can give it a star, which will be the motivation for my future maintenance ~\n\n## License\n\nGPLv3\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhuizhilll%2Fdctimer-ble","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhuizhilll%2Fdctimer-ble","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhuizhilll%2Fdctimer-ble/lists"}