NatComm2020
Graphene active sensor arrays for long-term and wireless mapping of wide frequency band epicortical brain activity
Abstract:
Graphene active sensors have demonstrated promising capabilities for the detection of electrophysiological signals in the brain. Their functional properties, together with their flexibility as well as their expected stability and biocompatibility have raised them as a promising building block for large-scale sensing neural interfaces. However, in order to provide reliable tools for neuroscience and biomedical engineering applications, the maturity of this technology must be thoroughly studied. Here, we evaluate the performance of 64-channel graphene sensor arrays in terms of homogeneity, sensitivity and stability using a wireless, quasi-commercial headstage and demonstrate the biocompatibility of epicortical graphene chronic implants. Furthermore, to illustrate the potential of the technology to detect cortical signals from infra-slow to high-gamma frequency bands, we perform proof-of-concept long-term wireless recording in a freely behaving rodent. Our work demonstrates the maturity of the graphene-based technology, which represents a promising candidate for chronic, wide frequency band neural sensing interfaces.
The described code is written in Python 2.7 and Matlab 2016b. The Python code has been tested on Windows 10 using Python environment Spyder 3.3.3. Loading of the large data sets included requires the use of a large RAM (tested with 32GB RAM, although 8GB should be sufficient to test all scripts except "CalibrationRec2_ExportDatFile.py").
After installing the Python environment, install the required packages using "pip install" command followed by the package name in the system console. Required packages are:
Two separate folders contain multiple scripts; for the analysis of in-vitro characterizations (folder "in-vitro") and for the analysis of signals in-vivo (folder "in-vivo") using probe labeled as B12784O18-T3.
For the in-vitro data, the demo includes a python dictionary exported as a .h5 file (named "GmIrmsUrmsIds10Probe_2.h5"), which includes the summary data from the characterization of all ECoG arrays.
The script which generates and exports this dictionary has also been included ("CalcGM_Noise_LMU_multipleFiles.py").
The script "PlotStatistics.py" produces the graphs in Fig.2 of the present article.
A simplified version of "CalcGM_Noise_LMU_multipleFiles.py" named "CalcGM_Noise_LMU.py", can be found which does the same calculations for only 1 characterization.
This script has been used to generate the Urms maps presented in Fig. 2. The bandwidth of noise integration was changed to produce the different graphs for (1-10 Hz and 20-200 Hz).
A 1mVpk 10 Hz signal was applied at the gate in order to characterize the transconductance (Gm) of the g-SGFETs.
In order to calculate the Urms map in the 0.05-0.5Hz band shown in Fig.2, a long recording at the optimal bias was taken, which is analyzed by the script "LongRec.py" to produce the plots in Fig. 2. Expect a runing time in the order of 10 minutes.