> ## Documentation Index
> Fetch the complete documentation index at: https://docs.assetinfinity.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Encoding and locating RFID tags

> Writing an asset's code onto an RFID tag with a handheld reader, and following the reader's beep to find an asset's tag.

On a handset with an RFID reader paired, two screens work with one asset's tag: **Encode RFID tag** writes the asset's code onto a physical tag, and **Locate tag** guides you to the tag with a bar and a beep that rise as you get closer.

<Note>
  Both screens need a handheld RFID reader paired to the handset — see [the tag reader](/field/reader). On a phone without one, neither the encode button nor **Locate tag** is shown. The demo handset has no reader, so these screens are described rather than pictured.
</Note>

## Encoding a tag

Open it from the tag button beside an asset on the [register](/field/register) (**Encode RFID tag for {number}**). It needs permission to edit assets.

The screen — **Write this asset's code onto a nearby tag.** — works in three steps.

<Steps>
  <Step title="Check the code">
    The app first checks what this asset's number becomes on a tag (**Checking this asset's number scans…**). The code is never typed here: it is the one your [label settings](/config/labels) produce for the asset, asked for live because it is not carried on the handset — so this step needs a signal. Without one the screen says **No signal** with **Try again**. Once checked, **Code to write** shows it.
  </Step>

  <Step title="Connect the reader">
    The reader's state shows as **Nothing paired**, **Not connected** or **Connected**, with **Connect** and **Disconnect**. **Read tag** reads the nearest tag and shows **Tag reads: {epc}**, so you can see what it holds before you overwrite it; **Nothing answered.** if no tag replied.
  </Step>

  <Step title="Write">
    **Write to a tag** asks you to confirm — **This overwrites whatever tag the gun sees when you confirm. Hold it next to the one tag you mean.** — with **Cancel** or **Yes, overwrite**. Success reads **Written. The tag now carries {epc}.**
  </Step>
</Steps>

Two checks stop a tag that would not work:

| Message | Meaning |
| - | - |
| **This asset's number cannot go on a tag** | A tag holds only the digits 0–9 and letters A–F, and nothing of this asset's number is left once the rest is taken out. Give the asset a number a tag can hold, or change how numbers become tag codes in the label settings |
| **A tag with this number would not scan as this asset** | The number's tag code would find a different asset when scanned, or nothing at all |

Writing a tag changes nothing on the server and queues nothing — it either landed on the tag or it did not, and the screen says which.

## Locating a tag

Open it with **Locate tag** on an asset's own screen. **Follow the beep to this asset's tag.**

| Control | What it does |
| - | - |
| **Looking for** | The tag code being searched for |
| **Connect** | Connects the reader if it is not connected (**The reader is not connected**, **Connecting…**) |
| **Start locating** / **Stop** | Starts and stops the search. **Press Start, then sweep the gun slowly around you.** |
| **Turn the beep off** / **Turn the beep on** | Mutes or un-mutes the beep |
| **How close the tag is** | A bar that fills as you close in, with **Not heard — keep sweeping**, **In range, but far**, **Getting closer** and **Very close** |

Locating changes nothing and needs no permission beyond seeing the asset. If the asset's number cannot be a tag code, the screen says there is no tag to look for.

<Card title="The tag reader" icon="radio-tower" href="/field/reader">
  Pairing a reader and sweeping for tags.
</Card>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.