DMRE Datamatrix Rectangular Extension

Message about DMRE from Dennis Priddy, one of the original Datamatrix developpers

"I love it! Your implementation of the Extension could not be more perfect in its simplicity, execution and effectiveness. And yes, it does make me a bit proud to know that Data Matrix can still help solve real-world problems – when in the hands of some very smart people.
Thank you!
Best regards and best wishes,
Dennis Priddy"

What is DMRE?

 Data Matrix Code with additional rectangular formats.

The example code below shows an extended rectangular Data Matrix with a module size of 8x64 fitting well in the available space on the object:DMRE

Current Data Matrix Rectangular Formats (not DMRE)

 Data Matrix following ISO16022 ECC200 already features the following rectangular formats:

8 x 18 10 6 3  dm8x18
8 x 32 20 13 8  dm8x32
12 x 26 32 22 14  dm12x26
12 x 36 44 34 22  dm12x36
16 x 36 64 46 30  dm16x36
16 x 48 98 72 47  dm16x48

Use-Cases for extended Data Matrix Rectangular formats

The following use-cases require additional rectangular sizes if higher data amount must be encoded:

Highly rectangular marking surface


Typically, the height of 8 modules is used and should be extended to a higher width if more than 13 alphanumeric characters are encoded. The upper example encodes a standard product ID following EDIFICE guidelines for electronic products.

Curved surface

 dmre ultrakain

Curved surfaces like tubes should have a code at minimum height (typically 8 modules) and an increased width. The example features a PPN code on a drug.

Code height limited by printing technology


Continuous InkJet technology is limmited in print height while print width may be extended.

In consequence, a maximum module height of 26 modules should not be extended. Nevertheless, the requirements on data capicity for pharmaceutical products exceed the capacity of a 26x26 symbol and thus rectangular symbols help to solve this issue.

Especially the various serialization projects with inline printing processes mostly by inkjet technologies have shown a clear need for these new rectangular formats.

The DMRE solution

Within DMRE, the following additional rectangular formats are defined:

8 x 48 36 25 16  dmre8x48
8 x 64 48 34 22  dmre8x64
12 x 64 86 63 41  dmre12x64
16 x 64 124 91 60  dmre16x64
24 x 32*1) 98 72 47  dmre24x32
24 x 36*1) 110 81 53  dmre24x36
24 x 48 160 118 78  dmre24x48
24 x 64 216 160 106  dmre24x64
26 x 32*1) 104 76 50  dmre26x32
26 x 40*1) 140 103 68  dmre26x40
26 x 48 180 133 88  dmre26x48
26 x 64 236 175 116  dmre26x64

 They may be defined by the standard Datamatrix ECC200 rules, but with a different grid size and data capacity.

Within those sizes, the sizes with a height of 8 and 12 match the first use cases with minimum height.

The remaining codes with a height of 24 and 26 modules match the use case of continuous ink-Jet print.


*1) Those sizes are currently not ready to be included in an eventual final ISO standard, as they are seen to be to close to square symbols and may degrade scanner performence.

Documents and Standards

The following comprehensive document describes the solution:

 DMRE DataMatrix Extension Intro+Sources r160405

DMRE was developped by the ORM working group of AIM D-A-CH resulting in the following document containing only the extsion compared to Data Matrix ECC200:

AIM-D Symbology Specification: "Data Matrix Rectangular Extension" Version 1.01

Standard DIN16587:Data Matrix Rectanglar Extension

DIN Standard 16587 "Rechteckige Erweiterung des Data Matrix Codes - Data Matrix Rectanglar Extension"

Accepted ISO Project title:

ISO/IEC 21471 Information technology -- Automatic identification and data capture techniques -- Bar code symbology specifications -- Extended Rectangular Data Matrix (DMRE)

DMRE Code Generation

WEB Generator

This web frontend may be used to generate DMRE codes by choosing:

bwipp parametersbwipp result

The underlying project bwipp features DMRE code generation for many applications including SAP integration etc.

Offline Generator

The Windows/Linux program "zint" may be used to create DMRE codes:

ZINT Bar Code Generator Open Source Project on SourceForge (external link)

A ready to go windows binary may be found here:

The following picture shows an example code which may be acheved by starting "qtZint-2.5_win32.exe", and selecting symbology "DataMatrix" and a DMRE size (which are all available beside the standard sizes).

zint dmre compressed

Barcode generation products by dLSoft

dLsoft barcode generation products feature DMRE:

dLSoft Barcodes Labels Office dmre

DMRE Code scanning

The following current possibilities exist to scan DMRE codes:

Handheld scanner from Code Corporation

Handheld scanner from Code Corporation decode DMRE Codes starting with firmware 1096.


Example Scanner

 ecr dmre activate

Control code: Enable DMRE

REA Verifier

REA 2D Matrix Code Verifiers feature DMRE.

Scandit App

 Scandit Apps for iOS and Android feature DMRE. You may active the "Tiny-Code" mode in the lower-right corner of the App.

CortexScan App

 Code Corporation CortexScan App for iOS features DMRE since version 1.5.


 Code Corporation CortexDecoder features DMRE and may be embedded in applications on a wide set of systems.

zxing open source barcode scanner (Android, iPhone and others)

The DMRE extension is not jet included in the mainstream distribution.

Nevertheless, the code is ready and contained in this pull request.

Datalogic Scanner

All Matrix-N series scanners (210N, 300N, 410N) feature DMRE since software version

Discussion about additional formats at ISO/IEC1/SC31/WG in March 2017

Within the ISO/IEC 1 /SC 31 / WG4 meeting in March'2017, the possibility for additionaly very rectangular formats were raised.

As candidates, formats with 8 or 12 modules height and 80,88,96,104,120,132 or 144 modules wide are considered.

The parameters of those formats are highlighted in green in the LibreOffice Spreadsheet below. Accepted DMRE formats are highlighted in yellow:

el1061_dm_table_sizes.ods and as pdf printout: el1061_dm_table_sizes.pdf

Real codes may be generated by this special version of zint bar code creater program:


The formats under discussion are marked with "DMRE candidate", as shown below:

Zint DMRE Candidates

Discussion about additional formats with IFA in March 2017

Due to the non acceptence of rectangular formats with a length/height ratio of below 2 (e.g. close to square) by WG1, IFA decided to think about new formats to solve their use case.

Another new fact appeared, that the serial number must be printed in clear.

In consequence, the following formats were considered as candidates:

18 x 36 76 55 36  dmre18x36
18 x 44 100 73 48  dmre18x44
20 x 36 88 64 42  dmre20x36
20 x 44 112 82 54  dmre20x44
22 x 40 112 82 54  dmre22x40
22 x 48 144 106 70  dmre22x48

This use-case covers a certain amount of data in different sizes. IMHO, this should (and could) be extended by the corresponding formats with width of 64 modules for a certain level of symetry.


18 x 64 144 106 70  dmre18x64
20 x 64 180 133 88  dmre20x64
22 x 64 200 148 98  dmre22x64

The spreadsheet below shows the parameters of all proposed formats.

The background colors and the program dropbox label suffixes are as follows:

  • white: standard sizes
  • yellow,"DMRE": accepted standard DMRE sizes
  • green, "DMRE Candidate WG1": proposals of the WG1 meeting (very rectangular ones)
  • pink, "DMRE Candidate IFA": demands by IFA above
  • orange, "DMRE Candidate Symetric": 18,20,22 x 64 above
  • grey, "DMRE Candidate Tested": other tested formats which may physically work

el1061_dm_table_sizes_2017-06-08.ods and as pdf printout: el1061_dm_table_sizes_2017-06-08.pdf

Real codes may be generated by this special version of zint bar code creater program:


Remark: sizes of 22 x 48 and 22 x 64 (last two in the drop-down list) do currently a core dump. The reason is not in the code generation but in qt, as code generation works.


In case of any questions please feel free to contact Harald Oehlmann at This email address is being protected from spambots. You need JavaScript enabled to view it.