v0.1.0
What's Changed
🎉 New Features
- Refactor ONIX core interface by @glopesdev in #21
- 64-channel headstage acquisition devices by @glopesdev in #29
- Add Test0 device support by @jonnew in #34
- Add support for configuring passthrough mode by @glopesdev in #39
- Provide reusable hub device naming strategy by @glopesdev in #41
- Simplify device configuration and registration by @glopesdev in #43
- Add support for configuring DS90UB9x serializer by @glopesdev in #44
- Support for NeuropixelsV2 public and beta headstages by @glopesdev in #45
- Add memory usage monitor support by @jonnew in #56
- Add harp sync device configuration and data source by @glopesdev in #51
- Support for NeuropixelsV2 BNO055 by @glopesdev in #61
- Allow dispose action on configure link and host by @glopesdev in #63
- Update FmcLinkController port voltage algorithm by @glopesdev in #65
- Refactor link controller as abstract base class by @glopesdev in #68
- Add port voltage override to base link controller and headstages by @glopesdev in #105
- Allow override of CheckLinkState implementation by @glopesdev in #124
- Add HS64 electrical stim and trigger nodes by @glopesdev in #66
- Add helper to get fully qualified hub device name by @glopesdev in #91
- AnalogIO refactoring and support for buffering and data type conversions by @glopesdev in #92
- Add DigitalIO device configuration and data nodes by @glopesdev in #108
- Neuropixels 2.0 electrode configuration by @jonnew in #113
- Support for NeuropixelsV1e headstages by @jonnew in #111
- Rename AnalogIO and DigitalIO to refer to breakout by @glopesdev in #164
- Add TS4231 data source that automatically calculates 3D positions by @jonnew in #166
🐞 Bug Fixes
- Ensure context is disposed if configuration fails by @glopesdev in #33
- Redirect initialization and dispose errors by @glopesdev in #71
- Ensure configuration actions run before start by @glopesdev in #101
- Refactor context task to allow asynchronous dispose by @glopesdev in #132
- Ensure any BNO polling exceptions are routed by @glopesdev in #126
🚀 Performance Improvements
- Group frame distribution by device address by @glopesdev in #110
- Ensure block size is set just before context start by @glopesdev in #73
🔧 Engineering
- Add license and common package metadata by @glopesdev in #82
- Read device ID from type metadata by @glopesdev in #125
- Refactor common data frame properties into abstract base type by @glopesdev in #147
- Refactor device manager to avoid reference counting by @glopesdev in #155
- Implement missing device properties and enforce argument validation by @glopesdev in #163
- Unify processor architecture and avoid exposing internal implementation classes by @glopesdev in #172
- Internalize implementation specific members by @glopesdev in #175
- Add build CI workflow with package artifacts by @glopesdev in #179
- Rename hub base class to multi-device factory for clarity by @glopesdev in #184
- Rename project to OpenEphys.Onix1 by @glopesdev in #185
- Publish packages to github on push to main by @glopesdev in #187
- Fix register mapping for Neuropixels 2.0 public probes by @jonnew in #190
- Publish packages to github on release by @glopesdev in #196
📄 Documentation
- Documentation by @bparks13 in #162
- Document TS4231V1GeometricPositionData/Frame by @jonnew in #170
- Remove geometric prefix by @glopesdev in #171
- Add missing documentation and description strings for all public classes by @glopesdev in #177
- Add functional README file by @jonnew in #183
- Minor documentation edits by @jonnew in #181
- Minor updates to documentation by @jonnew in #189
New Contributors
Full Changelog: https://github.com/open-ephys/onix-bonsai-onix1/commits/v0.1.0