4
\$\begingroup\$

We have designed some Atmel SAM based boards that we want to make upgradable in the field. We do not have a bootloader yet (planned in the near future) but we need to make sure they are reprogrammable before the bootloader is ready.

How can I achieve the workflow that we can give our client a tool and binary, and they can flash it into the chips? We have SWD interface on the boards. Is there any SWD based software tools for programming flash?

If not, is SAM-BA over UART a viable option?

For development we use Atmel Studio and an Atmel-ICE.

\$\endgroup\$
6
  • \$\begingroup\$ "If not, is SAM-BA over UART a viable option?" - Yes, I think it is. See here \$\endgroup\$
    – Dzarda
    Aug 18, 2015 at 9:48
  • \$\begingroup\$ The SAM-ICE that Atmel offers won't do what you need? It supports programming via JTAG and SWD. \$\endgroup\$
    – og1L
    Aug 18, 2015 at 10:54
  • \$\begingroup\$ @og1L The debugger does it with Atmel Studio, indeed. However, I couldn't find any software tool that will simply flash a given binary using Atmel ICE, without the full blown development environment. \$\endgroup\$ Aug 18, 2015 at 11:02
  • 1
    \$\begingroup\$ I think it also works with i.e. Seggers J-Flash tool. But haven't personally used it. \$\endgroup\$
    – og1L
    Aug 18, 2015 at 11:12
  • \$\begingroup\$ Problem will also be that you need drivers if you use usb as well. One company I dealt with used ZIF sockets and would send out preprogrammed chips. Obviously ESD is a problem but it may be easier than supporting the dev environment? \$\endgroup\$
    – BenG
    Aug 18, 2015 at 11:15

3 Answers 3

3
\$\begingroup\$

You can use the built in boot loader but be aware that it is unencrypted.

Check out this app note for a good treatment on boot loaders in general.

\$\endgroup\$
0
\$\begingroup\$

The atprogram.exe tool flashes a hex, bin or elf file from command line. It can be wrapped by a simple GUI to achieve what I want.

\$\endgroup\$
0
\$\begingroup\$

OpenOCD can also be used to flash hex, bin, elf:OpenOCD usage. But not sure if you can create a GUI for it on Windows. Also, this madman has flashed an Atmel SAMD21/ STM32 wirelessly by running OpenOCD on Raspberry Pi 3: STM32 OpenOCD

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.