I have an SG90 mini-servo that makes a buzzing noise when it's not actively doing anything. The weird thing is, if I slightly touch the arm/blade with my finger (following the rotation direction) it usually stops buzzing until I make it move again. It's also not going "out of bounds" because:
- Apparently the rotation range is roughly 760-2000 microseconds (~172 degrees if I had to guess), outside that it'll be a "hard" buzz where it makes a load of noise and actually becomes hot to touch. So I picked something like 1300 microseconds to test.
- The noise it's currently making is a lot less loud than in 1, also it doesn't even get warm at all.
- It actually moves just fine; smooth and quick.
I'm running it off a NodeMCU dev board, which is externally powered via USB to wall socket and has a 5 volt pin for me to attach the servo to. If I attach it to 3.3V then it will always buzz no matter what I do, which is to be expected since the minimum it requires is 4.8V.
At first I thought it was just something stupid like a slightly loosened blade, but that doesn't seem to be the case after tightening the screw. Is the motor just acting up because it's (probably) a cheap replica? I've only had it for about a year and it doesn't do a lot of rotations/day so that doesn't seem likely. It hasn't always done this though, the first few months it worked fine.