This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nrf51822 seems fail to run the code

Hi, Nordic and all great guys,

I have a weird and terrible problem about our products,which used a MCU based on nrf51822. Some info about our product:this is a module powered by 12-24V DC power, BLE accepts commands from users and control a relay ,which will control the door lock, and a GPIO interrupt is set for a button at the inner side of the door,also control the relay,pretty simple.

The problem is that: we powered on several products for a long time ,at the beginning ,all are alive and work good, then after several days, some of them are "dead",no BLE advertising action, no GPIO interrupt response(the priority is low). However, the power supply is always working,the VDD voltage is still 3.2V to 3.3V even the product is dead. When we disconnect the power line and reconnect it , the product works again ,but we are worried that sometime in the future it will "die" again. We need these products work without any "undetectable time", until it break down totally. It seems that the MCU is going to certain kind of unknown state, the code is no longer running even the power is normal,but we have not found the cause.our code is an interrupt based program, all activity are done in the interrupt response, we have BLE,GPIO,APP_TIMER,our other products using the same program pattern have not met this problem. The attachment is our schematic diagram,maybe someone can find the problem or strange things from hardware aspect,any help and advice are appreciated, if more information needed, please add a comment below and I will reply.THANKS ALL.schematic diagram.pdf

updated 8-11: The power up voltage waveform is like this:scope_12.png

when buzzer is on, the VDD waveform is like this :scope_14.png

updated 8-22: the full PCB layout is here:Lock_control13.PcbDoc

Parents
  • Hi,

    Couple of questions. What happens if you perform a debug or firmware reset to these devices that have frozen?

    What kind of ripple do you see on the VDD line?

    How is VCC routed? We recommend that each device in the system is connected individually through a star node (so that high current draws on one device will not drop voltages for all devices), preferably this star node should have a capacitor reservoir.

    I would also try probing the reset line to see that the pull is strong enough.

    The nRF51 is only specified to source a maximum of 15 mA in high drive through gpios, are you exceeding this?

    I am also not sure that the LDO you are using is properly specced, it seems that it will in certain cases deliver more than 100 mV ripple (we require that the ripple be less than this, with increased sensitivity as the voltage drops). Set up a constant load of approx 16 mA and test the ripple.

    Best regards,

    Øyvind

  • Hi,

    Sorry it seems like this case got lost in my inbox. If you have not defined DEBUG yet I would recommend you to follow the guidelines in this post and verify that it is acutally not hanging somewhere.

    Full layout would be helpful as well, if you are uncomfortable posting this publically you can create a ticket in our closed support portal mypage.

Reply Children
No Data
Related