0
votes

Working on printing and encoding RFID labels with the Zebra ZD500R Printer.

Here is my ZPL: The field data is F1001001, which i can encode and print on the label. However the EPC returned is F10010010000000000000000. How can i do one of 2 things. Either get the ZPL to 4 Bytes with no 0's or encode random hexadecimals at the front and my field data at the end?

My other question is how do make my field data increment and have both the RFID encoded tag and label match?

`^XA

^BCN,100,N,N

^FO30,50^FDF1001001^FS

^FO30,160^ADN,18,15^FDF1001001^FS

^FO30,220^ADN,10,20^^FD12/1/2024^FS

^FO30,260^ADN,10,20^^FDUYT 098^FS

^RFW,H^FDF1001001^FS

^RFR,H^FN11^FS

^FH^HV11,,EPC:[,]_0D_0A,L

^XZ`

2

2 Answers

1
votes

I know I'm a bit late to the party but it might be useful if someone else stumbles over this post...

Try:

^RS8
^RFW,H,,,A^FD12345678^FS

When read with a RFID reader this will return the EPC code 12345678 without the trailing zeros (or encode random hexadecimals). For reference this was written to a tag using a Zebra ZQ511.

https://www.zebra.com/content/dam/zebra_new_ia/en-us/manuals/printers/common/programming/rfid3-pg-en.pdf

0
votes

If you want to encode fixed EPC length, use the ^RF command with a length paramter :

Example 3: This example encodes 4 bytes of hexadecimal formatted data, starting in block 3 of Gen 2 EPC bank 1. (The ^RS command can be omitted for printers that use Gen 2 tag types only.)

^XA
^RS8
^RFW,H,3,4,1^FD11112222^FS
^XZ

For incrementation, I suppose Zebra has a builtin variable management but I don't know how it works... But you are better calling the Zebra printer through an external program...