Research
QRmap: executable QR codes for Navigation in Industrial Environments and Beyond
Overview Research area: Human-Computer Interaction, specifically executable QR codes (sQRy) and offline navigation aids. The paper bridges QR code storage constraints, graph representation, and indust

- arXiv
- 2601.11547
- Published
- 2025-12-04
- Authors
- Stefano Scanzio, Paolo Campagnale, Pietro Chiavassa, Gianluca Cena
AI summary
Overview
Research area: Human-Computer Interaction, specifically executable QR codes (sQRy) and offline navigation aids. The paper bridges QR code storage constraints, graph representation, and industrial wayfinding.
Technical level: Intermediate. Readers need some familiarity with QR code capacity limits, graph theory notation, and compiler-style intermediate representations, but the worked example makes the mechanics followable.
Scope (one sentence): The paper proposes QRmap, a new sQRy dialect that embeds a geographic map or floor plan as a graph inside a QR code so that a user's phone can interactively compute and display the best path to a chosen destination without any network connection.
What This Paper Is About
QR codes normally carry only a static identifier, such as a URI, that points to a server-side application. The sQRy technology, introduced in 2022, instead stores a complete executable program inside the code, so interaction works with no internet connection. The core problem this paper addresses is that existing sQRy dialects, QRtree and QRind, cannot represent a navigable map. QRmap is the authors' answer: a dialect that encodes maps as graphs, lets the user state where they want to go, and returns directions over the shortest path by travel time or distance.
Key Contributions
-
A new sQRy dialect for navigation. QRmap encodes a geographic map or factory floor plan as a graph directly inside a QR code, supporting both directed and undirected arcs so that arbitrary graphs and their environments can be represented.
-
A five-section instruction structure. The dialect is organized in the fixed order header, label, graph, quick choice, and code, with an intermediate representation (IR) designed for compact binary encoding inside the limited QR capacity.
-
Extensible, space-efficient labeling. Labels carry attributes for vertices and arcs, support single inheritance (one label can extend another's attributes), and are assigned positionally so the description of an attribute is written only once rather than repeated for every vertex or arc.
-
An interactive search mechanism. A "quick choices" section defines complex search criteria, stored in reverse polish notation to avoid parentheses and save memory, which are rendered as buttons on the user's device. A code section built on a slightly modified version of the QRtree decision-tree dialect asks the user questions and selects the appropriate search criterion based on the answers.
Main Findings
-
Binary footprint is small. The worked example's binary code occupies 3241 bits, which the paper states corresponds to just 13.7% of the overall space available in a QR code. Because storage capacity is the main limitation of the technology, this headroom is significant.
-
Storage limits set the design constraints. A QR code reaches a maximum of 2953 bytes in the most capacious version 40 at a low error correction level, which is coded as a 177 × 177 matrix. The paper notes that choosing a low error correction level decreases robustness in worn QR codes, so dialects must trade expressiveness against space.
-
Float encoding is user-configurable. In the example, the header command ENCODE_FLOAT 3 4 specifies 3 bits for the exponent and 4 bits for the mantissa. The paper states that allowing user customization of the code reduces its size and increases the size of the program that can be stored in the sQRy.
-
The example plant supports destination-dependent routing. The floor plan contains six points of interest: an emergency exit, an intersection, a warehouse, an infirmary, and two assembly lines. Assembly line 1 can produce 10 pieces per hour while assembly line 2 can produce 20 pieces per hour. If the user's requested production rate is 10 or below, the program directs them to assembly line 1, otherwise to assembly line 2.
-
Label inheritance reduces redundancy. Three labels are defined in the example: one with name and description attributes, one with length and color attributes for arcs, and a third that inherits from the first and adds a produced-pieces attribute for vertices.
-
Multi-step navigation is anticipated. The paper describes navigation performed in multiple steps, where a first sQRy guides the selection of a building within the whole industrial plant and a second sQRy guides the user to a destination inside that building.
Methodology in Plain English
The authors take the existing sQRy pipeline and define a new dialect on top of it. That pipeline has two halves. In the generation chain, a high-level programming language, textual or graphical, is translated into an intermediate representation made of simple instructions, which is then converted into a binary format and embedded into a standard QR code using open-source libraries. In the execution chain, a widely available library decodes the QR image on the end device, typically a smartphone, the binary is translated back into the intermediate representation, and a virtual machine runs it.
The paper's work is concentrated on defining that intermediate representation for maps: the instruction set for each of the five sections and the conversion rules between those instructions and binary, with compactness as the driving goal. To demonstrate the dialect, the authors take a simplified industrial floor plan, hand-translate it into a graph with labeled vertices and arcs, write the corresponding IR program section by section, and then measure the resulting binary size. The path-finding algorithms themselves are not described, on the grounds that optimal-path algorithms on graphs are well documented in the literature. Security is likewise left out of scope, with the authors noting it could be handled by traditional public/private key authentication. The paper does not report any user study, deployment, or runtime performance measurement.
Why This Matters
Impact on research. The paper extends the sQRy dialect family beyond QRtree, which targets decision trees with very good compactness, and QRind, which targets industrial applications and also permits embedding simple machine learning algorithms. It demonstrates that graph-structured, interactive content can fit inside the tight storage budget of a QR code, and it separates the immutable standardized intermediate representation from the high-level languages that could be mapped onto it, which allows future dialects and front ends to share the same binary foundation.
Real-world applications:
- Guiding maintenance technicians to a specific machine or component within a production cell, using a code posted in the plant.
- Directing employees, visitors, or healthcare personnel to muster points, emergency exits, and infirmaries, including during a black-out when no network is available.
- Multi-step wayfinding across a large site, where one code narrows the choice to a building and a second code navigates inside it.
- Non-industrial settings, since the authors state that QRmap usage is not limited to industrial environments.
Industry relevance. The dialect targets industrial plants where connectivity is absent because of environmental limitations, such as desert areas, mountains, and petrochemical plants, or because company policies for security guidelines do not allow users to set up network connections. The paper also distinguishes QRmap from prior uses of QR codes and RFID tags for navigation, which store only an identifier for a robot or machine to read, whereas sQRy-based QRmap codes are meant mainly for human operators and support interaction to identify the intended destination and the best path given the user's requirements.
Future Directions
- Implementing the complete generation and execution chains, which the authors explicitly leave as future work.
- Producing the exhaustive definition of the QRmap specification, since the version presented is described as preliminary.
- Running experimentation with real human operators, which has not yet been done.
- Handling security, which the paper does not discuss but suggests could be addressed with traditional public/private key authentication methods.
- Mitigating the QR storage ceiling, which the authors suggest could be partially addressed by placing sQRy containing partial information along the path to guide the user step by step.
Target Audience
This paper suits researchers and practitioners working on human-computer interaction, industrial automation, and offline or disconnected information systems, particularly those interested in QR code capacity constraints and compact binary encoding of structured content. It is also relevant to facility managers and safety engineers evaluating wayfinding for large plants, and to developers who might build high-level authoring tools, such as the graphical interface the paper mentions for producing the graph representation, on top of the intermediate representation. Readers looking for empirical evaluation, user studies, or detailed path-finding algorithms will not find them here, because those are outside the paper's scope.
Authors’ abstract
QR codes are nowadays customarily used for embedding static data such as web hyperlinks or plain text. The sQRy technology (executable QR codes) permits to embed executable programs in QR codes, enabling people to interact with them even without an internet connection. In this work we present QRmap, a specific dialect that permits the inclusion of geographic maps in sQRy and supports interaction with the user to provide indications to reach the destination of interest. The QRmap technology facilitates navigation in large industrial plants where internet connectivity is absent, due to either environmental limitations or company policies. The proposed technology can have interesting applications in non-industrial contexts as well.