Skip to content

Latest commit

 

History

History
87 lines (65 loc) · 3.27 KB

File metadata and controls

87 lines (65 loc) · 3.27 KB

Steps for Basecalling and Demultiplexing with Dorado

Caution

The following steps explain how to run basecalling and demultiplexing with Oxford Nanopore's Dorado.
This document reflects information as of December 2025.
For the latest documentation, see:
https://software-docs.nanoporetech.com/dorado/latest/

(1) Install Dorado

Download the Dorado binary and make it executable.

curl -LO https://cdn.oxfordnanoportal.com/software/analysis/dorado-1.3.0-linux-x64.tar.gz
tar -xzf dorado-1.3.0-linux-x64.tar.gz
chmod +x ./dorado-1.3.0-linux-x64/bin/dorado

(2) Run basecalling

Run basecalling with Dorado. The example below uses the dna_r10.4.1_e8.2_400bps_sup model; adjust the model as needed.

./dorado-1.3.0-linux-x64/bin/dorado basecaller \
    sup \
    pod5/ \
    --device cuda:all \
    --kit-name EXP-PBC096 \
    > calls.bam

Important

The --kit-name option is required for demultiplexing.
Specify the appropriate kit. The DAJIN paper used EXP-PBC096.

(3) Run demultiplexing

Run demultiplexing with Dorado using the calls.bam generated by basecalling.

mkdir -p dorado-demux

./dorado-1.3.0-linux-x64/bin/dorado demux \
    --output-dir dorado-demux \
    --no-classify \
    --threads 8 \
    calls.bam

(4) Check demultiplex results

Demultiplexed outputs are saved in the specified directory. Each barcode has its own folder containing the basecalled BAM file.

Example output structure:

dorado-demux
└── 12635
    └── 20251110_0508_0_PBI23287_73af7da2
        └── bam_pass
            ├── barcode01
            │   └── PBI23287_pass_barcode01_73af7da2_00000000_0.bam
            ├── barcode02
            │   └── PBI23287_pass_barcode02_73af7da2_00000000_0.bam
            ├── barcode03
            │   └── PBI23287_pass_barcode03_73af7da2_00000000_0.bam
            └── unclassified
                └── PBI23287_pass_unclassified_73af7da2_00000000_0.bam

DAJIN2 uses the barcode directories as input files. For example, a batch.csv might look like this:

name control sample allele bed
test dorado-demux-100000/12635/20251110_0508_0_PBI23287_73af7da2/bam_pass/barcode01 dorado-demux-100000/12635/20251110_0508_0_PBI23287_73af7da2/bam_pass/barcode02 test.fa test.bed
test dorado-demux-100000/12635/20251110_0508_0_PBI23287_73af7da2/bam_pass/barcode01 dorado-demux-100000/12635/20251110_0508_0_PBI23287_73af7da2/bam_pass/barcode03 test.fa test.bed

Because the paths are long, it can be easier to cd into bam_pass before running. In that case, a batch.csv could be:

name control sample allele bed
test barcode01 barcode02 test.fa test.bed
test barcode01 barcode03 test.fa test.bed

Note

Adjust the allele and bed paths similarly if you change directories.