WIP demo project for pure rust playing nicely with MCUBoot/Infinitime OTA

Overview

pinetime-rust-mcuboot

WIP demo project for pure rust playing nicely with MCUBoot/Infinitime OTA

Firmware Behavior

This is an example project so I just have the button controlling the LCD brightness. It doesn't even pet the watchdog so the processor reset after a few seconds.

Usage

Build the firmware

cargo xtask build

Build and flash the firmware

Requires cargo-flash.

cargo xtask flash

OTA update

The DFU update zip can be found next to the firmware binary after building. It can be flashed using Infinitime, other MCUboot-based firmware, or the Infinitime-based recovery firmware built into the newer bootloader version(s?):

  • When booting, hold down the button.
  • Wait for acorn to turn red.
  • Release button.
  • Wait for another boot cycle and for the Infinitime logo to appear.
  • Connect and flash as normal.

Not working

  • Additionally configurability and better error reporting for the xtask scripts (they also need some cleaning up).
  • cargo-embed - it does not yet appear to support pre-generated artifacts, I'm planning to submit a PR
  • probe-rs' vscode plugin - nondescriptive error occurs, I haven't yet dug into that.
You might also like...
Bring your blog to Fediverse. [WIP]

Hatsu Bring your blog to Fediverse. [WIP] Development Hatsu is in the early stages of development, PR welcome. Setup # clone project git clone http

dustls, a pure-rust DTLS implementation

dustls, a pure-rust DTLS implementation A DTLSv1.2 implementation in Rust, reusing rustls for cryptographic primitives and most message payload format

Risc-V assembly interpreter built with pure Rust
Risc-V assembly interpreter built with pure Rust

Risc-V Interpreter Interpreter for Risc-V assembly built with Rust Report bug Β· Request feature Table of contents Quick start Exemple Program Instruct

A pure-Rust serverless discord chatbot hosted on Cloudflare Workers.

About A pure-Rust serverless discord chatbot hosted on Cloudflare Workers. With a free account you have up to 100k requests per day. For storing state

A fast llama2 decoder in pure Rust.
A fast llama2 decoder in pure Rust.

llama2.rs πŸ€— This is a Rust implementation of Llama2 inference on CPU The goal is to be as fast as possible. It has the following features: Support fo

An example project demonstrating integration with Rust for the ESP32-S2 and ESP32-C3 microcontrollers.

Rust ESP32 Example An example project demonstrating integration with Rust for the ESP32-S2 and ESP32-C3 microcontrollers.

A template for kick starting a Cloudflare worker project using workers-rs.

Getting Started A template for kick starting a Cloudflare worker project using workers-rs. This template is designed for compiling Rust to WebAssembly

Abstract GPU Project - The easiest and most ergonomic GPU library
Abstract GPU Project - The easiest and most ergonomic GPU library

Abstract GPU Project - The easiest and most ergonomic GPU library

Small project that try to bend to world.

Small project that try to bend to world. May not be fully working, but should provide an improvable starting point. How to The only important file is

Owner
David Boles
Hacker, maker. Brown sophmore.
David Boles
Playing with web dev in Rust. This is a sample Rust microservice that can be deployed on Kubernetes.

Playing with web dev in Rust. This is a sample Rust microservice that can be deployed on Kubernetes.

AndrΓ© Gomes 10 Nov 17, 2022
Create That Project. Project Creation That Rocks 🎸🧱.

Create That Project Config Example Install $ cargo install ctp Basic Info In any file or even in the commands sections of your config file you can pla

Will 5 Dec 20, 2021
Help project managers and project owners with easy-to-understand views of github issue dependencies.

Help project managers and project owners with easy-to-understand views of github issue dependencies.

nasa 56 Dec 15, 2022
Basic Rust I2C demo on the TI Launchpad

msp430-i2c-oled-example An example project to talk to an SSD1306 OLED (Adafruit PiOLED) with an MSP430G2553 Launchpad via I2C.

Edward Shin 3 Jul 9, 2021
Demo for the swash font library

Demo for the swash crate See the swash repo or crate for the actual project. This is a chunk of very rough code.

Chad Brokaw 28 Nov 29, 2022
WasmEdge Hyper Demo.

WasmEdge Hyper Demo In this project, we demonstrate how to use hyper and tokio to build async http client in WebAssembly and execute it using WasmEdge

WasmEdge Runtime 23 Dec 29, 2022
Demo of tokio running on esp32 using esp-idf

Tokio running on esp32! This repo demonstrates a working hello world utilizing upstreamed tokio support for esp32. The tokio executor and I/O reactor

Josh Guilfoyle 9 Aug 7, 2023
Embedded demo based on esp32-c3

wot-esp-demo Demo Hygro-Thermometer based on the esp-rust-board. http version based on std-training Deploy Rust prerequisites Install espflash, ldprox

null 3 Dec 1, 2023
A scriptable discord bot (WIP)

Status This project is currently a VERY EARLY WORK IN PROGRESS. Contact me on discord for more details: Jonas747#0001 (105487308693757952) BotLoader (

null 26 Dec 21, 2022
Discord bot for the Tegaki Tuesday handwriting challenge 🚧 WIP NOT PRODUCTION 🚧

ε­—(じ)けゃん ε­—(じ)けゃん is the Discord bot for the Tegaki Tuesday handwriting challenge. For more information on the challenge, please visit the website. She

Elnu 0 Dec 19, 2022