Hay algunos escenarios en los que un cargador de arranque no añade mucho valor. Tienes razón, si tienes un par de placas, ciertamente puedes conectar el programador y flashear el código de nuevo. Si eres un aficionado con un par de placas o incluso tienes una pequeña producción puedes hacerlo de esta manera.
Los cargadores de arranque tienen más sentido en escenarios donde conectar físicamente un programador sería menos práctico. Los productos terminados que ya están desplegados, por ejemplo, es uno de esos escenarios
Generalmente cuando tienes un producto electrónico no dejas expuesto un puerto de "depuración" o "programación". Sólo tienes como una Ethernet, o serial, o RS485, o CAN o inalámbrico en tu producto.
¿Y qué pasa si tienes varias decenas o quizás cientos de ellos ya vendidos/desplegados y tienes una actualización de firmware?
En lugar de ir uno por uno abriendo las cajas, conectando el programador, programando, cerrando la caja del producto y así sucesivamente, puedes usar una de las interfaces existentes de tu producto actual para programarlo.
Es incluso mejor cuando tienes "conectados" dispositivos con por ejemplo ethernet o cualquier tipo de inalámbrico. Si pones un módulo inalámbrico en cualquiera de tus productos puedes usar esa comunicación inalámbrica con un cargador de arranque para actualizar el código, de esta manera puedes actualizar varios dispositivos al mismo tiempo y sin tocarlos.
Y se convierte en una característica de ensueño si sus dispositivos están conectados a Internet. De esa manera, puedes actualizar el firmware de todo con un solo clic, mientras tu teléfono recibe sus actualizaciones.
Para un aficionado tal vez no tenga mucho sentido usar un cargador de arranque, pero desde una perspectiva empresarial en la que realmente se venden dispositivos tiene mucho sentido ya que ahorra tiempo, añade mucha comodidad al proceso y si sus usuarios tienen contacto con su dispositivo no tiene que venderles programadores sólo para actualizaciones de firmware (o hacer que compren los programadores de otra manera). ¿Y si sus dispositivos son los mismos funcionalmente pero con diferentes microcontroladores? Tendría que determinar quién tiene qué para enviar o vender el programador correcto, ¡¡¡se convierte en una pesadilla!!
En lugar de esto sólo le pones un puerto USB y todo se oculta al usuario, todo el mundo sabe cómo conectar un USB al PC, copiar un archivo en él y adjuntarlo a otro dispositivo, pero ningún usuario normal sabe qué diablos es un depurador P&E, un PICKit o un Segger J-Link.
Lo siento si esto es un poco confuso, el inglés no es mi idioma y tal vez la redacción es un desastre, pero espero que capte la idea.
¡Salud!