{"id":18305564,"url":"https://github.com/etiennetremel/stm32-sequencer","last_synced_at":"2025-04-12T15:22:35.729Z","repository":{"id":145742244,"uuid":"562494354","full_name":"etiennetremel/stm32-sequencer","owner":"etiennetremel","description":"Modular music CV/Gate sequencer prototype using the STM32F103C8 chip (blue pill)","archived":false,"fork":false,"pushed_at":"2023-03-15T20:16:45.000Z","size":2095,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-26T09:51:18.631Z","etag":null,"topics":["electronic","music","rtic","rust","sequencer","stm32","stm32f103"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/etiennetremel.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":"2022-11-06T14:37:13.000Z","updated_at":"2025-01-12T23:32:16.000Z","dependencies_parsed_at":"2023-07-26T23:21:37.610Z","dependency_job_id":null,"html_url":"https://github.com/etiennetremel/stm32-sequencer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etiennetremel%2Fstm32-sequencer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etiennetremel%2Fstm32-sequencer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etiennetremel%2Fstm32-sequencer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etiennetremel%2Fstm32-sequencer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/etiennetremel","download_url":"https://codeload.github.com/etiennetremel/stm32-sequencer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248586667,"owners_count":21129078,"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":["electronic","music","rtic","rust","sequencer","stm32","stm32f103"],"created_at":"2024-11-05T15:34:58.197Z","updated_at":"2025-04-12T15:22:35.703Z","avatar_url":"https://github.com/etiennetremel.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"Music sequencer based on stm32 blue pill\n========================================\n\n\u003e Modular music CV/Gate sequencer STM32F103C8 (blue pill) written in Rust.\n\n## Overview\n\n![STM32F103C8 music sequencer](./build/stm32-sequencer.png)\n\nKeyboard is a custom PCB mounted with Cherry MX keys. It is based on the\nfollowing schematic:\n\n![Keyboard sequencer prototype](./build/keyboard-schema.png)\n\n![Keyboard PCB design](./build/msk18-prototype-v1-pcb.png)\n\n## Pinout\n\nCurrently only 2 DACs in use:\n\n```\nSTM32 PIN\nPA0   COL0 (keypad)\nPA1   COL1 (keypad)\nPA2   COL2 (keypad)\nPA3   COL3 (keypad)\nPA4   COL4 (keypad)\nPA5   COL5 (keypad)\nPA8   ROW0 (keypad)\nPA9   ROW1 (keypad)\nPA10  ROW2 (keypad)\nPB13  DAC1 \u0026 DAC2 SPI SCK (MCP4921)\nPB15  DAC1 \u0026 DAC2 SPI MOSI (MCP4921)\nPB12  DAC1 CS (MCP4921)\nPB14  DAC2 CS (MCP4921)\nPA6   LED data in (WS2812)\n```\n\n## Keyboard control\n\n| Key           | Description\n|---------------|--------------------------------------------------------------\n| Shift+Fn1     | Switch between recording mode: gate or cv\n| Shift+Fn2     | Clear steps\n| Shift+Forward | Next track\n| Shift+Back    | Previous track\n| Fn1+Forward   | Toggle play/stop\n| Fn1+Back      | Toggle play/pause\n| Fn1+Step      | Select track number\n| Fn2+Step      | Randomize CV or Gate with probability based on the selected step\n| Forward       | Next octave\n| Back          | Previous octave\n\n## Development\n\n###  Getting started\n```bash\ncargo install cargo-embed\nrustup target add thumbv7m-none-eabi\ncargo embed --release\n```\n\n### Debugging\n\n```bash\ncargo embed\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetiennetremel%2Fstm32-sequencer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fetiennetremel%2Fstm32-sequencer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetiennetremel%2Fstm32-sequencer/lists"}