uC needs reset after power up to work - Page 1
Forum section: electronics / beginners

author: V_King
author_rank: Regular Contributor
timestamp: January 12, 2016, 11:11:41 am
content: hello,got a system with three arduino pro minis (APR) feeding info to arduino due.the issue is after powering up, the APRs are in some sort of limbo state. I have to reset them all manually, while due is on and running to make them work. all four boards are powered from the same power supply which has more than enough voltage and current to supply for the uC needs.any ideas?

author: mij59
author_rank: Frequent Contributor
timestamp: January 12, 2016, 12:31:01 pm
content: I think you need to generate a reset pulse at power up, if nothing is connected to DTR connect it to ground.

author: mikerj
author_rank: Super Contributor
timestamp: January 12, 2016, 12:58:33 pm
content: If the Due has to be up and running when you reset the Pro-minis, then it suggests you have some kind of timing problem. What is the link between the Due and the Pro-minis, e.g. bi-directional serial link? Is the Due expecting some kind of comms from the Pro-mini boards at start-up?

author: ade
author_rank: Unknown
timestamp: January 12, 2016, 05:52:21 pm
content: If you power up justoneof the APRs by itself (no other APRs or Due), does it still need a reset?

author: heatbreak
author_rank: Contributor
timestamp: January 13, 2016, 02:06:51 am
content: Man that could be lots of things. How are you powering the APRs? Thru the VCC or Raw? And how are you activating your power supply? The reason I'm asking is because if you're turning on your power supply by switching on the AC power, then the DC connected to the APRs could be ramping up from 0V. This sometimes cause problems with some microcontrollers. That's the reason why in many commercial embedded products, there's some kind of power supervisory ic to hold the micro at reset for x number of mSecs. This ensures that when the micro comes out of reset, the VCC will be at the proper level.If you're turning on your power supply by switching on the AC, then I would try to switching on the DC output side instead.

author: Ian.M
author_rank: Super Contributor
timestamp: January 13, 2016, 02:44:58 am
content: Bullpucky. e.g. current 8 bit Microchip MCUs come up totally reliably if the internal BOR circuit and the power-up timer are enabled. More complex devices may have more critical requirements, and you must assess the need for an external reset circuit on a case by case basis

author: coppice
author_rank: Super Contributor
timestamp: January 13, 2016, 02:51:06 am
content: Quote from: blueskull on January 13, 2016, 02:18:42 amThat's a terrible idea. The internal power supervisory and brownout stuff in a well designed MCU is tailored to its needs, in terms of voltage thresholds vs clock speeds, and so on. An external reset IC is a crude tool. Also, in noisy industrial environments anything on chip is generally harder to disturb than off chip signals, even if those off chip signals are well laid out. An area where you really don't want quirks due to noise pickup is the reset line. You can cause lockups that require a full power down to recover in a lot of devices when you apply enough crud to the reset pin.

author: coppice
author_rank: Super Contributor
timestamp: January 13, 2016, 03:01:15 am
content: Quote from: blueskull on January 13, 2016, 02:53:19 amSome early MSP430s only had a POR module. Most have POR, BOR and SVS. Use those together correctly, as the clock speed is altered, and you can let the Vcc wander around all day, quickly or extremely slowly, without strange behaviour.

author: SL4P
author_rank: Super Contributor
timestamp: January 13, 2016, 03:05:17 am
content: How do you know the APR are 'not starting'?It is more likely to be some contention between the Due and the APRs.Comms initialisation startup etc.See if you can code in a status LED on the APR chips - then it will become more obvious where & when they are failing - if at all.Same for the Due - perhaps it's not listening to the APR comms for some reason.Also if it's possible they can come up out of sync, consider a reset mechanism, or watchdog to reinit the interprocessor links...