Sobre el JTAG, no necesita un propietario, a menos que la placa que tenga tenga un conector propietario. Incluso entonces, si puede descubrir su pinout podría hacer un conector adaptador. La principal diferencia entre los proyectos JTAG abiertos / gratuitos y un producto comercial es que, más adelante, es probable que tengan velocidades más altas, lo que marca una gran diferencia según la complejidad de los programas. Hay adaptadores JTAG comerciales baratos que son paralelos / en serie, y algunos más caros que son USB; dada la opción, siempre prefiero USB.
Sobre la cadena de herramientas, es perfectamente posible usar las herramientas de GNU, (eche un vistazo a gnuarm.com) pero la desventaja es que tiene que encontrar documentación sobre cómo interactuar con el hardware específico del dispositivo; También es posible que deba preparar un script de enlace específico para el mapa de memoria de su dispositivo. Cuanto más raro / exótico sea, menos probable es que encuentre un script ya hecho. Y estos scripts de enlaces pueden ser bastante complicados. Si utiliza una cadena de herramientas comercial específicamente diseñada para su dispositivo, encontrará todo lo que ya está configurado para que funcione en el dispositivo.
También recomendaría comprar una placa de desarrollo (como esta ) para eso MCU; Será mucho más fácil hacer que todo funcione si puedes dividir y conquistar. Y tener una placa funcional probada es la mejor manera de mantener separados los problemas de software y hardware.