Contributions:MicroLeadsADC: Difference between revisions
| Line 61: | Line 61: | ||
This parameter sets the supply voltage from a range of 4V to 9V. '''When the user is recording only, the voltage must be 4V. When the user is stimulating at all, the voltage must be 9V.''' | This parameter sets the supply voltage from a range of 4V to 9V. '''When the user is recording only, the voltage must be 4V. When the user is stimulating at all, the voltage must be 9V.''' | ||
=== | ===Stimulation Pulse Settings=== | ||
This | This group of parameters define the shape of the charge balanced stimulation pulses, as described in Fig 1. Limitations will be detailed for each parameter. | ||
[[File: |600px|thumb|center|upright=2.5|Figure 1. Pulse definition]] | [[File: |600px|thumb|center|upright=2.5|Figure 1. Pulse definition]] | ||
====Phase1 Duration==== | |||
==Device Parameters== | ==Device Parameters== | ||
Revision as of 22:10, 10 February 2023
Introduction
CortecADC is a source module that allows for inter-cranial recording and stimulating over 32 channels via a fully implantable device. It is intended for long-term measurement of neural activity and electrical stimulation of brain tissue. See the CorTec site for more information.
Versioning
Authors
- Dhruva Mehta (mehta@neurotechcenter.org)
Version History
- 2/10/2023 Initial Creation and Setup
Source Code Revisions
- Initial development:
- Tested under:
- Known to compile under:
- Broken since: --
Known Issues
Parameters
SourceCh
The total number of digitized and stored channels. Because of device limitations, this is set to 4 channels explicitly.
SampleBlockSize
Samples per channel per digitized block. Together with the sampling rate, this parameter determines how often per second data are collected, processed, and feedback is updated. For example, at 1000 Hz sampling and a SampleBlockSize of 20, the system (e.g., source signal display, signal processing, and stimulus presentation) will be updated 50 times per second.
SamplingRate
The sample rate of the system. This parameter cannot be edited, and will default to the sampling rate available from the implant which is 21500 Hz. In case you are experiencing problems by higher sampling rates (e.g., data loss, jerky display, etc.), increase the SampleBlockSize so that you are updating the system less frequently (usually, updating the system 20-30 times per second is sufficient for most applications), and increase Visualize->VisualizeSourceDecimation. This parameter will decrease the number of samples per second that are actually drawn in the Source display.
SourceChOffset
Offset for each channel.
SourceChGain
Gain for each channel.
ChannelNames
Names of each channel.
ReferenceCh
This list defines what channels will be used as reference. This list is uploaded to the device and set in hardware, effecting the raw bio-signal data that is recorded by BCI2000. If you do not want to effect the raw bio-signal data that is recorded, you can use the spatial filter. If this parameter is set to auto, no reference channels are used.
Stimulation Parameters
These parameters can be found in the "Stimulation" tab of the BCI2000 config window.
Enable STIM0
This parameter enables/disables stimulation for the STIM0 channel.
Enable STIM1
This parameter enables/disables stimulation for the STIM1 channel.
Enable Recording
This parameter enables/disables streaming of neural data.
Supply Voltage
This parameter sets the supply voltage from a range of 4V to 9V. When the user is recording only, the voltage must be 4V. When the user is stimulating at all, the voltage must be 9V.
Stimulation Pulse Settings
This group of parameters define the shape of the charge balanced stimulation pulses, as described in Fig 1. Limitations will be detailed for each parameter. [[File: |600px|thumb|center|upright=2.5|Figure 1. Pulse definition]]
Phase1 Duration
Device Parameters
DeviceInfo
This parameter cannot be edited and is automatically populated with information returned from the device, such as device type, device ID, and the firmware version.
StateInfo
This parameter cannot be edited and is automatically populated with information regarding state units and their multiplier. The device provides information such as humidity, temperature, control value, etc., which are recorded in BCI2000 states (see state information on this page for a complete enumeration of states). The device provides these values with floats, but BCI2000 states can only be integers. The multipliers defined in this parameter are used to increase the amount of precision in the state values. To approximately recover the original float values with the units defined in this parameter, divide each state by its corresponding multiplier.
States
The states encode auxiliary information returned from the Cortec implant. The device provides this data in floating point numbers, however BCI2000 can only record integers to it's states. To maintain some precision, these floats are multiplied by constants, then recorded to the states as integers. To approximately recover the original data, divide the state by its corresponding constant. Constants are shown in the following table.
| State | Constant |
|---|---|
| ImplantVoltage | 1000 |
| ImplantHumidity | 100 |
| ImplantControlValue | 100 |
| ImplantPrimaryCoilCurrent | 1000 |
| ImplantTemperature | 100 |
ImplantLostSample
The communication protocol the device uses does not re-send lost data. This state annotates what samples were lost in the bio-signal data. Currently, lost samples are made up by duplicating the previous sample.
ImplantVoltage
16 bit state that changes when new supply voltage value is received from the implant. After dividing the integer state value by the the voltage multiplier defined in the StateInfo parameter, the units are in volts.
ImplantHumidity
16 bit state that changes when new humidity value is received from the implant. Units in %rh.
ImplantControlValue
16 bit state that changes when new current control value is received from the external unit. The power of the implant is controlled by the external unit. The control value provides a measure of how good the coupling between the two coils is and how much more power can be provided if necessary. The value is between 0.0 and 100.0 percent, where 0.0 translates to no power and 100.0 translates to maximum power applied.
ImplantPrimaryCoilCurrent
16 bit state that change when new primary coil current value is received from the external unit. The primary coil refers to the coil inside the head piece of the external unit. Units are mA.
ImplantTemperature
16 bit state that changes when new temperature value is received from the implant. Units are degrees Celsius.
ImplantStimulation
Binary state that changes when the device reports that it is stimulating.
RequestedStimulation
Binary state that records when a stimulation trigger expression evaluates true. State remains true for the duration triggered stimulation. This is useful for determining the latency between when stimulation is requested and when it is actually applied. This is done by computing the difference in time between the rising edges of ImplantStimulation and RequestedStimulation states.