Braccio Soft Start

Hi!

Has anyone successfully implemented the SoftStart function on an Arduino Braccio? (The function that prevents the servos from jumping to their initial positions.) The documentation provided is completely insufficient in regards to time delays and generally how to use the SoftStart functionality. Any help would be appreciated.

Hi @ChrisWhitt and welcome to the forum

have you seen this Braccio guide on arduino.cc?
It explains how the softstart works and how it can be disabled.

HTH
o_lampe

1 Like

Unfortunately the softstart in the Braccio guide (and all of the official documentation) does not work for me either.

I have also recently purchased a Braccio arm, and my experience with the ‘soft start’ is that it does nothing useful: the arm twitches for the duration of the soft start period (without enough power to raise up at all) and then jerks into motion to arrive at the target position.

The soft start implementations that I’ve seen (on the official Arduino Braccio and other open source project libraries) all see to do some variation of this:

long int start_time = millis();
    while(millis()-start_time < SOFT_START_DURATION) {
        digitalWrite(SOFT_START_CONTROL_PIN,LOW);
        delayMicroseconds(450);
        digitalWrite(SOFT_START_CONTROL_PIN,HIGH);
        delayMicroseconds(20);
}    

…with different ‘on’ and ‘off’ durations in each cycle. The values chosen vary, and there appears to be some sweet-spot around 80/450 or 75/430 on/off times (from the _softStart definition in the official Braccio.cpp source where the arm will twitch.

I’m not sure what the designers mean to happen here. They talk about starting the arm in a ‘low power’ mode, and the imlementation looks as though it is implementing some sort of duty cycle (?) or maybe overriding the servo signal (??).

The Tinkerkit/Braccio docs say that Pin 12 is reserved for this special purpose - so I figure that it is meant to interact with all of the servos at once. I measure ~0.8V on Pin 12, even when set as an ‘output’ pin, and I’d expect 5V there.

Please do share anything that you find. I’m drawing a blank here!