I need to program 8 boards with SWD interface device but I have one programmer with 4 channels.

Is it sufficient if I connect SWD lines in parallel permanently to all 8 boards and just toggle the power in groups? First four powered on, then program. Switch off first '4 group' and power on the 2nd '4 group(5-8)' and program 2nd group?

Do I need to keep the RESET low for 2nd group when 1st is being programmed or power on/off is enough?


closed as unclear what you're asking by Leon Heller, Daniel Grillo, PeterJ, Voltage Spike, Armandas Sep 6 '16 at 19:32

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    \$\begingroup\$ What kind of boards? What programmer? \$\endgroup\$ – RJR Sep 6 '16 at 9:53
  • \$\begingroup\$ the question is about SWD. The PCB board with nRF52 for example. Programmer with SWD - Algocraft. \$\endgroup\$ – Lukasz Sep 6 '16 at 11:00
  • \$\begingroup\$ Holding a device in reset will probably cause it to keep SWDIO as an input. There will be additional loading, so you might need to lower the clock frequency. \$\endgroup\$ – Sean Houlihane Sep 6 '16 at 12:47
  • 1
    \$\begingroup\$ @Lukasz How are you going to handle the output of each SWD? Connecting digital outputs is a bad idea and could result in destruction of the output driver. This question probably needs a diagram showing what you intend to do. \$\endgroup\$ – Voltage Spike Sep 6 '16 at 16:36
  • 1
    \$\begingroup\$ @Lukasz you probably need a multiplexer to communicate with each board in turn, or else you need to go through every detail of the SWD spec as customized to the MCU in question and also the electrical spec and verify no conflict with your plans. Consider one fast programmer or else four cheap ones run at the same time distinguished by the USB ports to which they are connected, or hanging off four raspberry pi's, or... just buy or contract the use of a production programmer instead of trying to build your own. \$\endgroup\$ – Chris Stratton Sep 6 '16 at 17:06

Is it sufficient if I connect SWD lines in parallel permanently to all 8 boards and just toggle the power in groups?

No. The unpowered chips will either not allow the SWD lines to go high or pull power of them if the driver is "strong" enough. Rememer that those I/O pins usually have diodes to both VCC and GND rails included.

  • \$\begingroup\$ So You answered "yes" to my question. I want to power 4 boards and program them, then power another 4 boards and program. When board is not powered then no matter what happens on SWD lines willl have no effect or side efeetcs? \$\endgroup\$ – Lukasz Sep 6 '16 at 11:02
  • 2
    \$\begingroup\$ NO NO NO. The unpowered boards - especially NRF52 - will conflict with the powered ones due to the voltage on the SWD lines providing power to all chips. \$\endgroup\$ – Turbo J Sep 6 '16 at 11:40
  • \$\begingroup\$ OK. then what can I do? Is grounding the RESET enough? \$\endgroup\$ – Lukasz Sep 6 '16 at 11:53

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