RoboticsBrno / ServoESP32

⚙️ Generate RC servo signal on a selected pins with ESP32 device and Arduino framework.
MIT License
131 stars 31 forks source link

servo YUKI model family SUMO 1143HB #21

Open fotosettore opened 1 year ago

fotosettore commented 1 year ago

hi this servo (SUMO 1143HB) has a mechanical 360 degree rotation. I'm testing this servo on ESP32 and using this library is not possible to obtain more than 180 degree rotation. For my use I need a 260 degree rotation I tried to modify the .h and .cpp but i'm not smart in c++, so at moment i found no solution. someone may help me to do this ? I saw a lot of video but all them make a hardware modification. I'm sure that with this kind of servo is possible to obtain 260 degree via software too. Please look the video that solve the problem without opening of servo https://www.aliexpress.com/item/1005002973104855.html?spm=a2g0o.order_list.order_list_main.19.21ef1802XnKwfL

your help is appreciated

JarekParal commented 1 year ago

Hello @fotosettore,

I checked the spec on AliExpress and the recommended PWM signal range is 0.5 - 2.5 milliseconds, which is exactly the range in our library: https://github.com/RoboticsBrno/ServoESP32/blob/master/src/Servo.h#L107

But you can try to extend the range, for example, to 0.1 - 3.0 ms and see what would be the impact:

Servo servo1;

void setup() {
    Serial.begin(115200);
    int chanell = 0;
    int minAngle = 0;
    int maxAngle = 180; 
    // the `maxAngle` doesn't have direct effect on the PWM signal, 
    // just divides the range 2900 (3000 - 100) to 180 degree steps in `write(int degrees)` function
    int minPulseWidth = 100;
    int maxPulseWidth = 3000;

    servo1.attach(servoPin, channel, minAngle, maxAngle, minPulseWidth, maxPulseWidth);
}
...
fotosettore commented 1 year ago

hi JarekParal i tried your code and i obtained only little more degrees. So I opened the servo and added two resistors as described in a youtube video. the two solutions (your code and resistors) improved all but I didn't get the result :-( however i'd like to goal without hardware modifications. So I've come to the conclusion that for 260° a native servo is needed. I bought some of them and as soon as they will arrive I will try and I will post here the test made using your library

JarekParal commented 1 year ago

Thanks for update. Please let me know when you will have new info.