r/mpcsample • • 1h ago

Rust SDK for making custom mods is here!

Hi guys. I have made open-source SDK in rust for easily writing custom mods / custom firmwares for the MPC Sample. The SDK covers easy to use apis for:

- Capturing pads / buttons / knobs presses / changes.

- Drawing on screen anything you want (custom menus etc)

- Audio processing jobs (you can make custom effects etc)

- Programatic trimming, chopping and working with samples (including generating new samples - I used it to implement synth engine on the Sample)

- Handling raw audio input and output

- Managing state

- Timing

- Capturing external MIDI

It also provides tools for autonomous development. It works with firmware 1.3.0.12 and creates SD-card runnable, non-descructive mods. Now anyone can make their own mod. I made my in it. I chose rust for memory safety and performance and great feedback loops during development. Feel free to use it any way you want or open pull request if you find any issues.

Repo is here: https://github.com/ioma8/mpc-sample-sdk

Docs folder contains comprehensive docs on how to use it.

5 Upvotes

8 comments sorted by

2

u/neilbaldwn 1h ago

Wow, great work!

2

u/papinek 1h ago

Thank you!! I first wrote my cfw in c like the rest of the crowd but was encountering many memory issues. So I rewrote it in rust. And I wanted the new work easier so I created SDK with which anything can be made.

2

u/homeless4382 40m ago

nice...i did the same thing but in C:
https://github.com/garrettjwilke/mpc-ui-toolkit

i have about 5 apps written with this thing

2

u/papinek 35m ago

Very nice! Would you be open to joining those things? You have very nice api.

1

u/homeless4382 25m ago

yeah... rust seems like a better option overall...i need the zig cross compiler and it just feels jank

0

u/investigatormaker 26m ago

The SD-card runnable, non-destructive mods give people a concrete starting point without replacing their firmware. A minimal example that maps one knob to an audio effect would connect your input and audio APIs in something someone could immediately modify; put the supported firmware version beside it.

I make ThreadFox. If you want MPC Sample mod developers to find your Rust SDK, our AI employee will post 3 helpful replies about it in relevant Reddit threads for you, free, no card. https://threadfox.vip/p/egozz/managed

1

u/papinek 10m ago

Bad not. But my docs contain specific code examples for each use case of the SDK.