STM32F405RG DFU via software

I have entered DFU on my STM32F405RG featherboard by pulling the boot pin high and pressing the reset button (which is then detected by the system). I would like to do this via software complete and would like to eliminate the button clicking procedure as a whole. It would be ideal if the board could go directly into DFU at run time (via software). I read some documentation about altering NVIC_SystemReset and SysMemBootJump, but would like some more documentation and help on how to implement this. Any solutions?