Key Codes

This section describes the key codes used to configure the Indy Modules.

The key code values may be set using the ipj_set, ipj_set_value, or ipj_bulk_set IRI API functions, and retrieved using the ipj_get, ipj_get_value, and ipj_bulk_get IRI API functions.

For more details on setting key codes, and examples of what configurations they enable, see the Configuration Examples.

These keys are volatile, and will be reset to their default values upon module reset. To set a value for the keys that will be persistent across resets, use the Stored Settings functionality of the modules.

The key listings below contain some or all of the following details on every key code:

  • Key Name - The name of the key, also defined as a constant for use in customer code
  • Key Description - An explanation of the funcitonality of the key, with cross-references to term definitions and other relevant documentation.
  • Key ID - The literal value of the key constant
  • Permissions - Key read or write permissions: R for readable / W for writable
  • Range/Type - The data type of the value stored, or the range of valid values
  • Units - The units of the key, if applicable
  • Bank Count - The number of banks the key has
  • Value Count - The number of values the key has
  • Default Value - The default value of the key at startup

Key Codes By Category

Antenna

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_ANTENNA_TX_POWER 49 [0,3150] 1 1 cdBm R/W
E_IPJ_KEY_ANTENNA_SEQUENCE 50 ipj_antenna, ipj_antenna_rs2000 0 16 R/W

Antenna Descriptor

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_ANTENNA_SEQUENCE_OPTION 544 bool 0 1 R/W
E_IPJ_KEY_ANTENNA_DESCRIPTORS 545 uint32 16 8 R/W
E_IPJ_KEY_ANTENNA_PHYSICAL_PORT 546 ipj_antenna, ipj_antenna_rs2000 0 1 R/W

Boot Action

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_ONBOOT_START_ACTION 258 ipj_action 0 1 R/W

Bootstrap

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_IN_BOOTSTRAP 260 bool 0 1 R

Device

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_DEVICE_BAUDRATE 256 ipj_baud_rate 0 1 R/W

Error

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_FIRST_ERROR 224 ipj_error 0 5 R
E_IPJ_KEY_LAST_ERROR 225 ipj_error 0 5 R
E_IPJ_KEY_SYSTEM_ERROR 226 ipj_error 0 5 R

External Antenna Mux

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_EXTERNAL_ANTENNA_MUX_ENABLE 512 bool 0 1 R/W
E_IPJ_KEY_EXTERNAL_ANTENNA_MUX_NUM_ANTENNAS 513 [0,16] 0 1 R/W
E_IPJ_KEY_EXTERNAL_ANTENNA_MUX_PHYSICAL_PORT 514 uint32 0 1 R/W
E_IPJ_KEY_EXTERNAL_ANTENNA_MUX_DELAY_MICROSECONDS 515 [0,1000] 0 1 R/W

GPIO

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_GPIO_MODE 192 ipj_gpio_mode 5 1 R/W
E_IPJ_KEY_GPIO_STATE 193 ipj_gpio_state 5 1 R/W
E_IPJ_KEY_GPIO_HI_ACTION 194 ipj_gpi_action 5 1 R/W
E_IPJ_KEY_GPIO_LO_ACTION 195 ipj_gpi_action 5 1 R/W
E_IPJ_KEY_GPIO_DEBOUNCE_MS 197 uint32 5 1 ms R/W
E_IPJ_KEY_GPIO_CURRENT_STATE 198 ipj_gpio_state 5 1 R

Generic

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_GENERIC_DATA 3072 uint32 1 16 R/W
E_IPJ_KEY_OEM_DATA 3073 uint32 0 16 R

Info Only

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_BOOTSTRAP_VERSION 1 uint32 0 1 R
E_IPJ_KEY_BOOTSTRAP_CRC 2 uint32 0 1 R
E_IPJ_KEY_APPLICATION_VERSION 3 uint32 0 1 R
E_IPJ_KEY_APPLICATION_CRC 4 uint32 0 1 R
E_IPJ_KEY_SECONDARY_IMAGE_VERSION 5 uint32 3 1 R
E_IPJ_KEY_SECONDARY_IMAGE_CRC 6 uint32 3 1 R
E_IPJ_KEY_SECONDARY_IMAGE_TYPE 7 uint32 3 1 R
E_IPJ_KEY_APPLICATION_REVISION_ID 8 uint32 0 1 R
E_IPJ_KEY_APPLICATION_BUILD_ID 9 uint32 0 1 R
E_IPJ_KEY_PRODUCT_ID 10 ipj_product_id 0 1 R
E_IPJ_KEY_SERIAL_NUMBER 11 uint32 0 1 R
E_IPJ_KEY_TRANSCEIVER_ID 12 uint32 0 1 R
E_IPJ_KEY_MICROPROCESSOR_ID 13 uint32 0 4 R
E_IPJ_KEY_CUSTOMER_VERSION 14 uint32 0 1 R
E_IPJ_KEY_CUSTOMER_ID 15 uint32 0 1 R
E_IPJ_KEY_CUSTOMER_PRODUCT_ID 16 uint32 0 1 R
E_IPJ_KEY_CALIBRATION_INFO 17 uint32 0 1 R
E_IPJ_KEY_TEST_INFO 18 uint32 0 1 R
E_IPJ_KEY_PRODUCT_SKU 19 ipj_product_sku 0 1 R
E_IPJ_KEY_LOT_DATE_CODE 20 uint32 0 1 R
E_IPJ_KEY_PRODUCT_KEY 21 uint32 0 1 R
E_IPJ_KEY_SECONDARY_IMAGE_LOCATION 22 uint32 3 1 R
E_IPJ_KEY_SECONDARY_IMAGE_SIZE 23 uint32 3 1 R
E_IPJ_KEY_UNIQUE_ID 24 uint32 0 2 R
E_IPJ_KEY_HARDWARE_REVISION 25 uint8 0 1 R
E_IPJ_KEY_SYSTEM_TIMESTAMP_MS 26 uint32 0 1 ms R
E_IPJ_KEY_ACTIVE_ACTIONS 27 uint32 0 1 R
E_IPJ_KEY_STORED_SETTINGS_LOAD_STATUS 4129 uint8 0 1 R

Inventory

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_INVENTORY_TAG_POPULATION 64 uint32 0 1 R/W
E_IPJ_KEY_INVENTORY_SELECT_FLAG 65 ipj_inventory_select_flag 0 1 R/W
E_IPJ_KEY_INVENTORY_SESSION 66 [0,3] 0 1 R/W
E_IPJ_KEY_INVENTORY_SEARCH_MODE 67 ipj_inventory_search_mode 0 1 R/W
E_IPJ_KEY_FAST_ID_ENABLE 69 bool 0 1 R/W
E_IPJ_KEY_TAG_FOCUS_ENABLE 70 bool 0 1 R/W
E_IPJ_KEY_TAG_OPERATION_ENABLE 71 bool 0 1 R/W
E_IPJ_KEY_TAG_OPERATION_RETRIES 72 uint8 0 1 R/W
E_IPJ_KEY_AUTOSTOP_DURATION_MS 137 uint32 0 1 ms R/W
E_IPJ_KEY_AUTOSTOP_TAG_COUNT 139 uint32 0 1 R/W
E_IPJ_KEY_AUTOSTOP_ROUND_COUNT 140 uint32 0 1 R/W

Power Mode

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_DEVICE_IDLE_POWER_MODE 257 ipj_idle_power_mode 0 1 R/W

RF Mode

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_RF_MODE 208 [0,4] 0 1 R/W

Region

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_REGION_ID 32 ipj_region 0 1 R/W

Region - Custom

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_REGION_CHANNEL_TABLE 33 uint8 0 50 R/W
E_IPJ_KEY_REGION_CHANNEL_TABLE_SIZE 34 [0,50] 0 1 R/W
E_IPJ_KEY_REGION_ON_TIME_NOMINAL 35 uint32 0 1 ms R/W
E_IPJ_KEY_REGION_ON_TIME_ACCESS 36 uint32 0 1 ms R/W
E_IPJ_KEY_REGION_OFF_TIME 37 uint32 0 1 ms R/W
E_IPJ_KEY_REGION_OFF_TIME_SAME_CHANNEL 38 uint32 0 1 ms R/W
E_IPJ_KEY_REGION_START_FREQUENCY_KHZ 39 uint32 0 1 kHz R/W
E_IPJ_KEY_REGION_CHANNEL_SPACING_KHZ 40 uint32 0 1 kHz R/W
E_IPJ_KEY_REGION_RANDOM_HOP 41 bool 0 1 R/W
E_IPJ_KEY_REGION_INDY_PLL_R_DIVIDER 42 [24,60] 0 1 R/W
E_IPJ_KEY_REGION_RF_FILTER 43 [0,2] 0 1 R/W

Select

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_SELECT_ENABLE 80 bool 2 1 R/W
E_IPJ_KEY_SELECT_TARGET 81 ipj_select_target 2 1 R/W
E_IPJ_KEY_SELECT_ACTION 82 ipj_select_action 2 1 R/W
E_IPJ_KEY_SELECT_MEM_BANK 83 ipj_mem_bank 2 1 R/W
E_IPJ_KEY_SELECT_POINTER 84 int32 2 1 R/W
E_IPJ_KEY_SELECT_MASK_LENGTH 85 [0,255] 2 1 R/W
E_IPJ_KEY_SELECT_MASK_VALUE 86 uint16 2 16 R/W

Sensor

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_TEMPERATURE_INTERNAL 176 int32 0 1 deg C R
E_IPJ_KEY_TEMPERATURE_EXTERNAL 177 int32 0 1 deg C R
E_IPJ_KEY_TEMPERATURE_PA 178 int32 0 1 deg C R
E_IPJ_KEY_PA_DIE_TEMPERATURE_TX_DUTY_CYCLE_LIMIT 4130 [0,150] 0 1 deg C R/W
E_IPJ_KEY_TEMP_COMP_OFFSETS 4131 uint32 0 5 R/W

Tag Access

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_TAG_OPERATION 96 ipj_tag_operation_type 0 1 R/W
E_IPJ_KEY_ACCESS_PASSWORD 97 uint32 0 1 R/W
E_IPJ_KEY_KILL_PASSWORD 98 uint32 0 1 R/W
E_IPJ_KEY_READ_MEM_BANK 99 ipj_mem_bank 0 1 R/W
E_IPJ_KEY_READ_WORD_POINTER 100 uint32 0 1 R/W
E_IPJ_KEY_READ_WORD_COUNT 101 [0,32] 0 1 R/W
E_IPJ_KEY_WRITE_MEM_BANK 102 ipj_mem_bank 0 1 R/W
E_IPJ_KEY_WRITE_WORD_POINTER 103 uint32 0 1 R/W
E_IPJ_KEY_WRITE_WORD_COUNT 104 [0,32] 0 1 R/W
E_IPJ_KEY_WRITE_DATA 105 uint16 0 32 R/W
E_IPJ_KEY_LOCK_PAYLOAD 106 [0,0xFFFFF] 0 1 R/W
E_IPJ_KEY_BLOCKPERMALOCK_ACTION 107 ipj_blockpermalock_action 0 1 R/W
E_IPJ_KEY_BLOCKPERMALOCK_MEM_BANK 108 ipj_mem_bank 0 1 R/W
E_IPJ_KEY_BLOCKPERMALOCK_BLOCK_POINTER 109 uint32 0 1 R/W
E_IPJ_KEY_BLOCKPERMALOCK_BLOCK_RANGE 110 uint32 0 1 R/W
E_IPJ_KEY_BLOCKPERMALOCK_MASK 111 uint16 0 16 R/W
E_IPJ_KEY_WRITE_EPC_LENGTH_CONTROL 112 ipj_write_epc_length_control 0 1 R/W
E_IPJ_KEY_WRITE_EPC_LENGTH_VALUE 113 [0,31] 0 1 R/W
E_IPJ_KEY_WRITE_EPC_AFI_CONTROL 114 uint8 0 1 R/W
E_IPJ_KEY_WRITE_EPC_AFI_VALUE 115 uint8 0 1 R/W
E_IPJ_KEY_QT_ACTION 116 ipj_qt_action 0 1 R/W
E_IPJ_KEY_QT_PERSISTENCE 117 ipj_qt_persistence 0 1 R/W
E_IPJ_KEY_QT_DATA_PROFILE 118 ipj_qt_data_profile 0 1 R/W
E_IPJ_KEY_QT_ACCESS_RANGE 119 ipj_qt_access_range 0 1 R/W
E_IPJ_KEY_QT_TAG_OPERATION 120 ipj_tag_operation_type 0 1 R/W
E_IPJ_KEY_BLOCK_WRITE_OVERRIDE 4120 uint8 0 1 R/W

Test

Key Key ID Range or Type Banks Values Units R/W
E_IPJ_KEY_TEST_ID 1024 ipj_test_id 0 1 R/W
E_IPJ_KEY_TEST_PARAMETERS 1025 uint32 0 16 R/W
E_IPJ_KEY_TEST_RESULT_1 1026 uint32 0 1 R
E_IPJ_KEY_TEST_RESULT_2 1027 uint32 0 1 R
E_IPJ_KEY_TEST_RESULT_3 1028 uint32 0 1 R
E_IPJ_KEY_TEST_DATA 1029 uint32 0 16 R
E_IPJ_KEY_TEST_FREQUENCY 1030 uint32 0 1 R
E_IPJ_KEY_TEST_POWER 1031 uint32 0 23 R
E_IPJ_KEY_TEST_RF_MODE 1032 uint32 0 5 R
E_IPJ_KEY_TEST_TIME 1033 uint32 0 1 R
E_IPJ_KEY_TEST_EVENT 1034 uint32 0 8 R
E_IPJ_KEY_TEST_REPORTS 1035 uint32 0 6 R
E_IPJ_KEY_TEST_SYSTEM 1036 uint32 0 1 R
E_IPJ_KEY_TEST_DEBUG_PORT 1037 uint32 0 1 R/W
E_IPJ_KEY_SJC_CONTROL 4123 uint8 0 1 R/W

Key Codes By Key Id

E_IPJ_KEY_BOOTSTRAP_VERSION

The version of the bootstrap image loaded in the Indy Module.

Indy Module boostrap allows update of the application image, but cannot itself be updated.

The format of the version number in hexidecimal is 0xABBCCDD where A is the Major number, BB is the Minor number, CC is the Maintenance number, and DD is the Release number.

For more details on bootloading, see the Application Update configuration example.

  • Key ID: 1
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_BOOTSTRAP_CRC

The CRC (cyclical reduncancy check) value of the bootstrap image on the Indy Module.

  • Key ID: 2
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_APPLICATION_VERSION

The version of the application image loaded in the Indy Module.

The Indy Module bootloader allows update of the application image, which can add new features and improved performance.

The format of the version number in hexidecimal is 0xABBCCDD where A is the Major number, BB is the Minor number, CC is the Maintenance number, and DD is the Release number.

For more details on bootloading, see the Application Update configuration example.

  • Key ID: 3
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_APPLICATION_CRC

The CRC (cyclical reduncancy check) value of the application image on the Indy Module.

  • Key ID: 4
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_SECONDARY_IMAGE_VERSION

Secondary (non-application) image version numbers.

  • Key ID: 5
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 3
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_SECONDARY_IMAGE_CRC

Secondary (non-application) image CRC (cyclical reduncancy check) values.

  • Key ID: 6
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 3
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_SECONDARY_IMAGE_TYPE

Secondary (non-application) image types

  • Key ID: 7
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 3
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_APPLICATION_REVISION_ID

Application image revision ID

  • Key ID: 8
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_APPLICATION_BUILD_ID

Application image build ID

  • Key ID: 9
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_PRODUCT_ID

A Product ID identifying the Indy Module product. See the ipj_product_id type enumeration for more details.

  • Key ID: 10
  • Permissions: R
  • Range/Type: ipj_product_id
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_SERIAL_NUMBER

Serial Number of the Indy Module within a particular lot.

For more details on the serial number, see the Indy Module Datasheets.

  • Key ID: 11
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_TRANSCEIVER_ID

The ID number of the Indy reader chip inside the module.

Note

This key value is only populated after the Indy reader chip has been powered up due to an RFID operation such as an Inventory. If this key is read following a reset but before an RFID operation is performed, the contents will be invalid.

  • Key ID: 12
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_MICROPROCESSOR_ID

The unique ID of the individual microcontroller inside the Indy Module. Can be used to uniquely identify the module.

  • Key ID: 13
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 4
  • Default Value: Dynamic

E_IPJ_KEY_CUSTOMER_VERSION

Contains a version identifier for specially modified module hardware. 0 in most cases.

  • Key ID: 14
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_CUSTOMER_ID

Contains an identifier for specially modified module hardware. 0 in most cases.

  • Key ID: 15
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_CUSTOMER_PRODUCT_ID

Contains an identifier for specially modified module hardware. 0 in most cases.

  • Key ID: 16
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_CALIBRATION_INFO

Calibration source information.

  • Key ID: 17
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_TEST_INFO

The number of test commands executed.

  • Key ID: 18
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_PRODUCT_SKU

The hardware SKU of the module. Each module product has multiple SKUs to enable operation in different regulatory regions.

For more details on SKUs for each module, see the Indy Module Datasheets.

  • Key ID: 19
  • Permissions: R
  • Range/Type: ipj_product_sku
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_LOT_DATE_CODE

Combined lot and date code in hexadecimal format 0xZZWWYY where ZZ is lot number, WW is work week, and YY is year produced.

For more details on the module date code, see the Indy Module Datasheets.

  • Key ID: 20
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_PRODUCT_KEY

A unique identifier for the module generated based on various parameters.

  • Key ID: 21
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_SECONDARY_IMAGE_LOCATION

Secondary Image Location

  • Key ID: 22
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 3
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_SECONDARY_IMAGE_SIZE

Secondary Image Size

  • Key ID: 23
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 3
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_UNIQUE_ID

A 64-bit Unique ID for each device XXZZWWYYAAAA where XX is SKU, ZZWWYY is Lot Date Code, and AAAA is Serial Number within the lot.

For more details on the Unique ID, see the Indy Module Datasheets.

  • Key ID: 24
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 2
  • Default Value: Dynamic

E_IPJ_KEY_HARDWARE_REVISION

The hardware revision of the module.

  • Key ID: 25
  • Permissions: R
  • Range/Type: uint8
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_SYSTEM_TIMESTAMP_MS

The current timestamp of the system. This value is initialized to 0 at startup, and counts the number of ms that have elapsed since then.

This timestamp is based on the internal timebase of the module, which is inaccurate relative to most system clocks, and should be used for information purposes only.

  • Key ID: 26
  • Permissions: R
  • Range/Type: uint32
  • Units: ms
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_ACTIVE_ACTIONS

The commands actively running on the device. Each bit represents the current state of the action based on the ipj_action enumeration.

  • Key ID: 27
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_ID

Sets the regulatory region parameters that the module will use.

Refer to the Regulatory Region section of the documentation for a list of supported regions.

  • Key ID: 32
  • Permissions: R/W
  • Range/Type: ipj_region
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_CHANNEL_TABLE

The channel table for the configured custom regulatory region. If this key code is not configured, the default channel table for the current region (configured by the E_IPJ_REGION_ID key) is used. The mapping from channel indices to frequency values depends upon the regulatory region.

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 33
  • Permissions: R/W
  • Range/Type: uint8
  • Units: –
  • Bank Count: 0
  • Value Count: 50
  • Default Value: Dynamic

E_IPJ_KEY_REGION_CHANNEL_TABLE_SIZE

The size of the custom region channel hop table.

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 34
  • Permissions: R/W
  • Range/Type: [0,50]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_ON_TIME_NOMINAL

Custom regulatory region dwell time (in ms). Only valid for the user-specified custom region. Impinj recommends that this value be 200ms less than REGION_ON_TIME_ACCESS

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 35
  • Permissions: R/W
  • Range/Type: uint32
  • Units: ms
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_ON_TIME_ACCESS

Custom regulatory region dwell time (in ms) when an Access operation is performed. Only valid for the user-specified custom region.

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 36
  • Permissions: R/W
  • Range/Type: uint32
  • Units: ms
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_OFF_TIME

Off-time (in ms) when hopping to a different channel in the custom regulatory region. Only valid for the user-specified custom region.

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 37
  • Permissions: R/W
  • Range/Type: uint32
  • Units: ms
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_OFF_TIME_SAME_CHANNEL

Off-time (in ms) when switching to the same channel in the custom regulatory region. Only valid for the user-specified custom region.

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 38
  • Permissions: R/W
  • Range/Type: uint32
  • Units: ms
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_START_FREQUENCY_KHZ

Custom regulatory region channel 1 frequency in kHz. Only valid for the user-specified custom region.

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 39
  • Permissions: R/W
  • Range/Type: uint32
  • Units: kHz
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_CHANNEL_SPACING_KHZ

Custom regulatory region channel spacing in kHz. Only valid for the user-specified custom region.

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 40
  • Permissions: R/W
  • Range/Type: uint32
  • Units: kHz
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_RANDOM_HOP

Custom regulatory region random hop enable. Only valid for the user-specified custom region.

Key Value Description
0 Hopping not randomized (Hoping sequence will be based on the order in the channels table; See E_IPJ_KEY_REGION_CHANNEL_TABLE)
1 Hopping randomized

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 41
  • Permissions: R/W
  • Range/Type: bool
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_INDY_PLL_R_DIVIDER

Indy PLL parameter. Recommended values are 24, 30, 48, and 60. Only valid for user-specified custom region.

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 42
  • Permissions: R/W
  • Range/Type: [24,60]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_REGION_RF_FILTER

Selects the RF SAW Filter for the user-configured custom regulatory region. When using the Impinj defined regions, this key does not need to be modified.

Key Value Description
0 FCC Filter
1 ETSI Filter
2 China/Japan Filter

For more information on custom regulatory regions, see the Custom Region configuration example.

  • Key ID: 43
  • Permissions: R/W
  • Range/Type: [0,2]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_ANTENNA_TX_POWER

Antenna transmit power in cdBm (eg. 2300 cdBm = 23 dBm). The default for RS500 is 2300 cdBm, RS1000 is 2700 cdBm, and RS2000 is 3000 cdBm.

  • Key ID: 49
  • Permissions: R/W
  • Range/Type: [0,3150]
  • Units: cdBm
  • Bank Count: 1
  • Value Count: 1
  • Default Value: Dynamic

E_IPJ_KEY_ANTENNA_SEQUENCE

The sequence of antennas through which the reader will cycle. Each value represents one antenna index in the sequence. Any values set to 0 will be skipped.

For more details, see the Antenna Switching configuration example.

E_IPJ_KEY_INVENTORY_TAG_POPULATION

A population estimate of the tags in view of the RF field of the antenna. Used to set the Q value in the slotted aloha protocol. The Q-Algorithm will adapt to the actual tag population with the estimate as a starting point.

A tag population estimate of 0 is a special case where the Q-Algorithm will only send queries with Q=0.

  • Key ID: 64
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 16

E_IPJ_KEY_INVENTORY_SELECT_FLAG

Inventory Select Flag. Determines which Tags will respond during Inventory. Only tags with the specified flag value will respond during inventory.

For more information about using the selected flag by configuring the select operation in IRI, see the Select configuration example.

E_IPJ_KEY_INVENTORY_SESSION

Inventory Session Number (0 - 3). Determines which session the reader will use for tag population management (AKA search mode).

For more information on configuring the session, see the Inventory Parameters configuration example.

  • Key ID: 66
  • Permissions: R/W
  • Range/Type: [0,3]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_INVENTORY_SEARCH_MODE

Inventory Search Mode. Determines how the reader will manipulate a particular session inventoried flag to control the inventoried tag population.

For more information on configuring search modes, see the Inventory Parameters configuration example.

E_IPJ_KEY_FAST_ID_ENABLE

Enable FastID capability for Monza tags.

  • Key ID: 69
  • Permissions: R/W
  • Range/Type: bool
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TAG_FOCUS_ENABLE

Enable TagFocus capability for Monza tags. Session must be S1 and Search Mode must be A->B only.

  • Key ID: 70
  • Permissions: R/W
  • Range/Type: bool
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TAG_OPERATION_ENABLE

Tag operation enable during inventory. Enables access operations after the inventory operation is completed on each inventoried tag. The specific operation to be performed is configured using the key TAG_OPERATION.

For more information about configuring the Access operation in IRI, see the Access configuration example.

  • Key ID: 71
  • Permissions: R/W
  • Range/Type: bool
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TAG_OPERATION_RETRIES

Maximum number of retries on a failed tag Access operation. If a valid tag response with a Memory Locked or Memory Overrun Gen2 Error is received, the tag access operation is not retried.

For more information about configuring the Access operation in IRI, see the Access configuration example.

  • Key ID: 72
  • Permissions: R/W
  • Range/Type: uint8
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 3

E_IPJ_KEY_SELECT_ENABLE

Enables the transmission of a Select operation before an inventory round.

For more information about configuring the select operation in IRI, see the Select configuration example.

  • Key ID: 80
  • Permissions: R/W
  • Range/Type: bool
  • Units: –
  • Bank Count: 2
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_SELECT_TARGET

Determines if the Select command modifies a tag’s selected flag or its inventoried flag.

In the case of the inventoried flag it further determines one of the four sessions.

For more information about configuring the select operation in IRI, see the Select configuration example.

  • Key ID: 81
  • Permissions: R/W
  • Range/Type: ipj_select_target
  • Units: –
  • Bank Count: 2
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_SELECT_ACTION

Specifies what flag modification should be performed during the Select command. Options are for matching tags to assert or de-assert the selected flag, or set their inventoried flag to A or to B.

For more information about configuring the select operation in IRI, see the Select configuration example.

  • Key ID: 82
  • Permissions: R/W
  • Range/Type: ipj_select_action
  • Units: –
  • Bank Count: 2
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_SELECT_MEM_BANK

The memory bank on which the Select command‘s tag filter is applied. Tag filters may be configured to match contents of the EPC, TID, and user memory banks. Tag filters will not match against the reserved memory bank.

For more information about configuring the select operation in IRI, see the Select configuration example.

  • Key ID: 83
  • Permissions: R/W
  • Range/Type: ipj_mem_bank
  • Units: –
  • Bank Count: 2
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_SELECT_POINTER

The bit offset in the specified memory bank at which the Select command‘s tag mask begins. This is bit offset and need not be word or even byte-aligned.

For more information about configuring the select operation in IRI, see the Select configuration example.

  • Key ID: 84
  • Permissions: R/W
  • Range/Type: int32
  • Units: –
  • Bank Count: 2
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_SELECT_MASK_LENGTH

This key code along with the SELECT_POINTER key determines the memory range over which the Select command mask(configured with key SELECT_MASK_VALUE) is applied. This key code specifies the length of the memory range in bits.

For more information about configuring the select operation in IRI, see the Select configuration example.

  • Key ID: 85
  • Permissions: R/W
  • Range/Type: [0,255]
  • Units: –
  • Bank Count: 2
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_SELECT_MASK_VALUE

Defines the bit pattern that the Select command‘s tag filter must match on. For a non-16 bit aligned tag mask the final bits are left justified (high order bits) in the last word.

For more information about configuring the select operation in IRI, see the Select configuration example.

  • Key ID: 86
  • Permissions: R/W
  • Range/Type: uint16
  • Units: –
  • Bank Count: 2
  • Value Count: 16
  • Default Value: 0

E_IPJ_KEY_TAG_OPERATION

Configures the specific Access command (tag operation) issued to a tag when an access command is enabled using the key TAG_OPERATION_ENABLE.

For more information about configuring the Access operation in IRI, see the Access configuration example.

  • Key ID: 96
  • Permissions: R/W
  • Range/Type: ipj_tag_operation_type
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_ACCESS_PASSWORD

Specifies the 32-bit Access password that is used in conjunction with the Access command to move the Tag to the Secured state. If the key value is non-zero, the reader implements the access procedure before issuing access commands.

For more details on using the access password, see the Access configuration example.

  • Key ID: 97
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_KILL_PASSWORD

Specifies the 32-bit Kill password used to kill the Tag, if a Kill operation is enabled.

For more details on killing tags, see the Kill configuration example.

  • Key ID: 98
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_READ_MEM_BANK

Tag memory bank specified for Read command in an Access operation.

For more details on reading tag memory, see the Read configuration example.

  • Key ID: 99
  • Permissions: R/W
  • Range/Type: ipj_mem_bank
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_READ_WORD_POINTER

Word pointer for the Read command in an Access operation. Specifies the location within the configured memory bank to start reading tag memory at.

For more details on reading tag memory, see the Read configuration example.

  • Key ID: 100
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_READ_WORD_COUNT

Number of words to read within the specified memory bank and at the specified word pointer in a Read command in an Access operation.

For more details on reading tag memory, see the Read configuration example.

  • Key ID: 101
  • Permissions: R/W
  • Range/Type: [0,32]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_WRITE_MEM_BANK

Tag memory bank configured for a Write command in an Access operation.

For more details on writing tag memory, see the Write configuration example.

  • Key ID: 102
  • Permissions: R/W
  • Range/Type: ipj_mem_bank
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_WRITE_WORD_POINTER

Word Pointer to access for Write command in an Access operation.

For more details on writing tag memory, see the Write configuration example.

  • Key ID: 103
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_WRITE_WORD_COUNT

Number of words to write in a Write command in an Access operation.

For more details on writing tag memory, see the Write configuration example.

  • Key ID: 104
  • Permissions: R/W
  • Range/Type: [0,32]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_WRITE_DATA

Data to write into the tag memory in a Write command in an Access operation. Specified in 16-bit words.

For more details on writing tag memory, see the Write configuration example.

  • Key ID: 105
  • Permissions: R/W
  • Range/Type: uint16
  • Units: –
  • Bank Count: 0
  • Value Count: 32
  • Default Value: 0

E_IPJ_KEY_LOCK_PAYLOAD

Payload field for the Lock command. Specified in a 20-bit value.

For more information on how to use the lock command, see the Lock configuration example.

  • Key ID: 106
  • Permissions: R/W
  • Range/Type: [0,0xFFFFF]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_BLOCKPERMALOCK_ACTION

BlockPermalock action for the BlockPermalock operation.

For more information on how to use the BlockPermalock command, see the BlockPermalock configuration example.

  • Key ID: 107
  • Permissions: R/W
  • Range/Type: ipj_blockpermalock_action
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_BLOCKPERMALOCK_MEM_BANK

Memory Bank to target for the BlockPermalock operation.

For more information on how to use the BlockPermalock command, see the BlockPermalock configuration example.

  • Key ID: 108
  • Permissions: R/W
  • Range/Type: ipj_mem_bank
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_BLOCKPERMALOCK_BLOCK_POINTER

Block Pointer for the BlockPermalock operation.

For more information on how to use the BlockPermalock command, see the BlockPermalock configuration example.

  • Key ID: 109
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_BLOCKPERMALOCK_BLOCK_RANGE

BlockPermalock mask range in units of 16 blocks for the BlockPermalock operation.

For more information on how to use the BlockPermalock command, see the BlockPermalock configuration example.

  • Key ID: 110
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_BLOCKPERMALOCK_MASK

BlockPermalock mask for the BlockPermalock operation.

For more information on how to use the BlockPermalock command, see the BlockPermalock configuration example.

  • Key ID: 111
  • Permissions: R/W
  • Range/Type: uint16
  • Units: –
  • Bank Count: 0
  • Value Count: 16
  • Default Value: 0

E_IPJ_KEY_WRITE_EPC_LENGTH_CONTROL

EPC length handling control for the WRITE_EPC tag operation, when selected using the key TAG_OPERATION.

There are options to automatically update the length, specificy a user length, zero the length, or do not change the length value.

For more information on how to use the Write EPC operation, see the Write EPC configuration example.

E_IPJ_KEY_WRITE_EPC_LENGTH_VALUE

The user specified EPC length value when user value EPC length control is selected using key WRITE_EPC_LENGTH_CONTROL.

For more information on how to use the Write EPC operation, see the Write EPC configuration example.

  • Key ID: 113
  • Permissions: R/W
  • Range/Type: [0,31]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_WRITE_EPC_AFI_CONTROL

Enables the write of the AFI bits in the tag EPC memory during a Write EPC operation if set to TRUE.

AFI bits are bits 18h-1Fh in EPC memory. The AFI bits will be updated to the user value set by key WRITE_EPC_AFI_VALUE.

Please note that bit 17h in EPC memory should have a logical 1 for bits 18h-1Fh to contain a valid AFI value.

For more information on how to use the Write EPC operation, see the Write EPC configuration example.

  • Key ID: 114
  • Permissions: R/W
  • Range/Type: uint8
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_WRITE_EPC_AFI_VALUE

The user specified AFI Bits when AFI Control is enabled during a Write EPC operation.

For more information on how to use the Write EPC operation, see the Write EPC configuration example.

  • Key ID: 115
  • Permissions: R/W
  • Range/Type: uint8
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_QT_ACTION

QT Action for the QT operation. Selects between QT read and write.

For more information on how to use the QT operation, see the QT configuration example.

  • Key ID: 116
  • Permissions: R/W
  • Range/Type: ipj_qt_action
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_QT_PERSISTENCE

QT Persistence for the QT operation.

For more information on how to use the QT operation, see the QT configuration example.

  • Key ID: 117
  • Permissions: R/W
  • Range/Type: ipj_qt_persistence
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_QT_DATA_PROFILE

QT Data Profile for the QT operation.

For more information on how to use the QT operation, see the QT configuration example.

  • Key ID: 118
  • Permissions: R/W
  • Range/Type: ipj_qt_data_profile
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_QT_ACCESS_RANGE

QT Access Range for the QT operation.

For more information on how to use the QT operation, see the QT configuration example.

  • Key ID: 119
  • Permissions: R/W
  • Range/Type: ipj_qt_access_range
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_QT_TAG_OPERATION

Determines the specific Access command issued to a Tag when Tag Operation enabled after the QT Command. Only Read and Write are supported, specified using the type tag_operation_type.

For more information on how to use the QT operation, see the QT configuration example.

  • Key ID: 120
  • Permissions: R/W
  • Range/Type: ipj_tag_operation_type
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_AUTOSTOP_DURATION_MS

Specifies the duration of time to perform continuous Inventory rounds. Inventory stops automatically once the specified time has elapsed.

The reader will stop inventorying when any one of the autostop conditions are met, including those defined by keys AUTOSTOP_DURATION_MS, AUTOSTOP_TAG_COUNT, and AUTOSTOP_ROUND_COUNT.

  • Key ID: 137
  • Permissions: R/W
  • Range/Type: uint32
  • Units: ms
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_AUTOSTOP_TAG_COUNT

Specifies the maximum number of tags to inventory over multiple consecutive Inventory rounds. Inventory stops automatically once the specified number of Tags are inventoried.

The reader will stop inventorying when any one of the autostop conditions are met, including those defined by keys AUTOSTOP_DURATION_MS, AUTOSTOP_TAG_COUNT, and AUTOSTOP_ROUND_COUNT.

  • Key ID: 139
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_AUTOSTOP_ROUND_COUNT

Specifies the maximum number of Inventory rounds to be performed before stopping. Inventory stops automatically once the specified number of rounds have occured.

The reader will stop inventorying when any one of the autostop conditions are met, including those defined by keys AUTOSTOP_DURATION_MS, AUTOSTOP_TAG_COUNT, and AUTOSTOP_ROUND_COUNT.

  • Key ID: 140
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_REPORT_CONTROL_TAG

Controls which Tag fields are present in a tag operation report.

For more information on how to configure and use tag operation reports, see the Report Field Configuration configuration example.

  • Key ID: 161
  • Permissions: R/W
  • Range/Type: ipj_tag_flag
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0x00000023

E_IPJ_KEY_REPORT_CONTROL_STATUS

Controls which status reports will be generated.

For more information on how to configure and use status reports, see the Measure Forward and Reverse Power configuration example.

  • Key ID: 162
  • Permissions: R/W
  • Range/Type: ipj_status_flag
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_REPORT_CONTROL_TIMESTAMP

Controls which reports from the module will contain timestamps.

  • Key ID: 163
  • Permissions: R/W
  • Range/Type: ipj_report_timestamp_flag
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_RESPONSE_CONTROL_TIMESTAMP

Controls which responses from the module will contain timestamps.

E_IPJ_KEY_TEMPERATURE_INTERNAL

Current value of the temperature measured by the sensor in the microcontroller inside the module, in degrees Celsius.

Temperature measurements are performed when this key is accessed, resulting in a slight delay reading the key, but a fresh measurement is guaranteed.

  • Key ID: 176
  • Permissions: R
  • Range/Type: int32
  • Units: deg C
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TEMPERATURE_EXTERNAL

Current extrapolated external temperature of the module in degrees Celsius. This value is based on the internal temperature of the module, TEMPERATURE_INTERNAL, and the known physical characteristics of the module.

Temperature measurements are performed when this key is accessed, resulting in a slight delay reading the key, but a fresh measurement is guaranteed.

  • Key ID: 177
  • Permissions: R
  • Range/Type: int32
  • Units: deg C
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TEMPERATURE_PA

Current value of the temperature measured by the power amplifier (PA) temperature sensor in degrees Celsius.

This temperature value is usually the highest in the module, and is used to limit RFID operations during extreme temperatures. For more details on operating temperature, see the Indy Module Hardware User’s Guides.

Temperature measurements are performed when this key is accessed, resulting in a slight delay reading the key, but a fresh measurement is guaranteed.

  • Key ID: 178
  • Permissions: R
  • Range/Type: int32
  • Units: deg C
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_GPIO_MODE

Selects the mode of the GPIO pins of the module (input, input with action, output, etc.).

For more information on how to use the GPIO functionality see the GPIO configuration examples.

  • Key ID: 192
  • Permissions: R/W
  • Range/Type: ipj_gpio_mode
  • Units: –
  • Bank Count: 5
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_GPIO_STATE

Controls the GPIO Logic level output (+3.3 V/0.0 V).

Output is driven strong (maximum load varies depending on the module and configuration, see the datasheet for more details), input is pulled internally via resistors(or left floating).

For more information on how to use the GPIO output functionality see the GPIO Output configuration examples.

  • Key ID: 193
  • Permissions: R/W
  • Range/Type: ipj_gpio_state
  • Units: –
  • Bank Count: 5
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_GPIO_HI_ACTION

Controls the action performed by the module when a GPIO transitions to a High logical state.

Note that this MUST NOT be set to the same value as GPIO_LO_ACTION on a given pin (undefined behavior will result)

For more information on how to use the GPIO functionality to trigger an action, see the GPIO Input with Action configuration example.

  • Key ID: 194
  • Permissions: R/W
  • Range/Type: ipj_gpi_action
  • Units: –
  • Bank Count: 5
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_GPIO_LO_ACTION

Controls the action performed by the module when the signal input on a GPIO transitions to a Low logical state.

Note that this MUST NOT be set to the same value as GPIO_HI_ACTION on a given pin (undefined behavior will result).

For more information on how to use the GPIO functionality to trigger an action, see the GPIO Input with Action configuration example.

  • Key ID: 195
  • Permissions: R/W
  • Range/Type: ipj_gpi_action
  • Units: –
  • Bank Count: 5
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_GPIO_DEBOUNCE_MS

Controls internal debounce timeout for GPIO actions. This is useful when inputs to the GPIOs have bounce, for example if a mechanical button or switch is used.

For examples of how to use the GPIO functionality see the GPIO configuration examples.

  • Key ID: 197
  • Permissions: R/W
  • Range/Type: uint32
  • Units: ms
  • Bank Count: 5
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_GPIO_CURRENT_STATE

Reflects the current logic level (+3.3 V/0.0 V) of the GPIO pins. State is updated while running GPIO action.

For more information on how to use the GPIO functionality see the GPIO configuration examples.

  • Key ID: 198
  • Permissions: R
  • Range/Type: ipj_gpio_state
  • Units: –
  • Bank Count: 5
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_RF_MODE

RF Mode for inventory operation. Configures the forward link and reverse link RF parameters for UHF RFID communication with tags.

Forward link parameters include: R2T Modulation, TARI, and RTcal.

Reverse link parameters include: T2R Modulation, BLF, and TRcal.

The following table provides a brief explanation of each of the valid values of this key:

Key Value Description
0 Auto (Defaults to mode 1)
1 Dense Reader Mode profile for FCC operation
2 Dense Reader Mode profile for ETSI operation
3 Very fast mode with reduced sensitivity and noise immunity
4 Very sensitive mode with reduced speed and reduced noise immunity

The following table provides the RF mode parameters of the forward and reverse link in each of the non-auto modes:

Key Value R2T Modulation T2R Modulation BLF (kHz) TARI (us) RTcal (us) TRcal (us)
1 PR-ASK M4 250 25 62.5 85.333
2 PR-ASK M4 300 25 62.5 71.111
3 DSB-ASK FM0 400 6.25 15.625 20
4 DSB-ASK FM0 40 25 75 200
  • Key ID: 208
  • Permissions: R/W
  • Range/Type: [0,4]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_FIRST_ERROR

Contains the first error that has occurred since this key was last clearedin value_index 0, as well as additional error parameters in value_index 1-4. This key is automatically cleared when the module is reset.

For more details on error codes, see the IRI Error Codes section.

  • Key ID: 224
  • Permissions: R
  • Range/Type: ipj_error
  • Units: –
  • Bank Count: 0
  • Value Count: 5
  • Default Value: 0

E_IPJ_KEY_LAST_ERROR

Contains the last error that occurred.

For more details on error codes, see the IRI Error Codes section.

  • Key ID: 225
  • Permissions: R
  • Range/Type: ipj_error
  • Units: –
  • Bank Count: 0
  • Value Count: 5
  • Default Value: 0

E_IPJ_KEY_SYSTEM_ERROR

Contains the last system level error that occurred (Hard Faults).

For more details on error codes, see the IRI Error Codes section.

  • Key ID: 226
  • Permissions: R
  • Range/Type: ipj_error
  • Units: –
  • Bank Count: 0
  • Value Count: 5
  • Default Value: 0

E_IPJ_KEY_DEVICE_BAUDRATE

The serial baud rate that the module UART1 (IRI) interface operates at after boot.

For more details on changing baud rates during operation, see the Change Baud Rate configuration example.

Like all other key values, this value is volatile, and is set to the default value upon boot. If a specific value is desired at bootup, the Stored Settings functionality of the module should be used.

Note

This key behaves differently depending on whether it is being written or read. It should be written with values from the baud_rate enum to reconfigure the device’s baud rate. When read, it will report the nominal baud rate the device is operating at, which may differ slightly from the ideal value that is specified in a write.

  • Key ID: 256
  • Permissions: R/W
  • Range/Type: ipj_baud_rate
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_DEVICE_IDLE_POWER_MODE

Power consumption mode when the device is idle. Indy Modules enter Idle mode automatically when RFID operations are completed. The modules are still capable of IRI communication while in Idle mode.

Allows selection between lower latency (faster time to start inventorying) and lower power (lower current consumption) idle modes using the enumerations of the type idle_power_mode.

For more details on using the low power modes, see the Power Management configuration examples.

For more details on low power mode features and specifications, see the Indy Module Datasheets.

  • Key ID: 257
  • Permissions: R/W
  • Range/Type: ipj_idle_power_mode
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_ONBOOT_START_ACTION

Action to perform immediately after module boot.

Like all other key values, this value is volatile, and is set to the default value upon boot. If a specific value is desired at bootup, the Stored Settings functionality of the module should be used. Specifically, see the Simple Autostart Stored Settings example.

  • Key ID: 258
  • Permissions: R/W
  • Range/Type: ipj_action
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: E_IPJ_ACTION_NONE

E_IPJ_KEY_ENABLE_LT_REPORTS

Configures the module to automatically send IRI-LT formatted reports over the UART1 (IRI) interface.

Useful in a “receive only” use case for the ITK-LT host library. The reader can be configured with an ONBOOT_START_ACTION and this key to automatically send up LT tag operation reports.

For an information on how to configure the ONBOOT_START_ACTION key, see the Simple Autostart Stored Settings example.

For more details about IRI-LT, see the ITK-LT-C documentation.

  • Key ID: 259
  • Permissions: R/W
  • Range/Type: bool
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_IN_BOOTSTRAP

Returns true if reader is executing the bootstrap. Only works for bootstrap version 1.6.8.240 and up.

  • Key ID: 260
  • Permissions: R
  • Range/Type: bool
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_EXTERNAL_ANTENNA_MUX_ENABLE

External antenna multiplexing feature enable. When the value of this key is set to TRUE, the GPIO pins of the module are used to control an external antenna mux.

For an example of how to use this key, see the IRI_External_Antenna_Mux code example.

  • Key ID: 512
  • Permissions: R/W
  • Range/Type: bool
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_EXTERNAL_ANTENNA_MUX_NUM_ANTENNAS

The number of antennas that the external antenna mux supports, if the external antenna mux feature is enabled.

For an example of how to use this key, see the IRI_External_Antenna_Mux code example.

This key determines how many GPIOs will be used to control the external antenna mux. Each GPIO allows a doubling of the number of antennas. 1 GPIO is required for 2 antennas, 2 GPIOs are required for up to 4 antennas, 3 GPIOs are required for up to 8 antennas, and 4 GPIOs are required for up to 16 antennas. The module will always use the lowest numbered GPIOs available, starting with GPIO1 and moving upward towards GPIO4.

The antennas are mapped to the GPIO states with the lowest numbered antenna mapped to the lowest valued GPIO output state, with the GPIO states interpreted as bits in a binary number. When Antenna 1 is selectected, all used GPIOs are low (0). When antenna 2 is selected, GPIO1 is high (1) and all other used GPIOs are low (0), etc. See table below for more explicit detail.

Antenna Number GPIO4 State GPIO3 State GPIO2 State GPIO1 State
1 low (0) low (0) low (0) low (0)
2 low (0) low (0) low (0) high (1)
3 low (0) low (0) high (1) low (0)
4 low (0) low (0) high (1) high (1)
5 low (0) high (1) low (0) low (0)
6 low (0) high (1) low (0) high (1)
7 low (0) high (1) high (1) low (0)
8 low (0) high (1) high (1) high (1)
9 high (1) low (0) low (0) low (0)
10 high (1) low (0) low (0) high (1)
11 high (1) low (0) high (1) low (0)
12 high (1) low (0) high (1) high (1)
13 high (1) high (1) low (0) low (0)
14 high (1) high (1) low (0) high (1)
15 high (1) high (1) high (1) low (0)
16 high (1) high (1) high (1) high (1)

Note

The module will only use and control the required number of GPIOs to mux between the configured number of antennas, as described above. Unused GPIOs will not be driven, and are shown for informational purposes only.

  • Key ID: 513
  • Permissions: R/W
  • Range/Type: [0,16]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_EXTERNAL_ANTENNA_MUX_PHYSICAL_PORT

The physical antenna port that the common port of the external antenna mux is connected to, if the external antenna mux feature is enabled.

For an example of how to use this key, see the IRI_External_Antenna_Mux code example.

  • Key ID: 514
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_EXTERNAL_ANTENNA_MUX_DELAY_MICROSECONDS

Delay in microseconds between RF activity on externally muxed antennas, if the external antenna mux feature is enabled.

For an example of how to use this key, see the IRI_External_Antenna_Mux code example.

  • Key ID: 515
  • Permissions: R/W
  • Range/Type: [0,1000]
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_ANTENNA_SEQUENCE_OPTION

Configures whether configurations sequenced using the antenna descriptors are attached to different physical antenna ports, or are simply mutiple logical descriptors for the same physical antenna. FALSE is “Physical” and TRUE is “Logical”.

When set to TRUE (Logical), antenna values in the provided sequence will be interpreted as logical numbers and the appropriate antenna descriptor values will be loaded from the ANTENNA_DESCRIPTORS key when switching antennas.

For an example of how to use this key, see the IRI_Antenna_Descriptors code example.

  • Key ID: 544
  • Permissions: R/W
  • Range/Type: bool
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_ANTENNA_DESCRIPTORS

Banked key to hold key-value pairs of logical antenna parameters. This key enables loading a different configuration for each antenna in a sequence.

For an example of how to use this key, see the IRI_Antenna_Descriptors code example.

  • Key ID: 545
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 16
  • Value Count: 8
  • Default Value: 0

E_IPJ_KEY_ANTENNA_PHYSICAL_PORT

Physical antenna port a specific antenna in the antenna descriptors sequence is connected to. This key is only to be used internally to the module in the ANTENNA_DESCRIPTORS key.

For an example of how to use this key, see the IRI_Antenna_Descriptors code example.

E_IPJ_KEY_TEST_ID

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Test Command ID is used to select the specific test command.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1024
  • Permissions: R/W
  • Range/Type: ipj_test_id
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TEST_PARAMETERS

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Test Command Parameters provide inputs for specific test commands.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1025
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 16
  • Default Value: 0

E_IPJ_KEY_TEST_RESULT_1

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Test Command Result 1.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1026
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TEST_RESULT_2

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Test Command Result 2.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1027
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TEST_RESULT_3

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Test Command Result 3.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1028
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TEST_DATA

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Test Command Data.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1029
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 16
  • Default Value: 0

E_IPJ_KEY_TEST_FREQUENCY

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Last locked frequency.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1030
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TEST_POWER

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Most recent transmit power.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1031
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 23
  • Default Value: 0

E_IPJ_KEY_TEST_RF_MODE

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

RF Profile identifier.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1032
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 5
  • Default Value: 0

E_IPJ_KEY_TEST_TIME

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Last transmit on time.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1033
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TEST_EVENT

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Event Info.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1034
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 8
  • Default Value: 0

E_IPJ_KEY_TEST_REPORTS

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Report Info.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1035
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 6
  • Default Value: 0

E_IPJ_KEY_TEST_SYSTEM

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

System Info.

For more details on using the test commands, see the Test Commands configuration examples.

  • Key ID: 1036
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_TEST_DEBUG_PORT

Note

The test commands are intended for engineering use only, and should not be deployed in production systems. Their behaviors are subject to change when firmware is updated.

Serial Debug Port Configuration. Each bit in this key enables or disables a certain type of debug string printing.

For more details on using this key, see the Debug UART Test Behavior section of the debugging documentation.

  • Key ID: 1037
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_GENERIC_DATA

Generic data storage for third parties to add custom data to the device.

  • Key ID: 3072
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 1
  • Value Count: 16
  • Default Value: 0

E_IPJ_KEY_OEM_DATA

OEM data storage to add custom data to the device during calibration.

  • Key ID: 3073
  • Permissions: R
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 16
  • Default Value: 0

E_IPJ_KEY_BLOCK_WRITE_OVERRIDE

Controls BlockWrite command override control. See the Write configuration example for more details.

Key Value Description
0 No Effect (default behavior)
1 Force one word BlockWrite if two word enabled
2 Force no BlockWrite (single word Writes)
3 Force two word BlockWrite
  • Key ID: 4120
  • Permissions: R/W
  • Range/Type: uint8
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_SJC_CONTROL

Controls SJC Enabling and debug. 0 = Enabled, 2 = Disabled, 3 = Fast SJC convergence

  • Key ID: 4123
  • Permissions: R/W
  • Range/Type: uint8
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_STORED_SETTINGS_LOAD_STATUS

Loading status for stored settings. 1 if stored settings were loaded properly, 0 otherwise.

  • Key ID: 4129
  • Permissions: R
  • Range/Type: uint8
  • Units: –
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 0

E_IPJ_KEY_PA_DIE_TEMPERATURE_TX_DUTY_CYCLE_LIMIT

RS1000 only. When the PA die temperature exceeds this limit the trasmitter on time duty cycle will proportionally be reduced in order to avoid hitting the PA die maximum thermal limit of 150 C. Setting this value to 150 C will disable this behavior.

  • Key ID: 4130
  • Permissions: R/W
  • Range/Type: [0,150]
  • Units: deg C
  • Bank Count: 0
  • Value Count: 1
  • Default Value: 130

E_IPJ_KEY_TEMP_COMP_OFFSETS

Constant offset added to each of the TempComp power curves
  • Key ID: 4131
  • Permissions: R/W
  • Range/Type: uint32
  • Units: –
  • Bank Count: 0
  • Value Count: 5
  • Default Value: 0

Table Of Contents

Previous topic

Data Types and Defines

Next topic

Regulatory Regions