Jump to content

Contributions:MicroLeadsADC: Difference between revisions

From BCI2000 Wiki
Dmehta (talk | contribs)
Dmehta (talk | contribs)
Line 30: Line 30:
** This is the implantable device that can record and stimulate wirelessly.
** This is the implantable device that can record and stimulate wirelessly.
*'''Powerpad with power cable'''
*'''Powerpad with power cable'''
** This is the device that allows for wireless charging of the implantable device.
*'''Basestation with power cable'''
*'''Basestation with power cable'''
** This is the device that communicates with the implant and the powerpad by sending commands, receiving information and data, and then relaying it to the router.
*'''Wireless Router with power cable'''
*'''Wireless Router with power cable'''
** The router is require for creating an ethernet sub-network for base station ethernet communication
*'''Two Ethernet cables'''
*'''Two Ethernet cables'''
** Required to connect the basestation to the router and the router to the computer.
*'''Ethernet to USB adapter'''
*'''Ethernet to USB adapter'''
** Optional adapter if the computer you are using does not have an ethernet port. Will be needed for verification with the MicroLeads provided laptop.
*'''Laptop with MicroLeads Interface Software'''
*'''Laptop with MicroLeads Interface Software'''
** This laptop should have the interface executable to use for initial device verification. It should also have the ***stimZ_config.ini*** that has the device information and properties.


Below are figures detailing what each device looks like with labels.
Below are figures detailing what each device looks like with labels.


===Hardware Setup===
===Hardware Setup===

Revision as of 17:50, 1 June 2023

Introduction

MicroLeadsADC is a source module that allows for utilization of the MicroLeads StimZ recording and stimulation device within BCI2000.

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

Using the MicroLeads ADC

To use the MicroLeads ADC, you will need to have been provided with the basic hardware from MicroLeads. Below we will go over the mandatory and optional hardware/software parts necessary to ensure a smooth use of the MicroLeads ADC.

Setting up the Hardware

Included Hardware

The following is a list of the hardware that should have been provided to you:

  • Wireless Implant
    • This is the implantable device that can record and stimulate wirelessly.
  • Powerpad with power cable
    • This is the device that allows for wireless charging of the implantable device.
  • Basestation with power cable
    • This is the device that communicates with the implant and the powerpad by sending commands, receiving information and data, and then relaying it to the router.
  • Wireless Router with power cable
    • The router is require for creating an ethernet sub-network for base station ethernet communication
  • Two Ethernet cables
    • Required to connect the basestation to the router and the router to the computer.
  • Ethernet to USB adapter
    • Optional adapter if the computer you are using does not have an ethernet port. Will be needed for verification with the MicroLeads provided laptop.
  • Laptop with MicroLeads Interface Software
    • This laptop should have the interface executable to use for initial device verification. It should also have the ***stimZ_config.ini*** that has the device information and properties.

Below are figures detailing what each device looks like with labels.

Hardware Setup

Verifying with MicroLeads Software

Charging the Device

Verifying Device Properties

How to set up with BCI2000

Creating a Batch File

Using MicroLeads ADC

User Settings

Understanding how it works

Communication Protocol

Packet Structures

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).

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.

Device Parameters

These parameters can be found in the "Device Settings" tab of the BCI2000 config window. These settings are provided to you from MicroLeads and are set for each device. If you were also provided a laptop from MicroLeads the settings may be found by navigating to the GUI configuration file, located at <user>/AppData/Roaming/RHD2000interface/config/stimZ_config.ini

Implant StimZ address

This parameter sets sets the StimZ address of the implant for use with BCI2000. This parameter is necessary to ensure that commands sent through BCI2000 are actually sent.

The possible values for this parameter are 0-13, and it will not be the same as the Powerpad StimZ address.

Powerpad StimZ address

This parameter sets sets the StimZ address of the powerpad for use with BCI2000. This parameter is necessary to ensure that commands sent through BCI2000 are actually sent.

The possible values for this parameter are 0-13, and it will not be the same as the Implant StimZ address.

Implant Radio Frequency Channel

This parameter sets sets the radio frequency channel of the implant for use with BCI2000. This parameter is necessary to ensure that commands sent through BCI2000 are actually sent.

The possible values for this parameter are 10, 20, 30, ... 80, and it will not be the same as the Powerpad Radio Frequency Channel.

Powerpad Radio Frequency Channel

This parameter sets sets the radio frequency channel of the powerpad for use with BCI2000. This parameter is necessary to ensure that commands sent through BCI2000 are actually sent.

The possible values for this parameter are 10, 20, 30, ... 80, and it will not be the same as the Implant Radio Frequency Channel.

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

This parameter sets the length of the Phase 1 Duration in counts of 11.6 microseconds. To obtain the proper value, divide your duration by 11.6 microseconds.

Interphase Duration

This parameter sets the length of the Interphase Duration in counts of 11.6 microseconds. To obtain the proper value, divide your duration by 11.6 microseconds.

Phase2 Duration

This parameter sets the length of the Phase 2 Duration in counts of 11.6 microseconds. To obtain the proper value, divide your duration by 11.6 microseconds.

Phase1 STIM0 Amplitude counts

This parameter sets the Phase 1 amplitude for the STIM0 channel in counts of 10 microAmps. To obtain the proper value, divide your amplitude by 10 microAmps.

Phase1 STIM1 Amplitude counts

This parameter sets the Phase 1 amplitude for the STIM1 channel in counts of 10 microAmps. To obtain the proper value, divide your amplitude by 10 microAmps.

Phase2 STIM0 Amplitude count

This parameter sets the Phase 2 amplitude for the STIM0 channel in counts of 10 microAmps. To obtain the proper value, divide your amplitude by 10 microAmps.

Phase2 STIM1 Amplitude count

This parameter sets the Phase 2 amplitude for the STIM1 channel in counts of 10 microAmps. To obtain the proper value, divide your amplitude by 10 microAmps.

Charge Recovery Counts

This parameter sets the length of the Charge Recovery Duration in counts of 11.6 microseconds. To obtain the proper value, divide your duration by 11.6 microseconds.

Stim Period Counts

This parameter sets the length of the Stim Period Duation in counts of 11.6 microseconds. To obtain the proper value, divide your duration by 11.6 microseconds.

ADC Gain

This parameter sets the ADC Gain. When recording only, set the parameter to 0. When stimulating, set the parameter to 1.

Exfil_Iface

This parameter sets the exfil settings. When recording only, set the parameter to 2. When stimulating, set the parameter to 0.

See also

User Reference:Filters, Contributions:ADCs