I've installed several Nanos with Sensor Shields (ext. Power Supply). On these shields I attached 8 to 12 Servos (9g, cheap china stuff).
Servos are attached with servo.h library, thus soft-pwm on digital pins. I write the last position to the eeprom, and on start-up the servos are set back to this position. Like that I can almost avoid jitter on startup.
Now I have the weird situation, that the Arduino sets the servos while initializing to a different position, than if pressed the reset button on the Arduino!
It's definitely not jittering, since I can see each servo after the other to be placed to its position with a programmed delay of 500ms, as intended. And I see the initializing actions on the Serial Monitor, including the correct set angle. Everything looks similar and correct.
I looks to me that the pulse width software simulation is different on power up than on reset. I don't have my code here (I'm at work); if needed, I'd be able to post this evening.
this happens on 4 different nanos, with 4 different shields of 2 different types. It happens when externally powered (12V) and also when powered by 5V over USB or Vin.
Any clues? Thank you Guido