Skip to content

Commit 5353987

Browse files
authored
Provide public API to configure servo runtime. (#87)
1 parent 570b8f7 commit 5353987

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

src/Braccio++.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,8 @@ class Servo
196196
inline float position() { return _servos.getPosition(_id); }
197197
inline bool connected() { return Braccio.connected(_id); }
198198
inline void info(Stream & stream) { _servos.getInfo(stream, _id); }
199+
inline uint16_t runtime() { return _servos.getTime(_id); }
200+
inline void setRuntime(uint16_t const time) { _servos.setTime(_id, time); }
199201

200202
operator bool() { return connected(); }
201203

src/lib/motors/SmartServo.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,12 @@ void SmartServoClass::setTime(uint8_t const id, uint16_t const time)
274274
writeWordCmd(id, REG(SmartServoRegister::RUN_TIME_H), time);
275275
}
276276

277+
uint16_t SmartServoClass::getTime(uint8_t const id)
278+
{
279+
mbed::ScopedLock<rtos::Mutex> lock(_mtx);
280+
return readWordCmd(id, REG(SmartServoRegister::RUN_TIME_H));
281+
}
282+
277283
void SmartServoClass::setMaxTorque(uint8_t const id, uint16_t const max_torque)
278284
{
279285
mbed::ScopedLock<rtos::Mutex> lock(_mtx);

src/lib/motors/SmartServo.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,9 @@ class SmartServoClass
7474
void setMaxAngle(uint16_t const max_angle);
7575
void setMaxAngle(uint8_t const id, uint16_t const max_angle);
7676

77-
void setTime(uint16_t const time);
78-
void setTime(uint8_t const id, uint16_t const time);
77+
void setTime(uint16_t const time);
78+
void setTime(uint8_t const id, uint16_t const time);
79+
uint16_t getTime(uint8_t const id);
7980

8081
void center(uint8_t const id, uint16_t const position);
8182

0 commit comments

Comments
 (0)