Skip to content

Commit

Permalink
AP_Mount: serial backends gets instance
Browse files Browse the repository at this point in the history
  • Loading branch information
rmackay9 committed May 22, 2024
1 parent ba4fabc commit e29dfb6
Showing 1 changed file with 9 additions and 3 deletions.
12 changes: 9 additions & 3 deletions libraries/AP_Mount/AP_Mount.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,9 @@ void AP_Mount::init()
// primary is reset to the first instantiated mount
bool primary_set = false;

// keep track of number of serial instances for initialisation
uint8_t serial_instance = 0;

// create each instance
for (uint8_t instance=0; instance<AP_MOUNT_MAX_INSTANCES; instance++) {
switch (get_mount_type(instance)) {
Expand Down Expand Up @@ -98,8 +101,9 @@ void AP_Mount::init()
#if HAL_MOUNT_STORM32SERIAL_ENABLED
// check for SToRM32 mounts using serial protocol
case Type::SToRM32_serial:
_backends[instance] = new AP_Mount_SToRM32_serial(*this, _params[instance], instance);
_backends[instance] = new AP_Mount_SToRM32_serial(*this, _params[instance], instance, serial_instance);
_num_instances++;
serial_instance++;
break;
#endif

Expand All @@ -122,8 +126,9 @@ void AP_Mount::init()
#if HAL_MOUNT_SIYI_ENABLED
// check for Siyi gimbal
case Type::Siyi:
_backends[instance] = new AP_Mount_Siyi(*this, _params[instance], instance);
_backends[instance] = new AP_Mount_Siyi(*this, _params[instance], instance, serial_instance);
_num_instances++;
serial_instance++;
break;
#endif // HAL_MOUNT_SIYI_ENABLED

Expand All @@ -146,8 +151,9 @@ void AP_Mount::init()
#if HAL_MOUNT_VIEWPRO_ENABLED
// check for Xacti gimbal
case Type::Viewpro:
_backends[instance] = new AP_Mount_Viewpro(*this, _params[instance], instance);
_backends[instance] = new AP_Mount_Viewpro(*this, _params[instance], instance, serial_instance);
_num_instances++;
serial_instance++;
break;
#endif // HAL_MOUNT_VIEWPRO_ENABLED
}
Expand Down

0 comments on commit e29dfb6

Please sign in to comment.