The value of each element of the array corresponds to the position of a robot servo in us.

If ServoFramePololu is not specified to load the action frame file during initialization, users can set the action frame by setting the element value of this array directly.




  • myframe: the object of ServoFramePololu type.
  • channel: Specify the array element, the range is 0 ~ 44. The nth element value represents the position to be assigned to the nth Servo, please see the example below. (Note: All array elements are valid on 86Duino One; only the range 0 ~ 25 on 86Duino EduCake; only the range 0 ~ 16 on 86Duino Zero.)

Since Maestro Control Center supports up to 24-axis servos, when loading the specified action frames from its action frame file using the load() function, only positions[0], positions[1], …, positions[23] will be valid. positions[0], positions[1], …, positions[23] will contain valid values, and the rest of the array elements will be 0.




#include <Servo86.h>
Servo myservo0;
Servo myservo1;
Servo myservo2;
ServoFramePololu myframe; // declares a ServoFramePololu object
void setup()
   myframe.positions[0] = 1800; // set the action frame content
   myframe.positions[1] = 1300;
   myframe.positions[2] = 2000;
   // Set the time to rotate the servo from the current position to the position specified by myframe in 500ms, that is:
   // myservo0 rotates to position[0],
   // myservo1 rotates to position[1],
   // myservo2 rotates to position[2].
   myframe.setPositions(500, myservo0 , myservo1, myservo2);
   servoMultiRun(); // command all servos to start turning
void loop() {}

See also

Libraries Reference Home

The text of the 86Duino reference is a modification of the Arduino reference and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.

Leave a Comment

Scroll to Top