Our PineTime Application Firmware bundles the Watch App together with the operating system (Mynewt OS). If PineTime were a real consumer gadget like an Android phone, we would expect the Watch App to be flashed separately from the operating system.
How can we unbundle Watch Apps from Mynewt OS on PineTime?
This can be done in the Rust Wrappers for Mynewt OS. Right now we auto-generate Rust Wrappers for every Mynewt OS API, via a bindgen
script and a Rust Procedural Macro safe_wrap
.
Rust Wrappers are needed so that our Rust Application and Driver Code may safely call Mynewt OS functions (written in C). [More details here](https://medium.com/@ly.lee/safer-simpler-