[SOLVED] Segger Flasher ARM can't connect to Cypress' PRoC CYBLE-022001-00

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • [SOLVED] Segger Flasher ARM can't connect to Cypress' PRoC CYBLE-022001-00

    Hi everyone,

    2 years ago, we used a Segger Flasher Arm as a production tool for programming CYBLE-022001-00, and it worked really well. Then, the programmer stayed on the shelf for ~1.5 years and now it does not work.

    We reprogrammed it with the same config, but the Flasher says it can't connect to the microcontroller. However, if I program the MCU first with a PSoC Programmer, I can then connect to it with the Segger Flasher ARM without any problems.

    It seems like we have the same problem as this thread: forum.segger.com/index.php?page=Thread&threadID=2945

    Since it worked two years ago but not right now, is it possible that the Flasher is damaged? If not, can you tell me some debugging steps I can do to fix this problem?

    Thank you,

    Fred
  • Hello Fred,

    Thank you for your inquiry.
    Such an issue is not known to us.
    Are you trying to program custom hardware or an eval board?
    What target device are you selecting for connection?
    Could you try to connect to the target device using the J-Link commander and post a screenshot of the connection? wiki.segger.com/J-Link_cannot_…ty_using_J-Link_Commander

    Does that generally work?
    Could you attach the config file you are using for programming?

    Could you also attach a J-Link log file of the failing connection? wiki.segger.com/Enable_J-Link_log_file
    And in comparison to that when it works after using the PSOC Programmer?

    Best regards,
    Nino
    Please read the forum rules before posting: Forum Rules

    Keep in mind, this is not a support forum. Its main purpose is user to user interaction.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • Hi Nino,

    • Are you trying to program custom hardware or an eval board?
    It is custom hardware.

    • What target device are you selecting for connection?
    We select the CYBL10xxx device, as our own is not listed (CYBLE-022001-00), but the CYBL10xxx has the same amount of Flash (128k) and RAM (16k) as our device. I also tried the CY8C4127xxx.

    • Could you try to connect to the target device using the J-Link commander and post a screenshot of the connection?
    I attached a screenshot of the J-Link Commander window that can't connect ("J-Link Commander can't connect.PNG").

    • Does that generally work?
    J-Link can't connect. However, it did two years ago.

    • Could you attach the config file you are using for programming?
    I can't attach the config file, as it contains our .hex. However, as said in the forum I posted, it's probably because the SWD pins of the Cypress' chip are configured initially in GPIO mode, instead of in SWD. Thus, my problem could be replicated with any other valid .hex.

    • Could you also attach a J-Link log file of the failing connection?
    I have attached a LOG file ("JLinkARM didn't work.log.txt") of what happens when I try to program the PRoC using the Flasher. I didn't attach the log file of when it works after I've programmed it with the PSoC Programmer, as the LOG file looks like it prints the .hex data. However, I attached a screenshot of the JFlash window after it successfully programmed the PRoC ("JFlash worked - redacted.png").

    I hope that helps troubleshooting the problem.

    Thanks,

    Fred
    Images
    • J-Link Commander can't connect.PNG

      46.33 kB, 652×1,160, viewed 230 times
    • JFlash worked - redacted.png

      54.63 kB, 909×702, viewed 250 times
    Files
  • Hello Fred,

    The CYBLE device series is not officially supported. Selecting a "similar" device with same RAM/ROM will not do the trick as especially Cypress devices behave very different even within the same device family.
    When testing on a CYBLE-214009-EVAL board I could only connect to it if I selected generic Cortex-M0 as the target device. This should be working with your board currently as well.
    We will get in touch with Cypress as they usually provide the support files for J-Link and see if support can be added.

    Best regards,
    Nino
    Please read the forum rules before posting: Forum Rules

    Keep in mind, this is not a support forum. Its main purpose is user to user interaction.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • Hi Nino, thank you for the answer.

    Unfortunately, selecting a generic M0 does not work for me, even after I have programmed it with the PSoC Programmer. I get a "Selected data does not fit into selected flash sectors" error, and I can't connect to the MCU either.

    The same setup that we used 1.5 years ago does not work now, with the difference being that the Segger Flasher ARM stayed on the shelf for 1.5 years.

    Have you looked at the forum post that I included in my first comment? This problem looks a lot like ours. It seemed that the problem was fixed at that time in version 5.10p of JFlash, but I tried this version and the newest and I still have the problem.


    Thanks,


    Fred
  • Hello Fred,

    For clarification, if you select generic Cortex-M0 only the connect might work, not programming as the generic device does not have a flash loader.

    The same setup that we used 1.5 years ago does not work now, with the difference being that the Segger Flasher ARM stayed on the shelf for 1.5 years.


    Are you certain that you are using 100% the same setup? Same PC, Software Versions, Drivers, Hardware etc.?
    If not try to revert to your working setup.

    Have you looked at the forum post that I included in my first comment? This problem looks a lot like ours.

    Yes and the thread handles a completely different MCU. It has nothing to do with your case.

    As I said, we will get in contact with Cypress to add support officially. If it ever worked before it was by pure luck and it was not intended.
    We do not recommend to select some random device that sounds similar or "might" fit when trying to program Flash as that way the target hardware can be permanently damaged.
    Only program supported devices. Anything else is on your own risk.

    Best regards,
    Nino
    Please read the forum rules before posting: Forum Rules

    Keep in mind, this is not a support forum. Its main purpose is user to user interaction.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • Hi Nino,

    Thank you for the time you're taking to help me.

    It was the same setup. The Flasher ARM was on the shelf for 1.5 years, and when we plugged it back (no computer, only using the config file that was in it), it did not work anymore.

    Now, of course, I'm debugging at my station, so the firmware in the Flasher has been updated, and the version of JFlash is not the same (although I did try the same as before).

    I disagree when you say that the forum I attached is completely unrelated.

    The MCU they used is CYBL10461-56LQXI (PRoC with BLE)
    The MCU we use is CYBLE-022001-00 (PRoC with BLE)


    So while their MCU is more powerful, they're still both PRoC for BLE, and both use SWDIO for programming, with an XRES pin.




    I understand that this is not a supported device. I'm however stumped that something that worked 1.5 years ago just stopped working, without the Flasher being updated.


    Thank you,


    Fred
  • Hi Fred,

    Please understand that we cannot provide any support for not officially supported devices. Even if we wanted, we cannot provide support due to a lack of hardware (this is why we do not officially support it right now). What we can offer is the following: If you provide us with hardware + manuals, we can add support for it in future version. However, please note that our resources are booked for the next few weeks / months so we cannot squeeze this in short term thus it may take some weeks / months until official support will be available.

    If you need support for this device short term, we recommend to add flash programming support on your own using the SEGGER Open Flashloader:
    wiki.segger.com/Adding_Support_for_New_Devices


    Best regards
    Erik