I have an application that I can install and run on the nRF52840 dongle. But to program the dongle, I need to press the reset button and use nRF Connect. So I am looking at how to do that without pressing the reset button. DFU appears to be the key along with the DFU Trigger Library, Somehow I add these to my application and I will be able to program the dongle without pressing any buttons (the dongle may be enclosed in a pretty package that prevents access to the reset button).
Since I know nothing about DFU and how it works, the tutorials have not been much help as they assume a level of knowledge I simply don't have. So I decided to look at the open bootloader example here \examples\dfu\open_bootloader in the SDK. I tried to build it and get the cant use debug public key error. Now it looks like I have to download a slew of applications and this project to generate a public key. I would like to avoid that headache and the need to learn how all those tools work, especially since they are command-line tools. I have plenty of nice GUI tools that can generate public-private key pairs.
If I generate my own keys instead of dealing with the instructions shown here https://github.com/NordicSemiconductor/pc-nrfutil/blob/master/README.md
can I use that public key instead? What do I do with my private key? What are the requirements on these keys?
Any info/tutorials on understanding DFU from the ground up would be appreciated. I apologize for my ignorance. I am not an embedded programmer - my only expertise is Bluetooth in this line of work. Once I get outside of that I am pretty lost!
By the way, how much overhead will this add to my application? It looks like it will be more than the application itself!