RCServo Entity

group RCServoEntity

RCServoClass: Interface to servo entities on BrainStem modules. Servo entities are built upon the digital input/output pins and therefore can also be inputs or outputs. Please see the product datasheet on the configuration limitations.

void rcservo_setEnable(unsigned int *id, struct Result *result, const int index, const unsigned char enable)

Enable the servo channel

Returns common entity return values

Parameters:
  • id – ID assigned through “module_createStem”

  • result – Object containing aErrNone on success. Non-zero error code on failure.

  • index – The index of the entity in question.

  • enable – The state to be set. 0 is disabled, 1 is enabled.

void rcservo_getEnable(unsigned int *id, struct Result *result, const int index)

Get the enable status of the servo channel.

Returns common entity return values

Parameters:
  • id – ID assigned through “module_createStem”

  • result – Object containing aErrNone and the requested value on success. Non-zero error code on failure. The current enable status of the servo entity. 0 is disabled, 1 is enabled.

  • index – The index of the entity in question.

void rcservo_setPosition(unsigned int *id, struct Result *result, const int index, const unsigned char position)

Set the position of the servo channel

Returns common entity return values

Parameters:
  • id – ID assigned through “module_createStem”

  • result – Object containing aErrNone on success. Non-zero error code on failure.

  • index – The index of the entity in question.

  • position – The position to be set. Default 64 = a 1ms pulse and 192 = a 2ms pulse.

void rcservo_getPosition(unsigned int *id, struct Result *result, const int index)

Get the position of the servo channel

Returns common entity return values

Parameters:
  • id – ID assigned through “module_createStem”

  • result – Object containing aErrNone and the requested value on success. Non-zero error code on failure. The current position of the servo channel. Default 64 = a 1ms pulse and 192 = a 2ms pulse.

  • index – The index of the entity in question.

void rcservo_setReverse(unsigned int *id, struct Result *result, const int index, const unsigned char reverse)

Set the output to be reversed on the servo channel

Returns common entity return values

Parameters:
  • id – ID assigned through “module_createStem”

  • result – Object containing aErrNone on success. Non-zero error code on failure.

  • index – The index of the entity in question.

  • reverse – Reverses the value set by “setPosition”. ie. if the position is set to 64 (1ms pulse) the output will now be 192 (2ms pulse); however, “getPostion” will return the set value of 64. 0 = not reversed, 1 = reversed.

void rcservo_getReverse(unsigned int *id, struct Result *result, const int index)

Get the reverse status of the servo channel

Returns common entity return values

Parameters:
  • id – ID assigned through “module_createStem”

  • result – Object containing aErrNone and the requested value on success. Non-zero error code on failure. The current reverse status of the servo entity. 0 = not reversed, 1 = reversed.

  • index – The index of the entity in question.