Impinj ItemEncode has three serialization modes: TID Table, Ordered List or Static. These modes control how the ItemEncode device selects which data to encode for a given tag.
The TID Table mode is based on selecting a specific set of encoding operations for a given TID. The application will provide a TIDTableEntry for each tag that will be seen by the device. If the ItemEncode device does not have a matching TIDTableEntry for a TID that it encounters, it will report a TagOperationResult of TAG_OPERATION_RESULT_FAIL_TID_TABLE_NO_MATCH. When in the Configuration State, the TID Table can be updated using the AddSerializationJobCommand or AddTIDTableEntriesCommand. The TID Table can be updated while the device is in the Operating State with the AddTIDTableEntriesCommand.
Note
The AddTIDTableEntriesCommand can be sent to the ItemEncode device from both a Command or Update message.
The Ordered List serialization mode selects encoding operations based on a first in, first out list fashion. The application will provide a set of OrderedListEntry objects. The ItemEncode device will use the first one in the list when it encounters a tag then discard it from the list. If the ItemEncode device runs out of OrderedListEntry, it will report a TagOperationResult of TAG_OPERATION_RESULT_FAIL_ORDERED_LIST_EMPTY. When in the Configuration State, the Ordered List can be updated using the AddSerializationJobCommand or AddOrderedListEntriesCommand. While in the Operating State, the Ordered List can only be updated with the AddOrderedListEntriesCommand.
The simplest ItemEncode serialization mode is Static. It uses the same encoding options for all of the tags that it encounters. This is useful when the application is encoding a population of tags with the same data or with Monza Self-Serialization. The Static encoding configuration can only be updated using the AddSerializationJobCommand in the Configuration State.
TID Table and Ordered List modes can be used in conjunction with a Static configuration. The Static configuration in the SerializationJob can be used as a default set of operations that can be overridden by operations from a TIDTableEntry or OrderedListEntry.