AVRdude is awesome. Every programmer I own including several that are home made can all be used to program any of my projects new or old using this one little cryptic command.
There are already a swag of AVRdude frontends. I should know, for years I trawled the web lazily looking at whatever I could find to make AVRdude easier to control.
What I ended up with was a collection of different frontends, each focusing on a different AVRdude feature set while not paying much attention to the rest. The good frontend that worked with STK500 could only use mega chips. The good frontend that worked with my old at90s projects would only use UsbASP. Other frontends lacked fuse calculators and other basic features and so the story continued.
I suppose most of these frontends have been written primarily to fulfill the requirements of the author's own preferred development environment. This is perfectly understandable and to be honest I am not saying I have done anything different. Except perhaps that I do not have a preferred development environment and still use obsolete hardware as well as the really new stuff making my requirements somewhat broad.
Recently I had been coding an AVR project and a C# support application alongside. So it transpired that I could not program my new late-model hardware using any of my collection of frontends, even though AVRdude was perfectly able. At that point I lost patience. I set the whole lot aside and began coding my own frontend.
"Handle anything" was the one major requirement. This meant the fuse calculator needed to know all fuses for all devices. Obtaining this information without vast effort required some cunning coding, sneaking into AVR Studio's backyard and peeking in the tool shed. You can try the database builder for yourself to see it in action.
Some time back I had created a custom programmer UI for a home made embedded web server. One of the ideas I tinkered with was automatic uploading of the flash file when a file watcher detected any change. This would save window jugglings on my small laptop whenever I wanted to upload. This worked really well for me. Despite my initial misgivings there were very few misfires and consequently very little unnecessary flash wear and compile/upload was reduced to a single click without ever leaving the IDE. It felt natural, which led me to reckon I might be on to a winner.
To summarize:
BitBurner exposes pretty much all of AVRdude's functionality.
The fuse calculator is comprehensive and complete.
A powerful automation tool has been included.
This is the AVRdude frontend I have been waiting for, all I really needed to do was write it.
Still early days, much of this is yet to be proven. You will let me know if I forgot anything? Cheers.