Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - ssokolow

Pages: [1]
Since I got tired of having to keep refreshing my memory on the procedure for updating a Retrode's firmware on Linux, I wrote a little shell script to automate the process as much as possible.

...and, being the risk-averse perfectionist with a focus on UI/UX design that I am, I also built as many safety checks into it as I could without turning it into a massive project.

I've posted it as this GitHub Gist and, in case I ever move it from there and forget to leave a note on the new location, here's the blog post I used to announce it.

It hasn't been tested on OSX but, in theory, it should work. It has been used successfully on macOS 10.12.6 and 10.13.4. (I only rely on dfu-programmer and POSIX-specified commands.)

I hope this helps someone. :)

P.S. If anyone's interested in helping me to improve this, here are the things I need help with:

  • Getting a copy of the output a Retrode 1 produces from the various "dfu-programmer at90usb646 get ..." commands to see if there's any way I can tighten the safety checks so they verify that the detected at90usb646-based device in programming mode is actually a Retrode. (I only have a Retrode 2)
  • Determining whether it's safe to automate the final "please press Reset" using "dfu-programmer at90usb646 reset", given that the instructions I worked from only explicitly warn against "dfu-programmer at90usb646 start".
  • Identifying the exact maximium filesize(s) to limit to in order to safely die with an informative "Too big to be a valid image for this Retrode" message.
  • Finding more ways to detect invalid or mismatched firmware images before attempting to write them. (eg. Is there a reliable way to tell Retrode 1 and Retrode 2 images apart by their contents, rather than expecting a human to parse the filenames?)

Pages: [1]