Pebble-rust-2026 Rust SDK progress!

See also the previous Rust discussion: Rust SDK Potential?

Since finding that discussion and starting to use @cmb’s pebble-rust-2026 I’ve spent a lot of time improving the library and tooling, with lots of work by and great discussions with Christoph as well. I’m starting a new topic to get some more attention and also to more properly inform everyone on the progress we’ve made. Hopefully some interested folks would like to try the Rust SDK and give us more feedback on things we can improve!

Improvements that we’ve already done:

  • Lots of documentation! Pretty much all public APIs are documented on their own.
  • Integration of the RNG functionality with the rand ecosystem.
  • Lots of improvements to the math and geometry functionality, including const support pretty much for everything.
  • Watch info retrieval APIs (color, model, roundness, black&white, etc.)
  • Proper multiplatform support! The SDK can be compiled in a dedicated manner for each of the Pebble platforms, with the different functionality available appropriately (or turned into a noop, like touch support).
  • My tool cargo-pebble, which removes all the annoying parts of integrating with the crufty C SDK and pebble-tool’s weirdnesses, but also is very customizable, and simplifies multi-platform builds.
  • More flexible allocator support, you can bring your own or choose from two ready-to-use allocators in the library. (These will support the actual Rust Allocator API once it is stable within the next few months.)
  • Tons of bugfixes, obviously.

Things that I want to do in the future (or are currently in progress):

  • Multiple event handlers per event, breaking free of the one-handler-per-event limitation of the C API. This is pretty much done and only needs code review.
  • Better string formatting and logging. You currently cannot use format!() in most applications, and we’ve only exposed the error-prone and unsafe C APIs.
  • More small examples!

I hope you all are going to write some really cool apps in Rust with the SDK :3

3 Likes