open-ephys / bonsai-onix1

Bonsai library for the Open Ephys Onix Acquisition System
https://open-ephys.github.io/bonsai-onix1-docs/
MIT License
4 stars 3 forks source link

Port voltage tuning algorithm limitations #64

Closed glopesdev closed 6 months ago

glopesdev commented 7 months ago

Following initial tests on both the 64-channel and RHS2116 headstages, the current port voltage auto-tuning algorithm implemented in ConfigureFmcLinkController was found to have significant limitations.

For the 64-channel headstage, the link voltage settle times were found to be on the order of at least 4000 milliseconds. Given the scale of these time intervals, this will significantly impact the time it takes to do port scanning. Since these are electrical properties specific to individual headstage design, they should probably be exposed as additional configurable parameters in the link controller itself so they can be tuned per headstage.

For the RHS2116 the minimum voltage for establishing the SERDES lock (1.8V) is too low to enable full headstage functionality (minimum is 5.0V). This can be partially addressed by the VoltageOffset property, but it seems like there are additional limitations on minimum port voltage for resetting the headstage, as well as a potential requirement to do an extra context reset before the headstage can be found, both of which require further investigation.

glopesdev commented 6 months ago

Given the widely different port voltage scanning algorithms which have been empirically discovered, we discussed making the FMC link controller into an abstract base class where each headstage will be able to implement its own specific bespoke logic for configuring the port voltage without impacting implementation details of other headstages.