At the concert in Central Park, New York

Science-related notes

of Naveen Agnihotri

Making hippocampal cultures

The Seung lab started making hippocampal cultures in early 2002. Because we like to study the action at single synapses, we like low-density cultures. Our fantastic technician Jung "the Healer" Choi has now worked out a recipe that yields consistently good cultures (after patiently trying out many many permutations for a year and a half). It is loosely based on the recipe of Yuki Goda (1996). Here's the rough outline:
  1. Plate about 5,000 cells per 10mm coverslip. This is a very low density, and no neurons should survive. In case some neurons do survive, you can kill them by putting the coverslips in the refrigerator overnight. Add Ara-C one day after plating, to prevent too much proliferation of glia. (Ara-C inhibits cell division, and is also used in chemotherapy for certain types of leukemias).

  2. What is left after about two weeks are glia, and because of the low density, they form "islands" (see figures below).

  3. 3-4 weeks later, plate about 10,000 cells per coverslip on top of these glia. Add Ara-C one day after plating, so that there is some new glial growth but not too much. Of the neurons that get plated, only the neurons that start growing on top of the glial islands survive, and consequently there are only a few hundred neurons left after a week.

  4. Use only glia-conditioned medium for these cultures.

The exact recipe that Jung uses to make hippocampal cultures (both postnatal and embryonic), and the solutions etc, are all found here.

We made several attempts at making embryonic cultures (as in the recipes page), but never got anything consistent. This is strange, because everyone else seems to have much better luck with embryonic cultures, eg. Bi and Poo (1998).

Our P1 cultures look (and record) the best on days 8-11. These are "island cultures", which have plenty of glial islands with a few neurons. We like to record from islands of 2 neurons for our experiments; that rules out any interactive effects. Shown below are examples of one, two and three neurons on an island. You can click on the images to see bigger versions:

Single cell on an island Two cells on an island Three cells on an island

And below on the left is another example of two cells on an island. The middle image shows the same two cells under a 40X magnification (the previous images were all under 10X) and the third image is of the same two cells being recorded. The electrodes are of about 2.5 Mohm resistance, and this was a perforated patch recording that lasted about 40 minutes. (The depth-of-field on my microscope is very shallow, so the the cells in the image on the right appear out of focus in order to make the electrodes [somewhat] clear).

Two cells 2 Two cells 2 40x Two cells 2 40x patch



Whole-cell patch clamp recording notes:


Using matlab for data acquisition

We use GNU/linux and Matlab for our data acquisition. Yes, we have really big cojones.

We use Axon Multiclamp 700A amplifiers, and Axon provides a barebones program (called Multiclamp Commander) to control the amplifier. We connect the BNC connectors on the front of the amplifier to a National Instruments breakout box (eg, the BNC-2110 or the BNC-2090), from which a SH68-68-EP connector connects to the NI PCI-6052E DAQ board, which plugs in to the PCI bus on the acquisition computer. The 6052E board has 16 analog inputs and 2 analog outputs. It also has 8 digital I/O lines, but we've never been able to get them to work under GNU/linux.

The comedi device interface library is used to do the actual low-level acquisition and output. Installing comedi is not a task for the faint-hearted, and using it requires a lot of patience and a healthy cardiovascular system. Consult your doctor.

Our in-house computer guru Alan Chen has written a C program called aoi (for Analog Output and Input) that serves as an interface between comedi and matlab.

Armed with aoi, you can write matlab subroutines in order to do actual acquisiton. Below are a set of matlab routines that can be used for acquiring data. But perhaps more importantly, they can be used to see how data acquisition can be done and you can write your own routines based on these.

aoi.c
This program does the low-level I/O to hook up matlab with comedi. You will need this program to use any of the matlab programs below. Compilation instructions are in the file itself. It creates a file called "aoi.mexglx" which matlab can understand and execute. Requires comedi to be installed and functioning.

aoi.m
This matlab routine doesn't actually do anything, but provides the documentation about how to use aoi from the matlab command prompt. With aoi.m in your matlab execution path, you can say "help aoi" on the matlab prompt in order to see how to use aoi.

axontp.m
A program that provides a testpulse (2mV in amplitude, 20msec wide) that can be used for establishing a patch-clamp seal on the cell. Monitors the output current of the cell, and plots access resistance over time. Also provides estimates of the leak current, membrane capacitance, and other patching parameters. Requires testpulse.m.

testpulse.m
A low-level program that sends out (multiple) testpulses to the amplifier, and reports back with the output and the calculations of the various patch parameters based on the waveforms. Requires vstim.m.

vstim.m
A low-level program that sends out the analog output to aoi and reports back what it finds. It does the appropriate scaling so that everyting is in the right units. Requires aoi.

baseline_acquire.m
A program to acquire a synaptic transmission baseline from a pair of neurons. The program stimulates cell 1 and reports what it finds on cell 2, and vice versa. It does this 2 times a minute, for as long as the "Stop" button is not pressed. It also allows the user to select a pair of X values on the PSC plot and then it plots the PSC value at those points over time. Requires vstimulate.m and testpulse.m.

vstimulate.m
A low-level program that sends out the a pulse to one channel (using aoi) and reports back what it finds on both channels. It does the appropriate scaling so that everyting is in the right units. Requires vstim.m.


Recording from hippocampal (etc) slices

Here is what I've learned, both from talking to people and my own personal experience:


agni@mit.edu