Closed bbilas closed 12 months ago
Is it possible that you need to select the different MCUs on the JTAG scan chain manually?
Is it possible that you need to select the different MCUs on the JTAG scan chain manually?
Would you mind providing some more details? After every flash, I close J-Link connection. Before the flash I do something like
def __connect_jlink(self, device_id, jtag): self.__jlink.open() # self.__jlink.disable_dialog_boxes() if jtag is True: self.__jlink.set_tif(pylink.enums.JLinkInterfaces.JTAG) else: self.__jlink.set_tif(pylink.enums.JLinkInterfaces.SWD) self.__jlink.connect(f'{device_id}', verbose=True)
and the connection itself looks good. The issue is somewhere in the flash step.
I assume that the devices are all on the same JTAG scan chain. It's possible that the flashing application is configuring that for you, whereas with this library, you would have to do it yourself. I would take a look at jtag_configure
.
Sorry for the really late answer but you were right. In case of connected multiple MCUs, there is a need to call jtag_configure
.
I have a case where I want to flash 2 different MCUs using the same JLink debugger connected via USB and 1 instance of PyLink lib. I have 1 MIMXRT1062XXX6A and 2 CC1352 MCUs connected via analog muxes to the JLink where I'm able to flash only the first one, the second one stucks on
flash
method. When I change the order of MCUs I can successfully flash the first one but the second one which was working fine is nonusable.That's the log from the "second" MCU which is stucking on flashing.
I have verified hardware using JFlashLite app where I can flash all of them without any problems.
Debian buster Segger J-Link DLL version V7.86 pylink 1.0.0