jamesmunns

Doing embedded stuff

Be nice, work hard. Build tools, tell stories. Start five year fights. Kein Ort für Nazis.


A list of all the other services I'm on around the internet


Posts with code highlighted with codehost by @wavebeem.


All posts licensed under CC-BY-SA 4.0, unless otherwise stated.


asciicast

This is my ramloader tool. In this demo, it does this sequence twice (once on command, then I hit save so it retriggers):

  • connects to the nrf52 over USB, figures out an app is running, sends a "reboot to bootloader" command (the nrf52 then disconnects)
  • reconnects, uploads the program, sends a bootload command (that's actually two separate connections lol)
  • waits for the device to re-enumerate, then exits

Rust takes 2.0 seconds to recompile the project with no changes, then my loader tool takes 1.3 seconds.

So 3.3 seconds after you hit save, your new firmware is running.

Pretty happy with that.


You must log in to comment.

in reply to @jamesmunns's post:

Hi! I really enjoy your posts!

I'm looking to get into embedded rust, and want to use this (and the project ideas I have) as a vehicle to gain a better understanding of the language. Would you know of a good resource where I can get started? I know this may not be enough context to work on, and maybe my beginner-ish rust skills won't be sufficient to do basic embedded stuff, but I am definitely curious to try!