Sample labeling

Labstory provides features to aid in sample labeling:

  • Unstructured use - You can scan barcodes into text sections and tables
  • Structured use - You can set up the LIMS database to both generate and understand barcodes, as well as labels

The unstructured method is straight-forward and can be sufficient for quick use and with preprinted labels (or if the labels are managed in another system)

Different kinds of barcodes

There are many different kinds of barcode systems but there are two types that are more ubiquitious than any other. To the left is an EAN code and to the right is a QR code:

The EAN code can store 12 digits while the QR code can store up to 1024 characters (actually more, but in practice using common cameras). The large difference is due to the EAN code being one-dimensional while QR codes are 2D. 2D codes can contain much more data than a 1D code at the drawback of requiring more complex scanner equipment. However, being able to store more data opens up for so many more possibilities that we think new labs should invest in QR codes unless they have good reason not to.

Supported hardware

The short story is: Barcode scanners which give the data back as keyboard interface are compatible. Label printers which expose the hardware as a regular printer device for the given operating system works or can be made to work. Here are some links:

  • Honeywell - barcode scanners
  • Zebra - label printers (recommended, comes with an open specification)
  • BRADY - scanners and label printers. At least the BMP71 printer has been confirmed to work but is not recommended (drivers only for Windows)

We are looking into adding support for label printers straight from Android, and here the Zebra label printers stand a very good chance.

Practical use considerations

We recommend that you test your labelling properly before putting them to use. Problems include labels falling off in liquid nitrogren, or the printed text being peeled off. You can consider adding tape on top of your labels as extra protection but if possible, rather try to find better labels. Do not fall into the trap of being dependent on the barcode for the identifying your samples - add enough human readable text to be able to manually track down the record if your scanner fails.

Barcode content

Labstory handles barcodes differently depending if you are using EAN codes or QR codes. EAN codes cannot contain too much content and you must in this case choose an integer ID attribute to be written out. Normally you would set it to be generated automatically. An alternative to this procedure is to buy preprinted labels and scan the ID into the database (the opposite). Here instead the labels provide the guarantee that the IDs are unique. To then recall the entry in the database you have to first open the database it refers to.

QR-codes work in completely different manner. All LIMS entries in Labstory have a semi-invisible GUID (Globally Unique ID), which is automatically used for the label. Further, the QR-code will also contain the GUID of the LIMS table itself. Thus when you scan QR codes you do not even need to choose which database it refers to; Labstory figures this out automatically.

Designing labels

Before printing a label you have to design it. The design is added to the table declaration and you can have multiple designs, however, in the usual case you are only expected to have one. The designer looks like this:

You should start by measuring the size of your labels. If your label printer prints several labels in parallel (not along the tape) then you can set the "parallel copies" parameter. You may also need to change the orientation.

To the label you can add several lines of human-readable text, likely containing data from the record. A record is added as %columnid% and is replaced during the printout. See the screenshot above for an example