Skip to content
This repository has been archived by the owner on Apr 20, 2021. It is now read-only.

Protobuff and gRPC specifications for the MinKNOW LIMS Interface

Notifications You must be signed in to change notification settings

nanoporetech/minknow_lims_interface

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

.

We have a new resource that largely replaces the functionality of this project! See our new repository here: https://github.com/nanoporetech/minknow_api

The new API project has a pypi module, and offers improved API and tools with minknow 4.x compatibility.

This repository is now unsupported and we do not recommend its use. Please contact Oxford Nanopore: [email protected] for help with your application if it is not possible to upgrade to our new resources, or we are missing key features.

MinKNOW LIMS Interface

MinKNOW is Oxford Nanopore Technologies Device Control software embedded in MinIT, GridION, PromethION and provided for installation on user PCs to run MinION. MinKNOW carries out several core tasks: data acquisition; real-time analysis and feedback; basecalling; data streaming; device control including selecting the run parameters; sample identification and tracking and ensuring that the platform chemistry is performing correctly to run the samples. With the deployment of Oxford Nanopore devices into production sequencing environments, the ability to interface with MinKNOW and pull useful metadata such as Run IDs, Flow Cell IDs, run statistics becomes more important.

Getting Started

Dependencies

MinKNOW uses Google Protocol Buffers v3 to handle serialisation in MinKNOW and its supporting applications.

MinKNOW currently uses Protobuf version 3.6.1 and gRPC 1.16.1

Protobuf can be obtained from github: https://github.com/google/protobuf/releases

Generating a python interface

An example of how to generate minknow GRPC interfaces from the contents of this repository is:

mkdir -p grpc_api/
protoc --python_out=grpc_api/ minknow/rpc/*.proto

Navigating the code

The API contained in this project enables a user to interact with the information stored in the minknow top bar: Image of minknow GUI top bar

The MinKNOW gRPC API is split into separate services, intended to provide functionality for different use cases. There are a few key areas of interest for clients:

The protocol service contains methods to start and stop sequencing experiments.

  • See list_protocols in order to list available scripts.
  • See start_protocol for documentation on starting a sequencing experiment (and also specifying the protocol_group_id).
  • See set_sample_id for setting the sample id for the active flow cell position.

The acquisition service provides methods to start and stop acquisition, and query yield from acquisition periods.

The device service contains methods to interrogate the sequencing device and flow cell.

The instance service provides information about the device - hostname, output directories etc.

Bream stores the flow cell check results in the minknow keystore.


Licence and Copyright

© 2019 Oxford Nanopore Technologies Ltd.

This API is provided "as is" with limited support and under the Oxford Nanopore Product Terms and Conditions. It has been made available for users who require a greater degree of intergration into their internal systems.

Rev005

About

Protobuff and gRPC specifications for the MinKNOW LIMS Interface

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •