FLASH-seq Low-Amplification protocol
Simone Picelli, Vincent Hahaut
Abstract
Building upon the existing Smart-seq2/3 workflows, we developed FLASH-seq (FS), a new full-length scRNA-seq method capable of detecting a significantly higher number of genes than both previous versions, requiring limited hands-on time and with a great potential for customization.
FLASH-seq Low-Amplification (FS-LA), represents FS quickest iteration, generating sequencing-ready libraries in 4.5 hours by removing intermediate cleanups and QC steps and without sacrificing performance. FS-LA is the best choice when a large number of plates need to be processed in parallel.
Before start
The protocol should be carried out in a clean environment, ideally on a dedicated PCR workstation or on a separate bench used only for this purpose. Before starting, clean the bench and wipe any piece of equipment with RNAseZAP or 0.5% sodium hypochlorite. Rinse with nuclease-free water to avoid corrosion of delicate equipment.
Work quickly and preferably on ice.
Reagent mixes should be prepared shortly before use.
Mix thoroughly each mix before dispensing. For higher accuracy use liquid handling robots and/or nanodispensers whenever possible. In FLASH-Seq we use the I.DOT (Dispendix) for all the dispensing steps and the Fluent 780 liquid handling robot (Tecan) for sample cleanup, reagent transfers and pooling.
The protocol described below is meant to be carried out in 384-well plates. When using 96-well plates, we recommend using 5 times larger volume to guarantee successful cell sorting and prevent evaporation issues.
Always use LoBind plates and tubes (especially for long-term storage) to prevent the cDNA/DNA from sticking to plastic.
Steps
Prepare lysis mix
Prepare the following lysis mix:
A | B | C | D |
---|---|---|---|
Reagent | Reaction concentration | Volume (µl) | 384-well plate |
Triton-X100 (10% v/v) | 0.2% | 0.020 | 8.448 |
dNTP mix (25 mM each) | 6 mM | 0.240 | 101.376 |
SMART dT30VN (100 µM) | 1.8 µM | 0.018 | 7.603 |
RNAse inhibitor (40 U/µl) | 1.2 U/µl | 0.030 | 12.672 |
DTT (100 mM) | 1.2 mM | 0.012 | 5.069 |
FS TSO (100 µM) | 9.2 µM | 0.092 | 38.861 |
dCTP (100 mM) | 9 mM | 0.090 | 38.016 |
Betaine (5 M) | 1 M | 0.200 | 84.480 |
Nuclease-free water | - | 0.298 | 125.875 |
Total volume (µl) | 1.000 | 422.400 |
Add 1µL
lysis mix to each well of a 384-well plate
Seal the plate with a PCR seal and quickly spin it down to collect the lysis mix to the bottom.
Proceed immediately to the next step or store the plate at -20°C
long-term. Plates that are going to be used on the same day can be stored in the fridge or kept on ice.
Sample collection
Sort single cells into 384-well plates containing 1µL
lysis mix.
Seal the plate with an aluminium seal. If processing multiple plates at once, keep each plate on dry ice until ready to transfer them all at -80°C
for long-term storage. Plates containing single cells should ideally be processed within 6 months.
Cell lysis
Remove the plates from the -80°C
freezer and check that the aluminium seal is still intact. If damaged or not sticking to the plate anymore, wait a few minutes for the plate to partially thaw, remove the damaged foil and replace it with a new one.
Place the plate in a thermocycler with a heated lid and incubate for 0h 3m 0s
at 72°C
, followed by a 4°C
hold step.
Spin down any condensation droplets that may have formed during the incubation and return the plate to a cool rack. Proceed quickly to the next step. If not ready with the RT-PCR mix, keep the plate on the cool rack at all times.
RT-PCR reaction
While the plate is in the thermocycler, prepare the following RT-PCR mix:
A | B | C | D |
---|---|---|---|
Reagent | Reaction concentration | Volume (µl) | 384-well plate |
DTT (0.1 M) | 4.8 mM | 0.238 | 100.531 |
MgCl2 (1 M) | 9.2 mM | 0.046 | 19.430 |
Betaine (5 M) | 800 mM | 0.800 | 337.920 |
RNAse inhibitor (40 U/µl) | 0.8 U/µl | 0.096 | 40.550 |
SuperScript IV (200 U/µl) | 2.00 U/µl | 0.050 | 21.120 |
KAPA HiFi HotStart ReadyMix (2 x) | 1 x | 2.500 | 1056.000 |
Nuclease-free water | - | 0.270 | 114.048 |
Total volume (µl) | 4.000 | 1689.600 |
Add 4µL
RT-PCR mix into each well of the 384-well plate.
Seal the plate with a PCR seal, gently vortex and spin down to collect the liquid at the bottom.
Place it in a thermocycler with heated lid and start the following RT-PCR program:
A | B | C | D | E |
---|---|---|---|---|
Step | Temperature | Time | Cycles | |
RT | 50ºC | 60 min | 1 x | |
PCR | initial denaturation | 98ºC | 3 min | 1 x |
denaturation | 98ºC | 20 sec | 10-16 x* | |
annealing | 67ºC | |||
elongation | 72ºC | |||
15ºC | Hold |
*Adjust the number of cycles according to the cell type. We recommend 10-12 cycles for HEK 293T cells and 14-16 cycles for hPBMC.
Tagmentation and enrichment PCR
Please note that the Tn5 transposase amount is a suggested starting point only. Optimisation might be necessary, depending on the specific activity of each batch of Tn5 and desired library size.
Indexing primers can be purchased from Illumina (Nextera XT index kit v2) or ordered from your local oligo manufacturer. In the "Materials" section we have added additional sequences for higher multiplexing.
Prepare the tagmentation mix as described below:
A | B | C |
---|---|---|
Reagent | Volume (µl) | Final concentration |
TAPS-Mg buffer, pH=7.3 (5x) | 2.000 | 10 mM TAPS, 5 mM MgCl2 |
Dimethylformamide (DMF) (100%) | 2.000 | 20% |
Tn5 transposase (2 µM working dil.) | 0.025 | 5 nM |
Nuclease-free water | 4.975 | |
Total volume (µl) | 9.000 |
Dispense 9µL
tagmentation mix in a new 384-well plate.
Add 1µL
unpurified cDNA to each well containing the tagmentation mix.
Seal the plate, vortex, spin down, and carry out the tagmentation reaction: 55°C
for 0h 8m 0s
, 4°C
hold. Upon completion proceed immediately to the next step.
Add 2.5µL
0.2% SDS to each well. Seal the plate, vortex, spin down and incubate 5 min at room temperature. Do not put the plate back on ice.
Add 2.5µL
N7xx + S5xx index adaptors (5micromolar (µM)
each).
Add 10µL
enrichment PCR mix to each well:
A | B | C |
---|---|---|
Reagent | Volume (µl) | Final concentration |
KAPA HiFi enzyme (1 U/μl) | 0.50 | 0.02 U/μl |
KAPA HiFi Buffer (5 x) | 5.00 | 1 x |
dNTPs (10 mM) | 0.75 | 300 nM |
Nuclease-free water | 3.75 | |
Total volume (µl) | 10.00 |
Seal the plate, vortex, spin down, and place it in a thermocycler and carry out the enrichment PCR reaction. Adjust the number of PCR cycles according to the number of processed cells AND the number of pre-amplification cycles used in the RT-PCR reaction.
A | B | C | D | E |
---|---|---|---|---|
Step | Temperature | Time | Cycles | |
gap filling | 72ºC | 3 min | 1 x | |
enrichment PCR | initial denaturation | 98ºC | 30 sec | 1 x |
denaturation | 98ºC | 10 sec | 14-16 x | |
annealing | 55ºC | 30 sec | ||
elongation | 72ºC | 30 sec | ||
15ºC | hold |
Library cleanup and quantification
Take an aliquot from each sample for the final library cleanup (i.e. 5 µl). and transfer it to a 1.5-ml Eppendorf tube. The rest of the library can be stored long-term at -20°C
.
Remove the Sera-Mag SpeedBeads™ working solution from the 4°C
storage and equilibrate it at room temperature for 0h 15m 0s
.
Add Sera-Mag SpeedBeads™ working solution to a final ratio of 0.8 x and mix well to homogenisation.
Incubate the tube off the magnetic stand for 0h 5m 0s
at Room temperature
.
Place the tube on the magnetic stand and leave it for 0h 5m 0s
or until the solution appears clear.
Remove the supernatant without disturbing the beads.
Recommended: wash the pellet with 1mL
80% v/v ethanol. Incubate 0h 0m 30s
without removing the tube from the magnetic stand.
Remove any trace of ethanol and let the bead pellet dry for 0h 2m 0s
or until small cracks appear. Do not cap the tube or remove it from the magnetic stand during this time. Do not completely air-dry the beads.
Remove the tube from the magnetic stand, add 50µL
nuclease-free water and mix well by pipetting or vortexing to resuspend the beads.
Incubate 0h 2m 0s
off the magnetic stand.
Place the tube back on the magnetic stand and incubate for 0h 2m 0s
or until the solution appears clear.
Remove 49µL
of the supernatant and transfer it to a new 1.5-ml LoBind tube. Store the cDNA at -20°C
long-term or until ready for sequencing.
Use Qubit fluorometer to quantify the library. Library yield can vary depending on the number of cells being pooled.
Check the final library size on the Agilent Bioanalyzer.
Use the average size indicated on the Bioanalyzer and the concentration reported after Qubit measurement to determine the exact molarity required for sequencing.
Pooling and sequencing
The purified library can be sequenced on any Illumina sequencer. Follow the specifications reported for each instrument. Single-end 75 bp is generally sufficient but longer read modes or paired-end sequencing can be an option, depending on the question at hand.
Data processing
These instructions briefly describe the data processing of the sequencing results. The final pipeline will likely have to be adapted to the question at hand. The following lines assume that all the programs and their dependencies are installed on your machine and that the data are single-end reads (75 bp). Some values, such as the number of threads and RAM usage may have to be adapted to your machine settings.
It should be noted that there are many other ways to analyse full-length single-cell RNA-sequencing data. Pseudo-alignment tools (e.g., Salmon or Kallisto) or automatic pipelines (zUMIs) could be used as well.
Requirements (tested version):
- bcl2fastq (v2.20)
- STAR (v2.7.3)
- FeatureCounts (v1.6.5)
- BBMAP (v38.86)
- samtools (v1.9)
- IGV
Sample demultiplexing
Sequencing results will be delivered as demultiplexed FASTQ or raw bcl2 files. To convert bcl2 files to FASTQ, bcl2fastq program (Illumina) can be used.
# 0. Variables
BASECALL_DIR="/path/to/flowcell/Data/Intensities/BaseCalls/"
OUTPUT_DIR="/path/to/output_folder/"
SAMPLESHEET="/path/to/Demultiplexing_SampleSheet.csv"
# 1. Bcl2fastq
ulimit -n 10000
cd /path/to/flowcell/
bcl2fastq --input-dir $BASECALL_DIR --output-dir $OUTPUT_DIR --sample-sheet $SAMPLESHEET --create-fastq-for-index-reads --no-lane-splitting
```When sequencing on a NextSeq 550 instrument, the sample sheet should contain the following information in a csv file:
<img src="https://static.yanyin.tech/literature_test/protocol_io_true/protocols.io.yxmvmnod5g3p/Screenshot%202021-12-12%20at%2008.58.20.png" alt="" loading="lazy" title=""/>
Illumina Experiment Manager can be used to assist you in creating the sample sheet.
We recommend exploring the barcode combinations left in the undetermined reads looking to confirm that all the cells have been properly demultiplexed.
zcat Undetermined_S0_I1_001.fastq.gz | awk -F' 1:N:0:' 'NR%4==1{print $2}' | sort | uniq -c > left_index.txt sort -k1,1 left_index.txt
for file in ./out/R1 do zcat $file | wc -l done
Index the genome
The reference genome needs to be indexed prior to any mapping. The FASTA and GTF references can be obtained from ENSEMBL, Gencode, UCSC, ...
# 0. Variables
OUTPUTREF="/path/to/STAR_indexed_genome/"
FASTA="GRCh38.primary_assembly.genome.fa"
GTF="gencode.v34.primary_assembly.annotation.gtf"
# 1. Genome indexing
# sjdbOverhang should be adapted based on the read length (read_length - 1)
mkdir $OUTPUTREF
STAR --runThreadN 15 --runMode genomeGenerate --genomeDir $OUTPUTREF --genomeFastaFiles $FASTA --sjdbGTFfile $GTF --sjdbOverhang 74
FASTQ trimming (optional)
If you observe sequencing primer left-overs the FASTQ files can be trimmed using BBDUK or Trimmomatic.
bbduk.sh -Xmx48g in=sample.fastq.gz out=cleaned.left.fastq t=32 ktrim=l ref=adapters.fa k=23 mink=7 hdist=1 hdist2=0 tbo
bbduk.sh -Xmx48g in=cleaned.left.fastq out=cleaned.fastq t=32 ktrim=r ref=adapters.fa k=23 mink=7 hdist=1 hdist2=0 tbo
mv FASTQ/cleaned.fastq FASTQ/sample.R1.fastq.gz
Mapping
The FASTQ file can then be mapped onto the reference genome. Example for one sample, use a loop or parallelise this task to process all the cells:
# 0. Variables
GENOME="/path/to/STAR_indexed_genome/"
FASTQ="/path/to/sample.R1.fastq.gz"
ID=”sample_id”
# 1. Mapping
STAR --runThreadN 30 --limitBAMsortRAM 20000000000 --genomeLoad LoadAndKeep --genomeDir "$GENOME" --readFilesIn "$FASTQ" --readFilesCommand zcat --limitSjdbInsertNsj 2000000 --outFilterIntronMotifs RemoveNoncanonicalUnannotated --outSAMtype BAM SortedByCoordinate --outFileNamePrefix "$ID"_
# 2. SAM to sorted BAM
# -F 260 filters out unmapped and secondary alignments
samtools view -@ 30 -Sb -F 260 "$ID"_Aligned.sortedByCoord.out.bam > "$ID"_Aligned.sortedByCoord.filtered.bam
samtools index "$ID"_Aligned.sortedByCoord.filtered.bam
Data visualization (optional)
Once the reads have been mapped we highly recommend using the Integrated Genome Viewer (IGV) to visualise the mapping results and ensure that the results make sense. As a quick check-up visualise a few housekeeping genes (i.e., ACTB, GAPDH, …) and cell specific markers to look for reads mapping to exon, intron, exon-intron junctions. Look for abnormalities such as read piles falling in intergenic or centromeric regions.
No single-cell RNA sequencing protocol is perfect and non-specific priming, genomic DNA contaminations, … can happen but should represent rare events.
Recurrent soft-clipping could also indicate the presence of sequencing adaptor left-overs that could affect the mapping rate.
Count matrix
Finally, the number of reads associated with each gene can be obtained as follows:
featureCounts -T 1 -t exon -g gene_name --fracOverlap 0.25 -a "$GTF" -o "$ID"_ReadCount.featureCounts.gencode.txt "$ID"_Aligned.sortedByCoord.filtered.bam
Post-processing
The post-processing steps will vary depending on the question at hand. The online book “Orchestrating Single-Cell Analysis with Bioconductor” (https://bioconductor.org/books/release/OSCA/) is a gold mine of information that can be used to help you design your own pipeline. Alternatively, Seurat (R, https://satijalab.org/seurat/) or scanpy (python, https://scanpy.readthedocs.io/en/stable/) provide tools compatible with FLASH-seq data. Given their similarities, we currently recommend using Smart-seq2 guidelines when processing FLASH-seq data.