Interesting reset activity on RESET_b for KL26

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Interesting reset activity on RESET_b for KL26

Jump to solution
1,559 Views
kevincuzner
Contributor II

I just assembled a board that I have created that basically acts as a breakout board for a MKL26Z32VFM4. Today, I am trying to get it to communicate over SWD so I can program the initial bootloader. I've never done anything like this before and this is basically an experiment for myself to see what it takes to go from datasheet to working device with one of these microcontrollers.

I have another microcontroller emulating the SWD interface and it might not be emulating it properly (I haven't yet actually counted the pulses to make sure it is using 50 pulses to initialize). In any case, the KL26 failed to respond when I held RESET_b low.

I decided to see if the processor was even starting, so I put the oscilloscope on the RESET_b pin when it was left floating to see what would happen. According to the datasheet, it is pulled up internally and during the boot sequence it is driven low until the processor reaches a certain state. It then releases the pin and sees if it is rising fast enough (KL26 family reference, 6.3.3). If it isn't it keeps the processor in reset mode.

I see the following waveform on the RESET_b pin (pin PTA20):

scope_0.png

This doesn't look right at all. I should see it just simply high, not making a nice RC curve between 0 and 3V at approximately 30kHz (it's really wiggly as can be seen).

My theory: It is somehow stuck in a boot loop since it is driven low quite rapidly.

I could put a resistor on the reset to raise it to 3.3V, but I'm curious as to why this is happening. There are possibly a few mitigating factors:

  • This is my very first QFN chip that I have soldered by hand. I soldered it by tinning every pad, laying down flux, setting the chip on top, and then heating up a via-connected thermal pad on the back of the board for approximately 5 seconds while tapping the chip with tweezers. It appears to have soldered well and the 3.3V usb regulator seems to be working fine (at least the voltmeter and oscilloscope say so). It is possible that I have a void somewhere or a cold joint.
  • There was an ESD incident when the device was powered off and not connected to anything. I touched it with both hands to lift the board from my breadboard and felt a slight shock. The regulator still works and the chip doesn't let out smoke or heat up when powered on, so I'm not sure what happened here and if it is a problem. I have 2 additional backups that I could use, but that would require assembling them. I swear, if this is the problem I'm going to buy an ESD strap right away (yes I'm assembling this in my apartment, on a computer desk, sitting on a carpet, and it's cold outside (i.e. low humidity inside)).

In any case, my questions are:

  • How do I properly connect the chip for SWD? It's powered on, reset held low, and SWD connected to the appropriate pins, right? Am I missing something? My SWD program outputs 50 clock cycles, issues the SWD switchover command, outputs another 50 clock cycles, and attempts to read the IDCODE register.
  • What could be causing this strange RESET_b behavior? Did I break something and have to start over?
Labels (1)
0 Kudos
Reply
1 Solution
955 Views
pgo
Senior Contributor V

Hi Kevin,

If you want an example of what to expect from a blank chip you can look at this thread:

Cannot program New MKL25Z128

Reset activity is not surprising with a blank chip although the waveform you have shown is quite different.

The "fuzziness" of the waveform may be due to the trigger point being off the screen i.e. you are observing the variation in the period of the waveform.

bye

View solution in original post

0 Kudos
Reply
2 Replies
956 Views
pgo
Senior Contributor V

Hi Kevin,

If you want an example of what to expect from a blank chip you can look at this thread:

Cannot program New MKL25Z128

Reset activity is not surprising with a blank chip although the waveform you have shown is quite different.

The "fuzziness" of the waveform may be due to the trigger point being off the screen i.e. you are observing the variation in the period of the waveform.

bye

0 Kudos
Reply
955 Views
kevincuzner
Contributor II

Thanks! That thread was very helpful as well.

I forgot to reset the delay from the last person who was using the oscilloscope. I measured again today, after resetting the delay and got a less fuzzy waveform.

0 Kudos
Reply