+ Reply to Thread
Results 1 to 7 of 7

Thread: Can not flash new XMC1302 on custom board

  1. #1
    New Member New Member XtalJack is on a distinguished road
    Join Date
    Jul 2018
    Posts
    3
    Points
    40

    Can not flash new XMC1302 on custom board

    Hello, I am not able to flash my XMC1302 on my custom board, I'm getting "Could not connect to target. Please check power, connection and settings.". It works perfectly fine with the XMC1300 boot kit.

    Click image for larger version

Name:	jflash-error.PNG
Views:	1
Size:	38.6 KB
ID:	3536

    My setup:

    - Software: DAVE 4.4.2 and J-Flash V6.32d , works fine with the boot kit with the same MCU and pin config.
    - Hardware: SEGGER J-Link Lite-XMC4200 V1.00 (the J-Link board that comes with the boot kit). Firmware 2017 Apr 5.
    - MCU: XMC1302T038X0200ABXUMA1.
    - IC package: TSSOP-38.

    What I have done to debug:

    - Reviewed my design over and over with different methods. Everything from pins, footprints, connections etc.
    - I have soldered the IC with different solder with different temperatures. In my last attempt I went with non-lead-free solder and 245 degrees C.
    - I have checked every pin so that there's no short-circuits or open connections (except for the ones that should be there).
    - I have "reverse-engineered" the boot kit to make sure that I use the exact same setup, connections, components etc. I looked in the schematics as well as checking with a multimeter.
    - I haven't touched the IC with my hands and I'm very careful with handling it.
    - I have 4 boards that should work but all of them have the same problem.
    - I checked the documentation to see how the BMI headers are configured for new ICs and learned that the default setup is like the one in the boot kit.
    - I have verified multiple times that the programmer has the correct connection to the debug (J4) header connector and that it is the same as for the boot kit.
    - I have checked the voltage which is 3.3 V.
    - The SWD (P0.14) pin gets pulled-up which means that the SSW is executing.

    Boot kit:

    https://www.infineon.com/cms/en/prod...mc13_boot_001/

    The design:

    The design is just like the boot kit but with connections for sensors and some more stuff. I haven't soldered anything of that yet so the only connections that aren't left open is the power pins and programming pins.

    Click image for larger version

Name:	schematic-xmc1302.PNG
Views:	0
Size:	22.4 KB
ID:	3534

    Click image for larger version

Name:	schematic-xmc1302_debug.PNG
Views:	0
Size:	7.9 KB
ID:	3535

    Any ideas on how I could solve this or debug this further?
    Last edited by XtalJack; Jul 14th, 2018 at 03:43 PM.

  2. #2
    New Member New Member XtalJack is on a distinguished road
    Join Date
    Jul 2018
    Posts
    3
    Points
    40
    Update:

    I treated the IC on the boot kit the same way as the new IC I soldered on my board:

    - I removed the solder.
    - I created bridges and then fixed them.
    - I put on new solder.
    - I cleaned it as usual.
    - Repeated the above over and over again.

    The result, it is still working properly, like before.

    I also removed the IC from the boot kit completely and carefully soldered on my own. Now the boot kit has the same problem as my custom boards.

    Conclusion:

    The soldering and the design is not the problem. The problem is one of the below:

    - The flashing needs to be done differently.
    - The ICs are broken in some way.

  3. #3
    New Member New Member XtalJack is on a distinguished road
    Join Date
    Jul 2018
    Posts
    3
    Points
    40
    Update:

    I finally solved it by using the Memtool program provided by Infineon. Appearently, I got it completely wrong when it comes to which bootloader mode the IC gets delivered in. The IC needs to be flashed the first time using UART, and that's where Memtool comes in.

  4. #4
    Beginner Beginner Jee21 is on a distinguished road
    Join Date
    Sep 2019
    Posts
    3
    Points
    70
    I am having the same problem, how did you solve this one? What do you mean by "The IC needs to be flashed the first time using UART, and that's where Memtool comes in" .

  5. #5

    Infineon Employee
    Infineon Employee
    jferreira will become famous soon enough
    Join Date
    Oct 2012
    Posts
    601
    Hi,

    The XMC1 family devices come out of the factory in UART boot strap loader mode (ASC-BSL). You will need to change the BMI to SWD0 or SWD1 depending on the pins you have chosen.
    Check https://www.infineon.com/dgdl/Infine...52d0591da87d34

    Regards,
    Jesus
    The views expressed here are my personal opinions, have not been reviewed or authorized by Infineon and do not necessarily represent the views of Infineon.

  6. #6
    Beginner Beginner Jee21 is on a distinguished road
    Join Date
    Sep 2019
    Posts
    3
    Points
    70
    Regarding on changing the BMI, what hardware do I need to use. Can I change it using only the XMC1300 bootkit or do I need miniWiggler? I tried only using the XMC1300 bootkit connecting it on P0.15 and P0.14 and I also tried connection on P1.3 and P1.2 of XMC1300(Note: The pin I used on the custom board is P0.15 SWCLK and P0.14 SWD) with different setup on Infineon memtool but I can`t seem to establish a connection.

  7. #7

    Infineon Employee
    Infineon Employee
    jferreira will become famous soon enough
    Join Date
    Oct 2012
    Posts
    601
    Hi,

    Do you have installed latest JLink software?

    Having connected SWD/SCLK from the debug probe, start JLink commander
    Code:
    SEGGER J-Link Commander V6.50a (Compiled Aug 26 2019 10:17:04)
    DLL version V6.50a, compiled Aug 26 2019 10:16:19
    
    Connecting to J-Link via USB...O.K.
    Firmware: J-Link Lite-XMC4200 Rev.1 compiled Mar  1 2019 11:28:26
    Hardware version: V1.00
    S/N: 591123290
    VTref=3.300V
    
    
    Type "connect" to establish a target connection, '?' for help
    Type getbmi. You should see

    Code:
    J-Link>getbmi
    Current BMI mode: 0.
    You can change the BMI using setbmi

    Code:
    J-Link>setbmi
    Syntax: SetBMI <Mode>
    Valid values for <Mode>:
      0 ASC Bootstrap Load Mode (ASC_BSL)
      1 User Mode (Productive)
      2 User Mode (Debug) SWD0
      3 User Mode (Debug) SWD1
      4 User Mode (Debug) SPD0
      5 User Mode (Debug) SPD1
      6 User Mode (HAR) SWD0
      7 User Mode (HAR) SWD1
      8 User Mode (HAR) SPD0
      9 User Mode (HAR) SPD1
    In my case I change to SWD0, by setbmi 2
    Code:
    J-Link>setbmi 2
    Setting BMI mode 2...O.K.
    J-Link>
    Regards,
    Jesus
    The views expressed here are my personal opinions, have not been reviewed or authorized by Infineon and do not necessarily represent the views of Infineon.

+ Reply to Thread

Tags for this Thread

Disclaimer

All content and materials on this site are provided “as is“. Infineon makes no warranties or representations with regard to this content and these materials of any kind, whether express or implied, including without limitation, warranties or representations of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. No license, whether express or implied, is granted by Infineon. Use of the information on this site may require a license from a third party, or a license from Infineon.


Infineon accepts no liability for the content and materials on this site being accurate, complete or up- to-date or for the contents of external links. Infineon distances itself expressly from the contents of the linked pages, over the structure of which Infineon has no control.


Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Usage Terms of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Usage Terms of this site. Infineon reserves the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.