{"id":22820206,"url":"https://github.com/kizzycode/ws2812b-rust-rp2040","last_synced_at":"2025-08-10T11:31:27.222Z","repository":{"id":46325757,"uuid":"515314192","full_name":"KizzyCode/WS2812B-rust-rp2040","owner":"KizzyCode","description":"A driver implementation for up to 4 WS2812B LED strips","archived":false,"fork":false,"pushed_at":"2022-08-12T18:07:26.000Z","size":1492,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-04-09T19:13:17.556Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","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/KizzyCode.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE BSD 2-CLAUSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-07-18T19:24:45.000Z","updated_at":"2022-11-21T04:15:31.000Z","dependencies_parsed_at":"2022-08-30T01:30:16.684Z","dependency_job_id":null,"html_url":"https://github.com/KizzyCode/WS2812B-rust-rp2040","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/KizzyCode%2FWS2812B-rust-rp2040","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KizzyCode%2FWS2812B-rust-rp2040/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KizzyCode%2FWS2812B-rust-rp2040/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KizzyCode%2FWS2812B-rust-rp2040/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KizzyCode","download_url":"https://codeload.github.com/KizzyCode/WS2812B-rust-rp2040/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229404257,"owners_count":18067680,"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-12T15:17:04.726Z","updated_at":"2024-12-12T15:17:05.332Z","avatar_url":"https://github.com/KizzyCode.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![License BSD-2-Clause](https://img.shields.io/badge/License-BSD--2--Clause-blue.svg)](https://opensource.org/licenses/BSD-2-Clause)\n[![License MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n\n# WS2812B\nA driver implementation for up to 4 WS2812B LED strips. The heavy I/O-lifting is done via the PIO co-processors to\nensure timing correctness.\n\n## Sending commands\nThe Pico accepts control transactions via USB or UART serial at 115200 baud/s.\n\nA transaction consists of\n - a numeric command ID (recommended to be unique)\n - zero or more commands\n - a newline\n\nA command constists of\n - the LED strip index (0..4), followed by a colon\n - the LED index (0..WS2812B_LED_MAX), followed by a colon\n - the RGB-red value (0..256), followed by a colon\n - the RGB-green value (0..256), followed by a colon\n - the RGB-blue value (0..256), followed by a colon\n\nEach transaction is followed by a response. On success, the Pico returns `OK` followed by the command ID; on error, the\nPico returns `ERR` followed by the error message.\n\n### Syntax example\n`\u003ccommand-id\u003e \u003cstrip\u003e:\u003cled\u003e:\u003cred\u003e:\u003cgreen\u003e:\u003cblue\u003e \u003cstrip\u003e:\u003cled\u003e:\u003cred\u003e:\u003cgreen\u003e:\u003cblue\u003e \u003c...\u003e\\n`\n\n### Specific example\n - Request: `24454 0:0:255:0:0 0:1:0:255:0 0:2:0:0:255\\n` - this sets the first LED to max red, the second LED\nto max green and the third LED to max blue.\n - Response: `OK 24454`\n\n## Build hints\nThe C-Pico-SDK must be linked into `$PROJECT_DIR/sdk`. Furthermore, this project requires a Rust-nightly toolchain for\n`thumbv6m-none-eabi`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkizzycode%2Fws2812b-rust-rp2040","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkizzycode%2Fws2812b-rust-rp2040","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkizzycode%2Fws2812b-rust-rp2040/lists"}