Hi there
And welcome here…
The Nano works because it outputs 5V PWM that the servo expects. The Xiao doesn’t. A logic level shifter or an external PWM driver (like PCA9685) will make it rock solid.
-
- nRF52840 GPIOs are 3.3V, while Arduino Nano uses 5V logic.
- The FT1109M servo is designed for 5V control signals. It may not reliably interpret the 3.3V PWM from the Xiao as a “clean” HIGH signal, especially under load.
- Grounding or Current Surge Issues
- Even with a 5V 5A supply, ground must be shared between the Xiao and the servo power supply.
- If not shared, the signal reference floats, leading to misinterpreted PWM edges.
- Also, servo motors create voltage dips/spikes; Xiao may not tolerate that as well as the more forgiving Arduino Nano.
HTH
GL PJ
Confirm that GND from the Xiao is tied to GND from the servo power supply.