16s rRNA Colony PCR – The Orange Mystery Bacteria

Orange Mystery Bacteria

Orange Mystery Bacteria

One of the scientists at BOSSLAB found a bright orange bacterial contaminant in his yeast samples.  Since I am interested in pigments and colors, I though it would be fun (since it was already growing in the lab) to sequence the 16s ribosomal DNA to try to identify the species.  I have a few notes on the protocol, troubleshooting, and what you should see if you try it.

Materials For Reaction:

Really any DNA polymerase will work, but I used the NEB 2x OneTaq mastermix.

PCR Settings:

  • Heated lid ON
  • 10 min Denaturing at 98C

35X cycles of:

  • 95 C for 30s
  • 55 C for 60s
  • 68 C for 3 min

1x final extension at 68 C for 10 min, hold at 4C.

Troubleshooting:

 

not what you want to see.  purple dye ~300 bp

not what you want to see. purple dye ~300 bp

I ran my first attempt at this protocol with a shorter 1 minute extension.  This was bad- the region of interest here is ~1.5kb, so at 1kb/min for your typical Taq polymerase, we would require at least 1.5 minutes.  I doubled that since I had plenty of time.  As you can see in this gel, the shorter extension time meant that I got some pretty small fragments, of varying sizes.  They migrated near the dye, which is at about 300bp.

 

2 log ladder on left, samples in lanes 2, 3, 4

2 log ladder on left, samples in lanes 2, 3, 4

With an extension of the extension time from 1 minute to 3 minutes, you can see that my bands are now sharp, and the right size- about 1.5 kb!

Mystery Resolved!  The bacteria is closely related to Sphingomonas aquatilis!  You can read about it on microbe wiki.  It is pretty cool, and is known to break down a lot of tricky carbon compounds, particularly ones that people consider pollutants.  It is also vividly yellow/orange, from its carotenoid pigments.

For your BLAST-ing pleasure, I have included the sequencing data below.  These were generated using the 8F and 1492R primers.

>16S-SAMPLE1-8F
GTCGCCTGCCTCTCTTGCGAGTTAGCGCAACGCCTTCGGGTGAACCCAAC
TCCCATGGTGTGACGGGCGGTGTGTACAAGGCCTGGGAACGTATTCACCG
CGGCATGCTGATCCGCGATTACTAGCGATTCCGCCTTCATGCTCTCGAGT
TGCAGAGAACAATCCGAACTGAGACGGCTTTTGGAGATTAGCGCACTCTC
GCGAGTTTGCTGCCCACTGTCACCGCCATTGTAGCACGTGTGTAGCCCAG
CGCGTAAGGGCCATGAGGACTTGACGTCATCCCCACCTTCCTCCGGCTTA
TCACCGGCGGTTCCTTTAGAGTCCCCAACTAAATGATGGTAACTAAAGGC
GAGGGTTGCGCTCGTTGCGGGACTTAACCCAACATCTCACGACACGAGCT
GACGACAGCCATGCAGCACCTGTGTTCCAGTCCCCGAAGGGAAGGAGTCC
ATCTCTGGAAACCGTCCGGACATGTCAAACGCTGGTAAGGTTCTGCGCGT
TGCTTCGAATTAAACCACATGCTCCACCGCTTGTGCAGGCCCCCGTCAAT
TCATTTGAGTTTTAACCTTGCGGCCGTACTCCCCAGGCGGATAACTTAAT
GCGTTAGCTGCGCCACCCAAAGACCAAGTCCCCGGACAGCTAGTTATCAT
CGTTTACGGCGTGGACTACCAGGGTATCTAATCCTGTTTGCTCCCCACGC
TTTCGCACCTCAGCGTCAATACCAGTCCAGTGAGCCGCCTTCGCCACTGG
TGTTCTTCCGAATATCTACGAATTTCACCTCTACACTCGGAATTCCACTC
ACCTCTCCTGGATTCAAGCGATGCAGTCTTAAAGGCAATTCTGGAGTTGA
GCTCCAGGCTTTCACCTCTAACTTACAAAGCCGCCTACGTGCGCTT

>16S-SAMPLE1-1492R
CTTCGGATCTAGTGGCGCACGGGTGCGTAACGCGTGGGAATCTGCCCTTT
GGTTCGGAATAACAGTTGGAAACGACTGCTAATACCGGATGATGACGTAA
GTCCAAAGATTTATCGCCAGAGGATGAGCCCGCGTAGGATTAGCTAGTTG
GTGTGGTAAGAGCGCACCAAGGCGACGATCCTTAGCTGGTCTGAGAGGAT
GATCAGCCACACTGGGACTGAGACACGGCCCAGACTCCTACGGGAGGCAG
CAGTGGGGAATATTGGACAATGGGCGAAAGCCTGATCCAGCAATGCCGCG
TGAGTGATGAAGGCCTTAGGGTTGTAAAGCTCTTTTACCCGGGATGATAA
TGACAGTACCGGGAGAATAAGCTCCGGCTAACTCCGTGCCAGCAGCCGCG
GTAATACGGAGGGAGCTAGCGTTGTTCGGAATTACTGGGCGTAAAGCGCA
CGTAGGCGGCTTTGTAAGTTAGAGGTGAAAGCCTGGAGCTCAACTCCAGA
ATTGCCTTTAAGACTGCATCGCTTGAATCCAGGAGAGGTGAGTGGAATTC
CGAGTGTAGAGGTGAAATTCGTAGATATTCGGAAGAACACCAGTGGCGAA
GGCGGCTCACTGGACTGGTATTGACGCTGAGGTGCGAAAGCGTGGGGAGC
AAACAGGATTAGATACCCTGGTAGTCCACGCCGTAAACGATGATAACTAG
CTGTCCGGGGACTTGGTCTTTGGGTG

 

BlueGene: The Re-PCRing (and Re-Digesting)

pcr gel ii crop

Following this weekends failed restriction enzyme digest, I thought I would try again with  no heated lid, and with a longer incubation time.  I am using HindIII-HF, so I can apparently let it sit overnight without too much star activity (non-specific cutting).  Since I used quite a bit of my PCR product last time around, I thought it would be a good idea to re-PCR my gblock.  After a picture-perfect gel (above)

20150601_223227

Speaking of pictures, here is how I do my gel documentation.  I just shoot my Canon SL1 through an orange piece of acrylic, at the gel.  I set stuff up roughly like this, then I turn off all the lights and take a long exposure.  With this method, I have been able to visualize 100ng samples of DNA regularly, although you can also see bands of half that mass.  I am wary of claiming I can visualize a band below 100ng since it was very faint and I had the aid of another identical lane later in in the gel when I did it, so it was easy to pick out against the background, which let me adjust the exposure to get a better picture of the band.

Anyway, I just put in my digest to run overnight at 37C.  I will heat-inactivate it at 80C for 20 minutes when I get back to the lab, and run it on another gel!  Time to go home!

BlueGene: A Restriction Enzyme FAIL!

It actually took me a day or so to accept my restriction digest had failed, and it took me a few hours to guess why it did not work.  What I wanted to do was digest my plasmid and my gene with HindIII (in separate reaction tubes).  This would leave HindIII sticky ends on both.  At the same time that I was digesting the plasmid, I wanted to also dephosporylate it so it would not re-circularize  (stick to itself during ligation).  To verify that I cut the gene and the plasmid, I ran them on a 2% gel.  I expected that if I ran to the end of the gel, I could get separation between the cut and uncut genes, as the difference is about 150 bp.  I also expected the uncut pUC19 plasmid to run much faster than the cut pUC19.  Alas, this was not the case.

Gel Analysis:

lanes numbered from right to left.  2% agarose gel, with safe gel stain

lanes numbered from right to left. 2% agarose gel, with safe gel stain

What a mess.  Seriously, this is a pretty gnarly gel.  Anyway, from left to right the loaded lanes are:

  1. 2 log ladder
  2. un-cut bg fragment
  3. empty
  4. empty
  5. cut bg fragment 1
  6. cut bg fragment 2
  7. pUC (way overloaded…)
  8. cut pUC A
  9. cut pUCB

As you can see, the cut fragments of pUC ran faster than the uncut fragments. This is very suspect, since the supercoiled plasmid DNA should be “smaller” than the cut DNA.  It was not a small amount either, it looks like it ran somewhere between 1k or 500 bp faster.  This could be due to over loading but it is not a good sign.

The cut fragments of the gene did seem to run a little faster, but the gel is so gnarly it is hard to tell.  They do look like maybe they got cut, but it is hard to tell when the bands are so misshapen and far apart.  It would be no good to try to ligate them to an un-cut plasmid.  So I need to troubleshoot this step.

What Is Wrong:

I strongly suspect that my restriction enzyme digest was foiled by the heated lid of the pcr machine.  It heats by default to 114C or so, to prevent condensation on the lids of the tubes as you get up to 98C or so.  I had it on at full blast- the inactivation temperature for HindIII is 80C, and  I used the “time saver” protocol and only digested for 30 minutes.  So what did not get inactivated had little time to get its enzymatic work done.

BlueGene: Amplification of gBlock Fragment

IMG_6241

I have finally received my gBlock shipment from IDT.  A gblock is guaranteed to be 200ng, which is a little nerve wracking to work with- it is not a small amount of DNA, but it is not a huge amount of DNA either.  A colleague at BOSSLAB suggested that I add PCR priming sites to the end of the synthesized DNA, to let me amplify it before diving into cloning.  This post explains how I amplified it, and what kind of yield I got, and how I tested that I got the “right thing”.

I chose to add standard 17-mer universal primers to my sequence, so along with my gBlock, I got two tubes of primers.  I chose to use Q5 polymerase because it is the highest fidelity polymerase that NEB sells.  For a “typical” PCR reaction, NEB recommends re-suspending primers to 10uM, and using less than 1000ng for template.  Since all my DNA was shipped dry, I needed to first resuspend my samples to the proper concentration, then run PCR and verify that I had made the correct product.

Resuspension:

IDT conveniently tells you how many nanomoles you have been shipped.  To get a 10uM concentration all you have to do is add as many ml as you have nanomoles, since 1 nanomole per milliliter is 10uM.  So, after a brief (5 seconds or so at 5k) spin to make sure all the dry DNA is at the bottom of the tube, then I added some water, at 1ml per nanomole.  Unfortunately, I had 3 or so nanomoles- and the tubes can barely fit 2.5 ml.  So I resuspended in 1ml of water, split the resuspended DNA into an extra tube, and then brought both tubes up to the correct 10uM concentration.  IDT ships you a lot of primer if you order custom oligos.

Resuspending the gBlock was a little scarier.  Unlike the primers, the gBlocks are not visible in the tube (as far as I can tell).  So after a quick spin, I shot 20ul into the bottom of the tube and pipetted up and down to mix.

PCR:

With everything resuspended, it was time to set up the PCR!  Fortunately, NEB has awesome protocols on their website, so it was easy to set up.  The Q5 even comes in a 2X master mix, so it was easy to pipette!  I made two 50ul reactions:

  • 25  ul 2x Q5 poly master mix
  • 2.5 ul m13 forward primer (10uM)
  • 2.5 ul m13 reverse primer (10uM)
  • 1.0 ul template DNA (10ng/ul)
  • 19  ul PCR water

The PCR program was run with a pre-heated lid (114C) and a hot start (98C).  The annealing temperature was determined with the NEB Tm calculator.  I ran 30 cycles of:

  • 30s detnaturing at 98C
  • 15s annealing at 57C
  • 45s extension at 72C

There was a final extension of 72C for 5 minutes, and then a final hold at 4C.

Gel Analysis:

pcr gel

A 1% agarose gel with 5 ul of 20,000X “Safe DNA Gel Stain” (from bioland scientific, via the odin) was prepared.  Four lanes were run- 5 ul of 2 log ladder in purple dye, PCR product 1 and 2, and then 1 ul of 2 log ladder in purple dye.  The PCR product was expected to be 1k3 bp, and you can see it right in between the 1.2 and 1.5 kb bands in the 2 log ladder.

For those interested in how sensitive the DNA stain is- those bands on the bottom are from NEBs 2 log ladder.  From left to right, the first band is about 40ng/ul.  As you know, the top band has 5 ul of ladder loaded, while the bottom has 1 ul of ladder.  That means  this is a photo of the position of 40 ng of DNA.  I was impressed by the sensitivity, especially because this was not shot under ideal conditions- I did this in a dark corner of a room, under the shade of some paper I found lying around.  With a better setup, I think the 40ng bands could look even better!

The very observant reader may notice some faint bands in the second lane from the top, which correspond to the ladder on the top.  This gel tore across the lanes when I separated it from the casting apparatus, and I think some of the top lane leaked into the neighboring lane.  Fortunately, the PCR products are in a different position and at a different intensity than any of the ladder bands, and UV spectrometry verified that there was DNA that was amplified.

DNA Quantification by UV Spectrometry:

IMG_6239

While we do not have a nanodrop, we do have a genequant.  Just like a nanodrop, it is a UV spectrometer that is specifically designed to quantify DNA/RNA in samples.  Unlike a nanodrop it requires at least 50 ul of sample for the cuvettes that we use.  Since the DNTPs and proteins left over from a PCR reaction will also absorb UV wavelengths, and because PCR buffers and enzymes can have non-specific and unwanted activity later on, there is such a thing as a “PCR cleanup kit”, to extract out the product of your reactions.  Unfortunately, this kit will also concentrate the reaction products into smaller volumes, around 25 ul.  I combined the two samples eluted from the cleanup kit and measured them in the spectrometer, which told me I had .071ug/ul, or 3.5 ug total.  That is about a 350 fold increase in DNA!  I thought that was pretty good.

With PCR product in hand, the next steps in cloning involve cutting, de-phosphorylating the backbone, and ligating the insert into the backbone.

Kodak UltraMax 400 vs Fuji Superia 400

I have been shooting and scanning film on a regular basis for about a year now, so I thought that I would weigh in on the two most widely available cheap films, koduak ultramax 400 and fuji superia 400.  Both are available at CVS/Walgreens/Rite aid, occasionally in overpriced rolls, or even higher priced disposable cameras.  In fact, this post was spurred by my friend using one such camera, and me remembering that UltraMax exists.

Whatever way you decide to go after this review, my recommendation is to go online and find where you can buy it in bulk- I have found if for as low as about 2.50 per roll (fuji) and 2.00 per roll (kodak).I use film to capture things and people I find interesting, but I don’t take pictures every day.  I use an Olympus XA, which floats around in my bag and gets fished out every now and then for a photo.  I carry a small tripod, but 400 speed film is a must for low light (which is most of Boston) and fast shooting.  The result is that I don’t carry around a mess of filters or flashes to get everything perfect.  Below is a comparison of the film in three different and common situations: indoor lighting, outdoor lighting, and “pushing” to iso 800 (underexposing one stop).

Indoor, Fuji wins hands-down.  The kodak film has a tendency to have a nasty greenish-yellow tinge under fluorescent lighting.  Some film folks would say “its just a matter of kodak filter #x”, but unfortunately I don’t carry those around with me.  Indoors, Fuji is ok if ia little less “poppy”.  Some might characterize this as “balanced”.Outdoor

I would say this is a tie.  Kodak has really really vivid colors, but fuji is no slouch here either.  Kodak seems to blow the colors out- check out that flower!  But at the same time, the pavement has a reddish hue.  Fuji is more balanced again, and tends to render beautiful clouds and skies, among other things.

Stuff starts to get weird when you underexpose your film, but sometimes if you are somewhere dark, like Boston (outside) or inside (subway station), and your are taking your shot hand-held, you don’t have many options.  Fuji gets more-fuji-y underexposed and can be a little cool and muted.  Kodak just gets kind of grainy.  Since I do this a lot, I go with cool and muted rather than grainy.  It really helps people, and fast moving imagery at a reasonable shutter speed.

Winner:The winner is…Fuji!  Kodak is ok, and it is a few cents cheaper, but its poor color performance and less than ideal underexposure characteristics make it less desirable for my use.  But who knows- maybe it is just what you want.  And in this day and age, you can just photoshop away the yellow, and keep using badass film cameras like the Olympus XA (my favorite camera).

Scrolling NEOPIXEL Leds

This post brought to you by the letter H, and the dev board Tessel

This post brought to you by the letter H

Scrolling text on NEOPIXEL LEDs is quite a bit easier than on the previous LED panel, as it is part of the out-of-the-box functionality provided by the great and mighty adafruit.  I had the pleasure of working with the adafruit 8×8 neopixel array, as seen above.  These things are BRIGHT.  And unlike the previous LED panel, they don’t have any kind of cover or diffuser.

The result is that there is no dark color to contrast against, and the leds are so bright that they “bleed” into the surrounding space a little.  they also reflect off the glossy PCB.  The result is that at a distance, it can be a little hard to read the text on only an 8×8 panel.  A diffuser and a black mask around the pixels might help provide some contrast, and prevent the reflection problem.

Software:

The code was really simply.  The adafruit libraries take care of all the heavy lifting.  The one caveat is that I had to delete my Arduino Robot library because it caused some kind of error.

Some important but uncommented lines from the example are:

const uint16_t colors[] = {
matrix.Color(255, 0, 0), matrix.Color(0, 255, 0), matrix.Color(255, 255, 255) };

This makes an array of values to scroll text in.  Here it goes Red, Green, White.  You can add more or delete some but you may have to change loop iterator values later in the code.

matrix.print(F(“HI, RYAN.  THIS IS A NEOPIXEL BOARD”));
if(–x < -220) {

These lines control what gets printed to the matrix, and how much gets printed.  -220 can be made shorter to print only part of the message, and the string “HI RYAN, THIS IS A NEOPIXEL BOARD” can be changed to whatever you want.

Code dump:

// Adafruit_NeoMatrix example for single NeoPixel Shield.
// Scrolls ‘Howdy’ across the matrix in a portrait (vertical) orientation.

#include <Adafruit_GFX.h>
#include <Adafruit_NeoMatrix.h>
#include <Adafruit_NeoPixel.h>
#ifndef PSTR
#define PSTR // Make Arduino Due happy
#endif

#define PIN 6

// MATRIX DECLARATION:
// Parameter 1 = width of NeoPixel matrix
// Parameter 2 = height of matrix
// Parameter 3 = pin number (most are valid)
// Parameter 4 = matrix layout flags, add together as needed:
//   NEO_MATRIX_TOP, NEO_MATRIX_BOTTOM, NEO_MATRIX_LEFT, NEO_MATRIX_RIGHT:
//     Position of the FIRST LED in the matrix; pick two, e.g.
//     NEO_MATRIX_TOP + NEO_MATRIX_LEFT for the top-left corner.
//   NEO_MATRIX_ROWS, NEO_MATRIX_COLUMNS: LEDs are arranged in horizontal
//     rows or in vertical columns, respectively; pick one or the other.
//   NEO_MATRIX_PROGRESSIVE, NEO_MATRIX_ZIGZAG: all rows/columns proceed
//     in the same order, or alternate lines reverse direction; pick one.
//   See example below for these values in action.
// Parameter 5 = pixel type flags, add together as needed:
//   NEO_KHZ800  800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
//   NEO_KHZ400  400 KHz (classic ‘v1′ (not v2) FLORA pixels, WS2811 drivers)
//   NEO_GRB     Pixels are wired for GRB bitstream (most NeoPixel products)
//   NEO_RGB     Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2)

// Example for NeoPixel Shield.  In this application we’d like to use it
// as a 5×8 tall matrix, with the USB port positioned at the top of the
// Arduino.  When held that way, the first pixel is at the top right, and
// lines are arranged in columns, progressive order.  The shield uses
// 800 KHz (v2) pixels that expect GRB color data.
Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(8, 8, PIN,
NEO_MATRIX_TOP     + NEO_MATRIX_RIGHT +
NEO_MATRIX_COLUMNS + NEO_MATRIX_PROGRESSIVE,
NEO_GRB            + NEO_KHZ800);

const uint16_t colors[] = {
matrix.Color(255, 0, 0), matrix.Color(0, 255, 0), matrix.Color(255, 255, 255) };

void setup() {
matrix.begin();
matrix.setTextWrap(false);
matrix.setBrightness(40);
matrix.setTextColor(colors[0]);
}

int x    = matrix.width();
int pass = 0;

void loop() {
matrix.fillScreen(0);
matrix.setCursor(x, 0);
matrix.print(F(“HI, RYAN.  THIS IS A NEOPIXEL BOARD”));
if(–x < -220) {
x = matrix.width();
if(++pass >= 3) pass = 0;
matrix.setTextColor(colors[pass]);
}
matrix.show();
delay(100);
}

Hardware:

As usual, adafruit provides awesome information on hooking up the LEDs here.  But in case that is down or something, all you have to do to hook this up to an arduino is to hook up pin 6 to the DI pin through a 300-500 ohm resistor, and to supply power with a 5v 4A power supply.  the voltage can go below 5v, but not above 5v, as this will burn out the leds. Any amperage in excess of 4A is fine.

Videos!

 

BlueGene Technical Progress Report

pSHL8 is not the one I have

pSHL8 is not the one I have

In my pursuit of an indigo plasmid, I had two options: straight up synthesis, or getting the original plasmid cloned from the rhodococcus gene.  Back when I started this project, it would have cost about $600 to get the gene synthesized and stitched together, which would leave very little room for improvement.  Fortunately, Dr. Stephen Hart was kind enough to send me the plasmids from his research from 20 years ago.

Unfortunately, the only plasmid that was still intact was labeled pSLH1.  pSLH1 is described the paper “Construction of an insertional-inactivation cloning vector for Escherichia coli using a Rhodococcus gene for indigo production” as “The prototype insertional-inactivation cloning vector pSLH1… level of production appeared to be lower than that of other pigment-producing strains…cells produced only slight amounts of pigment even after several days incubation at room temperature.”  According to my observations, this is accurate- it takes a while for the transformed bacteria to produce indigo.  This seems to be because between the the indigo production gene and the promoter (an in-frame lacZ’a fragment upstream of the gene), there is a stop codon and two rare codons which theoretically prevent the gene from being expressed.

Deletion of stop codon

Deletion of stop codon

Hart and Woods went ahead and deleted the deleterious fragment of the gene by cutting out the undesirable DNA, chewing the ends of the DNA back with exonuclease III, and then blunt-end ligating the ends together.  Amazingly, this deletion keeps everything in-frame, and produces more indigo than without the deletion.  The process is shown in the image above.  First, the gene is cut, then the exoIII blunts the ends, and finally they are re-ligated.

In theory, this is great, and it totally works.  In practice, something was mislabeled or possibly only a mutated version made it to me 20 years later, because the sequence I got was not the sequence from the paper.  It was pretty close, but definitely different.  Lets compare:

Modern read -G TCG ACGG

From paper  -C TGC AGGC GA

Bolded letters show the “wrong” codons for the cut recognition site (CTGCAG) for PstI.  My hypothesis is that the new read is correct, and that the old read was flawed in one way or another.  This is because the new read was duplicated exactly the same across 8 independent samples, and the old read was probably done once.  The new reads were done on a modern sequencing machine, while the old read was done from radioactive sanger sequencing, which can be hard to interpret, leading to easily transposed letters in the sequence.

The authors may have gotten lucky with the enzyme as well.  I was using a recombinant “HF” enzyme, which stands for high fidelity.  This means that it has lower star/non-specific activity, reducing the chance it will make an improper cut.  To give you an idea of how much more specific the HF version is, I took this snippet from the NEB website:

The minimum number of units of PstI-HF required to produce star activity in the recommended NEBuffer 4 is (4000 units). The minimum number of units of PstI required to produce star activity in the recommended NEBuffer 3 is (120 units).The minimum number of units of PstI required to produce star activity in NEBuffer 4 is (8 units)

So the short version is that the HF version is something like 20-500 times more specific.  20 years ago, the PstI may have been even less specific, and allowed for cuts like the one that was made.  Or, somewhere along the line, a lossy polymerase copied the DNA wrong and my copy is mutated.

Either way, what actually seemed to happen was that the double-digest with PstI and SphI turned out to be a single-digest.  If you look at the actual sequence:

CTTGCATGC

it would be cut like this:

CTTGCATG || C

then blunted to this:

CCTG            C

and then ligated to this

CCTGC –> gene

Instead of increasing yield, this introduces a frame-shift mutation, which makes the gene totally useless since it is being translated out of frame.  Transforming the DNA yielded ampicilin resistant colonies with no indigo production ability.

So that was a big waste of material.  However, there is some good news!  The price of DNA synthesis has dropped, and the length of DNA that can be purchased has increased!  In these new and exciting times, the cost of synthesizing the gene is only about $200!  So I think my next steps are to codon-optimize the gene for e. coli, add restriction sites, then to add a promoter to it and stick the whole thing into p2kb to share with people.