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 (https://gist.github.com/ssokolow/2c121880e65e665ee34da6210f2e2e22) 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 (http://blog.ssokolow.com/archives/2017/09/29/a-simple-update-your-retrode-on-linux-helper-script/).
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 (http://www.retrode.org/documentation/firmware/) 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?)
I tried out this script on my Mac with macOS Sierra (10.12.6) and it successfully updated my Retrode 2 to the 0.23 firmware. Thanks! :)
Quote from: Lennart on 13/Nov/2017 07:07:38 PM
I tried out this script on my Mac with macOS Sierra (10.12.6) and it successfully updated my Retrode 2 to the 0.23 firmware. Thanks! :)
Happy to hear it. :)
I've updated the initial post's comment about macOS accordingly.
Quote from: hernan43 on 05/Apr/2018 04:32:35 PM
I used this script on Mac OS X 10.13.4 and it worked great.
Thanks for telling me. I've updated the top post to mention that.