This is a welcome hardware addition. It allows one to externally trigger multiple sensors to start measurement at the same time.
Initial coding for this was done in the ULD layer, but the author considers it may be a better approach to place it (only) behind a feature, e.g. enable_sync_pin.
Reasoning
Supporting the sync pin requires hardware routing of a signal - to be able to steer the additional pin from the host MCU. If you have the pin routed, why would you not use it?
Thus, instead of dynamically giving the yes/no for e.g. entering the scan mode, the sync pin could always be enabled (or not), and feature flags are a way to provide this.
Pros
- keeps the API simple (same whether you do single, multiple boards non-sync or multiple sync)
Cons
- is there a use case where the always-on/off approach would be too limiting. Think not.
Steps
Experiment with the syncing. It mainly becomes a thing of the vl_api level, since that's where we deal with multiple boards.
Then, fall on an approach that feels best.
Initial coding for this was done in the ULD layer, but the author considers it may be a better approach to place it (only) behind a feature, e.g.
enable_sync_pin.Reasoning
Supporting the sync pin requires hardware routing of a signal - to be able to steer the additional pin from the host MCU. If you have the pin routed, why would you not use it?
Thus, instead of dynamically giving the yes/no for e.g. entering the scan mode, the sync pin could always be enabled (or not), and feature flags are a way to provide this.
Pros
Cons
Steps
Experiment with the syncing. It mainly becomes a thing of the
vl_apilevel, since that's where we deal with multiple boards.Then, fall on an approach that feels best.