{"id":16609342,"url":"https://github.com/vookimedlo/ck550-macos","last_synced_at":"2025-10-29T16:32:46.090Z","repository":{"id":44661095,"uuid":"157076403","full_name":"vookimedlo/ck550-macos","owner":"vookimedlo","description":"MacOS effect control SW for a CoolMaster CK550 \u0026 CK530 Keyboard (US Layout).","archived":false,"fork":false,"pushed_at":"2022-02-01T14:32:47.000Z","size":1644,"stargazers_count":14,"open_issues_count":4,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-03-29T03:19:31.611Z","etag":null,"topics":["ck550","cli-app","coolermaster","gui-app","homebrew-cask","keyboard","macos-app","usb-hid"],"latest_commit_sha":null,"homepage":"","language":"Swift","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/vookimedlo.png","metadata":{"files":{"readme":"README.md","changelog":"changelog.rtf","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-11-11T12:17:16.000Z","updated_at":"2020-11-15T21:18:37.000Z","dependencies_parsed_at":"2022-09-13T19:01:38.071Z","dependency_job_id":null,"html_url":"https://github.com/vookimedlo/ck550-macos","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vookimedlo%2Fck550-macos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vookimedlo%2Fck550-macos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vookimedlo%2Fck550-macos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vookimedlo%2Fck550-macos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vookimedlo","download_url":"https://codeload.github.com/vookimedlo/ck550-macos/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219857407,"owners_count":16556062,"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":["ck550","cli-app","coolermaster","gui-app","homebrew-cask","keyboard","macos-app","usb-hid"],"created_at":"2024-10-12T01:28:49.225Z","updated_at":"2025-10-29T16:32:39.838Z","avatar_url":"https://github.com/vookimedlo.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ck550-macos \n\n[![GitHub license](https://img.shields.io/badge/license-MIT-lightgrey.svg)](https://raw.githubusercontent.com/vookimedlo/ck550-macos/master/LICENSE) ![Platform](https://img.shields.io/badge/platforms-macos%2010.14%2B-ff69b4.svg)\n[![Latest release](https://img.shields.io/github/release/vookimedlo/ck550-macos.svg?label=latest%20release)](https://github.com/vookimedlo/ck550-macos/releases/latest)\n[![codebeat badge](https://codebeat.co/badges/24d08641-db15-45e4-be57-a7412fd2d4b8)](https://codebeat.co/projects/github-com-vookimedlo-ck550-macos-master)\n[![Build Status](https://travis-ci.org/vookimedlo/ck550-macos.svg?branch=master)](https://travis-ci.org/vookimedlo/ck550-macos)\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fvookimedlo%2Fck550-macos.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Fvookimedlo%2Fck550-macos?ref=badge_shield)\n\nCoolerMaster has never provided any MacOS SW or SDK for their **CK550** and **CK530** keyboards.\n\nCK550-macos project tries to fix this situation and provides a couple of the MacOS applications for controlling the\nmajority of available keyboard LED effects.\nApplications support only the **CK550** and newly the **CK530** US-Layout keyboards.\n\nBoth applications differ only in a user interface, one is CLI-based, and the latter is GUI-based. Applications do not\noverwrite any stored settings in a keyboard. Changes are temporary, so once the keyboard is unplugged, all changes made\nby ck550-macos are lost. The same situation happens if you switch a keyboard to a different profile. \nThe reason for this behavior is to keep the internal keyboard flash write cycles untouched.\n\n\n| Supported LED effects  |\n|------------------------|\n| Static                 |\n| Rainbow Wave           |\n| Crosshair              |\n| Reactive Fade          |\n| Custom                 |\n| Stars                  |\n| Color Cycle            |\n| Breathing              |\n| Ripple                 |\n| Snowing                |\n| Reactive Punch         |\n| Heartbeat              |\n| Fireball               |\n| Circle Spectrum        |\n| Reactive Tornado       |\n| Water Ripple           |\n| Off                    |\n\nAll effects are previewed on [the official CoolerMaster website][2]. \n\n----------------------------------------------\n\n## Command Line App\n\n```\n➜  ./ck550-cli\n-= CK550 MacOS Utility =-\nAvailable commands:\n\n   about                     About ck550-cli...\n   effect-breathing          Set a breathing effect\n   effect-circle-spectrum    Set a circle spectrum effect\n   effect-color-cycle        Set a color-cycle effect\n   effect-crosshair          Set a crosshair effect\n   effect-custom             Set a custom color for individual keys\n   effect-fireball           Set a fireball effect\n   effect-heartbeat          Set a heartbeat effect\n   effect-off                Set an off effect\n   effect-rainbow-wave       Set a rainbow-wave effect\n   effect-reactive-fade      Set a reactive-fade effect\n   effect-reactive-punch     Set a reactive-punch effect\n   effect-reactive-tornado   Set a reactive-tornado effect\n   effect-ripple             Set a ripple effect\n   effect-snowing            Set a snowing effect\n   effect-stars              Set a stars effect\n   effect-static             Set a static effect\n   effect-water-ripple       Set a water ripple effect\n   help                      Display general or command-specific help\n   license                   ck550-cli license\n   license-components        ck550-cli 3rd party components and their licensing\n   monitor                   Monitor HID devices continuously to see changes on an USB bus\n   version                   Display the current ck550-cli version\n```\n\nEvery available command is heavily documented.\n\n```\n➜  ./ck550-cli help effect-single-key\n-= CK550 MacOS Utility =-\nSet a reactive-fade effect\n\n[--profile (integer)]\n\tkeyboard profile to use for a modification\n\n[--speed (speed)]\n\teffect speed (one of 'highest', 'higher', 'middle', 'lower', or 'lowest'), by default 'middle'\n\n[--color (integer)]\n\tcolor (format: --color \"255, 255, 255\"), by default the color is white\n\n[--background-color (integer)]\n\tbackground color (format: --background-color \"255, 255, 255\"), by default the color is black\n\n\n➜ ./ck550-cli effect-reactive-fade --color \"255, 0, 0\"\n```\n\nAll effects could be configured from a command line except the *Custom* effect.\nThis is effect too complicated, which allows to configure any key located on keyboard.\nYou can use [this configuration file][1] as a template to change any colors for any keys.\n\n```\n➜  ./ck550-cli help effect-custom\n-= CK550 MacOS Utility =-\nSet a custom color for individual keys\n\n[--profile (integer)]\n\tkeyboard profile to use for a modification\n\n(string)\n\tthe configuration file describing individual key colors\n\n\n➜  ./ck550-cli effect-custom ~/myFavouriteGameKeys.json\n```\n\n----------------------------------------------\n\n\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fvookimedlo%2Fck550-macos.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fvookimedlo%2Fck550-macos?ref=badge_large)\n\n## GUI App\n\nCK550-MacOS GUI application is a MacOS menu bar (aka status bar) application.\n\n![CK550 Main Menu](README/images/ck550-macos-main-menu.png?raw=true \"\")\n\nThe main menu contains two switchable options.\n\n- *Adjust LEDs on a sleep and wake up* menu item in its *On state* controls if keyboard is instructed to use\na previously selected LED effect on system wake up or to turn off all LEDs when system sleeps. \n \n- *Set effect on a keyboard detection* menu item in its *On state* instructs a keyboard to use a previously selected\nLED effect during a keyboard detection.\n\n*Effects* menu item displays a submenu containing all available effects for a selection.\n\n![CK550 Effect Menu](README/images/ck550-macos-effect-menu.png?raw=true \"\")\n\nAll effects could be configured either by selecting a general *Preferences...* menu item,\nor by selecting a configuration icon on the right side of a given effect.\n\nChanged preferences are saved immediately and are restored during the application startup.   \n\n![CK550 Reactive Punch Preferences](README/images/ck550-macos-reactive-punch-effect-preferences.png?raw=true \"\")\n\nThe CK550 *Custom effect* could export and import the effect configuration, which is handy to have an ability\nto load predefined keys colors for various software or games. The exported configuration files are fully compatible\nwith the CK550-MacOS CLI application.  \n\n![CK550 Custom Preferences](README/images/ck550-macos-custom-effect-preferences-color-popup.png?raw=true \"\")\n\n----------------------------------------------\n\n## Installation\n\nCK550-MacOS GUI \u0026 CLI applications are distributed in two fashions, which is either a `Homebrew CASK`, or the self-updatable DMG.\n\n### Self-updatable DMG\n\nThe self-updatable DMG is available in a [release section][3]. Be aware that a CLI application is included in the GUI app bundle. You can run the `./ck550.app/Contents/MacOS/ck550-cli.app/Contents/MacOS/ck550-cli` or create a symbolic link to provide an easy access.\n\n### Homebrew CASK\n\nIf you haven't install the Homebrew yet, follow [their instructions][4].\n\nThen, applications could be installed by following commands.\n\n```\nbrew tap vookimedlo/homebrew-ck550\nbrew cask install ck550-macos\n```\n\nIf everything went well, you see a similar output and both GUI and CLI applications are ready to use.\n\n```\n➜   brew cask install ck550-macos\n==\u003e Satisfying dependencies\n==\u003e Downloading https://github.com/vookimedlo/homebrew-ck550/releases/download/v...\n==\u003e Verifying SHA-256 checksum for Cask 'ck550-macos'.\n==\u003e Installing Cask ck550-macos\n==\u003e Moving App 'ck550.app' to '/Applications/ck550.app'.\n==\u003e Linking Binary 'ck550-cli' to '/usr/local/bin/ck550-cli'.\n🍺  ck550-macos was successfully installed!\n```\n\nLater, you can upgrade this application by following command.\n\n```\nbrew cask upgrade ck550-macos\n```\n\n### Other CK keyboard models\n\nIt's possible that other CK keyboard models can be controlled by this software. If you are brave enough, you can enable your keyboard model by adding its USB PID to Constants.swift file. Just extend the _KeyboardPIDs_ enum, re-compile the code base, give it a try and let me know.\n\n```\nenum KeyboardPIDs: Int, CaseIterable {\n    case CK550 = 0x007f; // Works - @vookimedlo - this is the only keyboard I have, any contribution for other models is welcome!!!\n    case CK530 = 0x009f; // Works - @cscheib - suggested \u0026 reported - Thanks!!!\n}\n```\n\n----------------------------------------------\n\n[1]: https://github.com/vookimedlo/ck550-macos/blob/master/config/customization.json\n[2]: http://www.coolermaster.com/peripheral/keyboards/ck550/\n[3]: https://github.com/vookimedlo/ck550-macos/releases/latest\n[4]: https://brew.sh/","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvookimedlo%2Fck550-macos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvookimedlo%2Fck550-macos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvookimedlo%2Fck550-macos/lists"}