IMC101T-F048 not responding to UART commands from MCEDesigner to RX0 pin

Announcements

From sunburn to sun earn – we’ve got the power! Watch our #poweringgreen videos now.

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
aneedles
Level 3
Level 3
25 replies posted 10 questions asked 25 sign-ins

Hi,

I am working on bringing up a custom board. We have a lot of experience with the IMC101TF048XUMA1 and have integrated this into our design. I am using a iMotion-Link to attach a PC to the board for programming. I am trying to establish the initial communications and to program the initial Firmware onto the IMC101TF048XUMA1.

I can see the UART signals (0-5V) arrive at RX0, pin 45 on this part, but there is no response.

I have also verified on an oscilloscope that the signal is as expected. It arrives at the pin with clean transitions, and I used the same 'scope to verify the UART signal as a series of 4 bytes from MCEDesigner - as you can see on the plot below. Here you can see the incoming signal on the bottom trace. Of course, to look for the response I also zoomed out and looked to the right and found no response from the TX0 pin 46, nor did the MCEDesigner app connected to the port.

 

aneedles_0-1659992746672.png

One thing I did notice is that the pulses measure at an equivalent of 113.2kBaud rather than 115.2kBaud. This is what the iMotion-Link generates. Is this enough to cause the signal to be rejected by the IMC101?

Any thoughts on any reason why the  device might not respond to this signal?

Here's a schematic snippet for reference. We are using 5V for power, and power is applied to the board.

aneedles_2-1659993087465.png

 

 

0 Likes
1 Solution
Viswa
Moderator
Moderator
Moderator
10 likes received 50 solutions authored 100 replies posted

Steps to Program new iMotion Controller

 

Please follow the below steps when programming a new device :

1)  Turn-OFF the 3.3v supply from iMOTION link to the controller

2) Try to establish connection using the preference --> connections tab, Press OK

3) It gives below communication error screen

Viswa_0-1670996603431.png

4.Press cancel

5.Now again open the Preference--> connection tab with 3.3V OFF on the iMOTION link.

6.Now Turn-ON 3.3V on the iMOTION link and then press OK. The connection will now get establishedViswa_1-1670996603434.png

7. Once connection is established and if it is a new chip below pop-up message will be displayed in MCE Designer

 

Viswa_2-1670996603439.png

8. Under Tools-> Programmer Select the appropriate parameter.txt file and firmware file to program the device. If chip is detected and in programming then below window will be popped up.

Viswa_3-1670996603441.png

 

View solution in original post

0 Likes
13 Replies
aneedles
Level 3
Level 3
25 replies posted 10 questions asked 25 sign-ins

I compared a EVAL-M1-101TF and how the IMC101TF048XUMA1 is powered. It uses the exact same IMC part and is powered the same (5V provided on same pins) as our board.

Is there any kind of special wakeup that depends on external pin states at power on? Maybe I am triggering something in the way I have it wired on the board? 

A bad batch of parts?  H2039 - is what both the EVAL board and my board contain.

0 Likes
LinGuohui
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 solutions authored

What stage did this happened, IMC101 didn't respond. Can IMC101 and MCEDesigner be connected? And MCEDesigner warning message?

0 Likes
Krupashankar
Moderator
Moderator
Moderator
500 replies posted 50 likes received 25 likes received

Hi @aneedles,

  1. Please remove the external wires connected for debugging.
  2. configure controller supply voltage to 5V in MCE Wizard.   Krupashankar_2-1660034948082.png

     

  3. Please try powering the board directly from iMOTION Link and remove external power supply.

Please try the above things and if the problem persists please share the error message in MCE Designer

 

Thanks,

Krupashankar

 

0 Likes
aneedles
Level 3
Level 3
25 replies posted 10 questions asked 25 sign-ins

Hi Krupashankar,

I have tried these steps, but with the same result. The board with IMC101TF048XUMA1 is now powered from the iMotion-Link (I set the Target VDD jumper to 5V) and I see the voltage on the board as 5.058V. 

From MCEDesigner I select Preferences/Connection and COM12 and press OK. After a delay, I get the following.

aneedles_0-1660069781568.png

I press Retry, but it always returns after the delay to show the same error as above.

 

I also tried Tools/Programmer and then selected Program Firmware and Parameters before pressing Start. In that case I get the following.

aneedles_1-1660069886401.png

If I repeat this with and add oscilloscope probes to the RX0 and RX1 pins at the IMC101, I see that the signal is arriving at RX0 but there is no response from TX0.

The 5V power-up appears as follows when I turn on the switch on the iMotion-Link.

aneedles_2-1660070219771.png

We are seeing these results on two equivalent boards, so it is not a fault on just one.

I have also verifed that the iMotion-Link is working by connecting it to a EVAL-M1-101TFTOBO1, and there it communicates fine over the same two pins for RX0 and TX0.

What else could be going wrong?

 

 

0 Likes
LinGuohui
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 solutions authored

1.Have you tried to use IMC101 UART1 connect to iMotion Link? Maybe the programing serial port is changed by unknow reason.

2.If all of these are not useful, It may be a hardware problem, eg PCB layout? or others.I can connect IMC101 normally, only by providing power supply(Vdd and Gnd).

0 Likes
aneedles
Level 3
Level 3
25 replies posted 10 questions asked 25 sign-ins

We're trying to do what makes sense to figure this out.

We removed the non-responsive IMC101TF048XUMA1 and replaced it with an equivalent part that we removed from a working EVAL-M1-101TF board.

We connected up the iMotion-Link as before. When we connected the USB to a PC and ran MCEDesigner, it was initially communicating great and the Tools/Developer/Serial Diagnostic returned zero errors. This confirms that we have all wiring correct between the iMotion-Link and the IMC101T.

However when we programmed the firmware and parameters using the values that had worked before, the communications hung and the IMC101T would not longer respond. We attempted the communications as before, but now it is no longer responding - just as we had seen before we replaced the IMC101T.

When we connect an oscilloscope, to RX0 and TX0, we see the signals arriving cleanly at RX0, but no response out of TX0 regardless of what we try.

This is really discouraging. Any ideas on why programming the part would have rendered it non-responsive?

0 Likes
LinGuohui
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 solutions authored

First of all, Please confim you use these Pins of iMotion Link. These we have discuss before. And we can repower up iMotion Link and IMC101 if it cann't communicate.

LinGuohui_0-1660533716359.png

And then, You can use a USB to UART tool replace iMotion Link. It's OK for MCEDesigner. So we can confim if the iMotion Link is fault.

Finnally, we can use comand instruction determine if the COM communicate is worked.

Use comand :"%MCEScript21%\iMOTIONconfig" info com19 . More information you can refer this thread:iMOTION-programming-from-the-command-line 

LinGuohui_1-1660534400673.png

 

0 Likes
aneedles
Level 3
Level 3
25 replies posted 10 questions asked 25 sign-ins

Just to be clear, the steps that I gave in my last email were as follows:
1. We removed the fully programmed and tested IMC101TF048XUMA1 chip from a EVAL-M1-101TF board and installed it on our test board.

2. We were able to communicate with this pre-programmed chip on our board via IMotion-link. MCE Designer detected the chip when power was applied to the test board. This was indicated by the status line in MCE Designer:

aneedles_1-1660585005196.png

 

3. I was also able to run the MCE Designer menu item Tools/Developer/Serial Diagnostic and this returned with zero errors. The communications between the PC and the IMC101T (through the iMotion-Link) appeared to be working well at this point.

4. Next, I attempted to re-program the firmware and parameters from MCEDesgner and after a long wait, I got the error message: "...Failed. Mode is not in Application".

5. Next, I repeated the step to re-program the firmware and parameters from MCEDesgner and after a wait, I got the error message: "Programming firmware and parameter files failed! Fail to disconnect from port!"

6. I made more attempts, but got the same result as the last step, #5.

7. After that we were no longer able to communicate in any way with the IMC101TF048XUMA1 chip via iMotion-link.

8. I connected an oscilloscope to pins RX0 and TX0 and repeated the attempt to program the firmware and parameters from MCEDesgner. I could see the UART signal reaching the IMC101T pin RX0, and it matches the expected format (UART bytes, baud rate, etc) as described in Infineon documentation. The 0V and 5V levels are good, and the voltage transitions are good. But I see no response from the TX0 pin. It appears to be floating. I mean that it appears to NOT be driven by the IMC101T.

=================

To answer your most recent post:

Yes, I am using the pins on the iMotion-Link connector that you circled: pins RXD1 and TXD1. Of course, I am also using one of the GND pins and then I am applying 5V power to one of the 3.3V pins (as required to power the circuitry on the isolated portion of the iMotion-Link from our test board).  Inside the iMotion-Link I have the Target VDD (5V/3.3V voltage) jumper disconnected for both 5V and 3.3V. I also have the external power switch turned off, so there will be no interference between the power supplies on the test board and on the iMotion-Link.

Yes, I tried using a USB to serial TTL cable to replace the iMotion-Link. The version I have outputs 3.3V to the iMotion-LInk's RX0 pin. I then used both MCE Designer and the imotionconfig.exe to attempt to communicate with the test board, but with no response. Here's what I got in response when using imotionconfig. Both commands timed out.

aneedles_0-1660584598832.png

 

I have ordered a 5V version of the USB to serial TTL cable, and I will try this tomorrow to see if that makes any difference to the operation. I don't expect it will work better, since we already see no response on TX0 when a valid signal is arriving on RX0, but I will try it.

To me, it appears that the IMC101T is getting into a mode that is not easily recovered from. The normal recovery methods do not seem to be working.

I have also done a direct comparison between the IMC110T on the test board and on the EVAL-M1-101TF board. Ground and 5V power are connected to the same pins on each board.  Gnd/VSS is on 20 and 37. 5V/VDD is on 21, 28 and 38. As is correct for the IMC101TF048XUMA1.

0 Likes
LinGuohui
Moderator
Moderator
Moderator
500 replies posted 50 likes received 250 solutions authored

I‘m trying to reproduce your problem. I disconnect IMC101T and iMotion Link during programing. And then, iMotion Link and MCEDesigner .. tools sometimes fail to connect IMC101T (IMC101T does not respond, and MCE may enter unknow mode). But IMC101T can always be detected when it is powered on again. MCE goes into the mode :Secure Bootstrap Loader Mode 0x5D or Config Mode 0xCD.

You can install the faulty chip on the EVAL-M1-101TF board. If these is no problem with this combination. I can only suggest you recheck the PCB.

0 Likes
aneedles
Level 3
Level 3
25 replies posted 10 questions asked 25 sign-ins

Hi,

Thanks for trying to replicate these failures. Here's what we have done since our last post.

We have tried numerous circuit board configuration attempts for programming the firmware on new unprogrammed IMC101TF048 with zero success on our board assembly. 
The most extreme attempt was that we cut off all the pins on the chip that had any connections on the board, except Vdd, Vss and TX0 and RX0 pins.  It would not program on our board, but this same chip was removed from our board and soldered to an eval board where it did program successfully.
We have tried programing our board with (1) the iMotion-Link, (2) a 5V serial TTL cable and (3) through a modified EVAL-M1-101TF and using it as an isolated USB to serial interface. Each of these three methods failed to program the firmware on our board. 

For comparison, we placed scope probes on the TX0 and RX0 while trying to communicate with unprogrammed IMC101TF048 on the EVAL-M1-101TF board and our board. When MCEDesigner attempted to communicate through RX0, both our board and the EVAL-M1-101TF had 00 6C signal followed by 13 7E 13 7E signal with some cross talk on the RX0 line (which appeared to be floating, not driven).  We then tried loading parameters with no firmware (which we knew would be unsuccessful) just to see the signal levels and we saw the same signals followed by 155microsecond breaks.  TX0 and RX0 voltage levels were the same for the comparison tests of unprogrammed chips on both the EVAL-M1-101TF board and our board.  We did have one instance when the EVAL-M1-101TF board would not program the firmware with the iMotion-Link when the test probes were on the TX0 an RX0 pads, but it was able to program the firmware via the on-board, isolated USB on the EVAL-M1-101TF board, after the 0ohm resistors (R110 and R111) were reinstalled. 

We unsoldered the programmed chips from EVAL-M1-101TF boards, then installed them on our board and were able to communicate with them and even run our motor, using MCDesigner using the modified EVAL-M1-101TF as an isolated USB to serial interface to our boards.

The only physical difference I can tell is that our board does not have the ground plane directly beneath the chip and some of the pins go to vias under the chip to traces on the other side.

We have a 4-layer design with a ground plane as the second layer, so there is a good ground plane under the  IMC101TF048 and other circuitry. There is also a 5V power plane the next layer below that. The power and ground vias go directly to these planes. Here is a snippet that shows the board's top layer in RED and the Programming Port connector J16 is right next to the IMC101TF048 with TX0 and RX0 only connected between the part and J16, with other connections removed as shown.

aneedles_0-1660948865477.png

We have increased capacitance (C51, C52 and C53) from power to ground to all three power inputs, but with no improvement. We have also added a more direct connection to ground for each of the ground connections to the part, but with no improvement.

We have most recently discovered that we can successfully re-program the parameters on our board if the firmware and initial parameters are already programmed on the part. This is good news. However, as stated above, we cannot program the firmware and parameters if the part is a new and unprogrammed part.

Questions: 
1.  We have a ground plane on the second board layer. On the EVAL-M1-101TF board design, we see you have a ground plane on the top layer. Would no ground plane on the top layer directly beneath the chip affect the ability of the chip to be programmed?

2. Should the scope test probes measuring the TX0 and RX0 lines during firmware programming prevent it from being successful?  If so, are there any impedance or capacitance limitations on the programming traces or wires?

3. Can you think of anything else that would affect the ability to program the initial firmware into an unprogrammed part?

0 Likes
Viswa
Moderator
Moderator
Moderator
10 likes received 50 solutions authored 100 replies posted

Hi

 

As we do not have the board, can you please help by doing a small check and let us know the result.

Is it possible to pull-up the Rx and Tx lines to 5V with a 4.7k or 10k  resistor and re-do the programming.

Best Regards, 

0 Likes
aneedles
Level 3
Level 3
25 replies posted 10 questions asked 25 sign-ins

We have set up a programming socket so we can program the IMC101T chips before installing them onto the test board.

In all cases below we are using a modified EVAL-M1-101TF board as the USB to TTL interface for programming the IMC101T chip.

We also added the resistors to our test board as you recommended, and here are the results.

1. We used the programming socket to program a blank chip with firmware and then installed this chip onto the test board.
2. On the test board, we were able to re-program parameters only. This was right before adding  the resistors.
3. Installed 4.6k resistors from 5V to RX0 and TX0 and re-programmed the parameters successfully.
4. Tried programming the firmware. MCEDesigner immediately advanced from "connecting" to "loading firmware" but locked up.
5. Replaced 4.6K resistors with 10K resistors. Subsequent attempts to program the firmware do not progress pass "connecting" and then reported failure.
6. Removed the IMC101T chip from the board and re-programmed successfully in the programming socket.
7. Reinstalled chip on the test board. Re-programmed the parameters only and tested the serial connection successfully.

So as before we are seeing that we can program the parameters successfully on our test board if the firmware is already present on the IMC101T, but we cannot program the firmware. We tried both the 4.7k and 10k resistors, but neither made a difference on our test board.

0 Likes
Viswa
Moderator
Moderator
Moderator
10 likes received 50 solutions authored 100 replies posted

Steps to Program new iMotion Controller

 

Please follow the below steps when programming a new device :

1)  Turn-OFF the 3.3v supply from iMOTION link to the controller

2) Try to establish connection using the preference --> connections tab, Press OK

3) It gives below communication error screen

Viswa_0-1670996603431.png

4.Press cancel

5.Now again open the Preference--> connection tab with 3.3V OFF on the iMOTION link.

6.Now Turn-ON 3.3V on the iMOTION link and then press OK. The connection will now get establishedViswa_1-1670996603434.png

7. Once connection is established and if it is a new chip below pop-up message will be displayed in MCE Designer

 

Viswa_2-1670996603439.png

8. Under Tools-> Programmer Select the appropriate parameter.txt file and firmware file to program the device. If chip is detected and in programming then below window will be popped up.

Viswa_3-1670996603441.png

 

0 Likes