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?
I think you need to generate a reset pulse at power up, if nothing is connected to DTR connect it to ground.
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?
If you power up just one of the APRs by itself (no other APRs or Due), does it still need a reset?
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.
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
Any uCs does not need reset? Don't be spoiled by internal POR. Always use an RC reset in a commercial design, or a dedicated reset IC in an industrial design.
That'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.
I read from somewhere in a Datasheet or an Appnote, says POR (TI's MSP430 or Atmel's XMEGA-E, I can not remember it) requires monotonic ramping and fast ramping.
Some 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.
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...