STREAMING EXTENSION OF GEN2
COMMUNICATION PROTOCOL

VER. 2.0.2, MAY 7, 2022
BACKSCATTER COMMUNICATION RESEARCH CONSORTIUM
KEIO UNIVERSITY

Streaming extension of Gen2 communication protocol

1 Overview
This document proposes an extension of ISO/IEC 18000-63 (2015) specification (hereafterreferred to as Gen2)[1] or a new stream of protocol to enable concurrent sensor data
streaming from multiple radio frequency (RF) tags with multiple subcarrier channels. The
Gen2 streaming system comprises a reader/writer and a single or a group of streaming
enabled Gen2 tags (hereafter referred to as reader and stream tags, respectively), as
shown in Figure 1.
streaming enabled Gen2 tag

communication+power supply

RFIC
sensorbackscatter
commands / power

TX
RX

readerstream tag

stream tag

Figure 1

Streaming Gen2 system composition

As shown in Figure 1, a stream tag comprises an RF integrated circuit (RFIC) and a sensor
connected to RFIC through, for example, the serial peripheral interface (SPI). The RFIC
handles the communication with the reader using an extended Gen2 protocol.
Additionally, it provides power to the sensor.

The Miller encoded subcarrier is extensively used in commercial Gen2 RFID systems.
However, only one tag responds to its reader at a time. In the Gen2 streaming system, eachstream tag in the view field of the reader is assigned a dedicated subcarrier channel by thereader, and the sensor data can be concurrently streamed using the subcarriers. An
overview of the communication protocol is explained in the next subsection.

2.0.2 May 7

1

Streaming extension of Gen2 communication protocol

1.1 Communication protocol
The high-level overview of the communication protocol is shown in Figure 2. The
communication between the reader and stream tags progresses via the following
three stages:

readerstream tagstage1:Inventory
iterate for each tag
subcarrier allocation

stage2:
sensor configuration

stream start
stage3:streaming

stream stop

Figure 2 Communication protocol between the reader and stream tags. Shaded blocks represent anadditional protocol for Gen2

■Stage 1 Inventory: During this stage, the reader inventories each of both the streamtags and standard Gen2 tags using Gen2 SELECT, QUERY, and related commands.
Although the algorithm for subsequent subcarrier allocation depends on the reader’s
implementation, collection of received signal strength indicator (RSSI) during theinventory process is recommended. The practice adopted in this document is to assign
the weak RSSI subcarrier to subcarriers close to powering continuous waves [3]. This isdone to reduce mutual interference caused by subcarrier harmonics.

2.0.2 May 7

2

Streaming extension of Gen2 communication protocol■Stage 2 Subcarrier assignment and allocation: A unique subcarrier is assigned 1 andallocated to each stream tag using Gen2 WRITE command to specific memory
addresses. Each stream tag is given a zone ID that distinguishes between the streamingzones. When the subcarrier is allocated, each stream tag is placed into the
DCO_LOCKED state, essentially awaiting the STREAM_START command.
After the subcarrier allocation, the sensor in a stream tag can be configured using an
RFIC-sensor interface such as SPI.

■Stage 3 Streaming: To start streaming from all stream sensors, the reader sends a
STREAM_START command, which is chosen from one of the Gen2 RFU commands.
Optionally, a STREAM_STOP command can be used to stop the streaming from thestream tags with a specified zone ID.

Each stream tag should be capable of inventory, read, and write operations in theexisting Gen2. In addition to the present communication protocol, the stream tag
should be capable of handling subsequent subcarrier channel allocation and data
streaming, as shown in Figure 3.

Assignment means the determination of subcarrier frequency chosen for a particularstream tag. Whereas, allocation means the communication between the reader andstream tag that enables the stream tag to set the assigned subcarrier.
1

2.0.2 May 7

3

Streaming extension of Gen2 communication protocol

readyExisting Gen2 state model

arbitrate
reply
acknowledge
write toDCO_LCKwith lock = 1
STRM_START

open

dco_locked

write toDCO_LCKwith lock = 0
STRM_STOP

streamFigure 3 State transition of a stream tag

2.0.2 May 7

4

Streaming extension of Gen2 communication protocol

2 Communication protocol detail
2.1 Subcarrier frequency and symbol definition
In Stage 3 of communication, one encoded symbol should be represented with at least
two cycles of subcarrier. If a symbol is represented with only one cycle of subcarrier, it isbaseband coding. The subcarrier frequencies in the stream Gen2 system comprise integer
multiples of the base subcarrier frequency, as shown in Figure 4. In the figure, three basesubcarrier frequencies are denoted by subcarrier 1 with ms = 1, 2, 3. Notably, this coding isapplied only to Stage 3; the standardized Gen2 coding and modulation specified by thereader can be employed in Stages 1 and 2.

For example, when the symbol rate in the streaming phase is 10 kbps, ms = 2, and nocoding is introduced, the frequencies of the subcarriers 1, 2, and 3 are 20, 40, and 60 kHz,
respectively.

To facilitate the demodulation in the reader, we employ Miller encoding or differential Miller
encoding along with subcarrier coding.

2.0.2 May 7

5

Streaming extension of Gen2 communication protocol

m s= 2on e sym b ol d urationm s= 3m s= 4sub carrier3

sub carrier 2

sub carrier 1
Tim e
on e sub carrier cycle
Figure 4 Subcarrier frequency and symbol

The state diagram of Miller encoding is shown in Figure 5.
In p ut/Outp ut

10
0/00

In tern al state

1/10
1/01
1/01

00

11
1/10

0/00
0/11

0/11

01

Figure 5 Miller coding state transition

The subcarrier is XORed with Miller encoded baseband signal except for the preamble, as
explained below.
The differential Miller encoding state model and differential encoder are shown in Figure 6.

2.0.2 May 7

6

Streaming extension of Gen2 communication protocol

0/00Internal state

optional differential encoderInp ut/Outp ut

10

1/10
1/01
1/01

00

11

x1

x0

+

1/10
0/00
0/11

D0

0/11

01

D0 shall be set to zero at the
beginning of each frame

Figure 6 Differential Miller coding

2.2 Streaming frame
A stream tag comprises a continuous frame, shown in Figure 7, to transfer streaming data to
the reader in Stage 3. The leading 5 bits are the preamble without Miller encoding. The restof the frame should be encoded with Miller or differential Miller coding. Furthermore, therest of the frame should produce the CRC-16, as follows.


Generation polynomial is x16 + x12 + x5 + 1



16 bits register preloaded with 0xFFFF

Data MSB was input and all the data clockedThe final 16 bits inverted to obtain CRC-16

For checking, the register filled with 0xFFFF, all the data including CRC-16 clocked, andchecked if the output is 0x1D0F
It should be noted that zone ID is specified by the reader, whereas sequence ID is theframe ID automatically incremented by one in each frame. The data length N is specified
by the reader with the STR_CNT register.
Preamble

Zone ID

Sequence ID

Data

CRC16

5 bit

3 bits8 bit (0-255 sequential data)

N × 8 bits

16 bits001

255

equivalent
1010101010

Figure 7 Return link frame structure in stage 3

2.0.2 May 7

7

Streaming extension of Gen2 communication protocol

2.3 Subcarrier allocation and bit rate configuration
Generally, the RFIC design to generate subcarrier frequency in a stream tag falls under thescope of the the manufacturer. However, there is a proven way to generate specified
subcarrier frequency with a relatively slow clock rate of the master clock in RFIC is byadjusting the frequency of the oscillator in a tag to be an integer multiple of designatedsubcarrier frequency; this is done using a digitally controlled ring oscillator (DCRO).
Alternatively, subcarrier frequency can be produced by decimating a single master clock.
However, in such a design, a high subcarrier frequency tends to involve bias, which may
violate the subcarrier accuracy requirement.

The subcarrier frequency produced by a stream tag does not immediately match thespecified frequency owing to the instability of the DCRO clock. Therefore, the proposed
communication protocol performs an iterative adjustment wherein two commands,
DCO_CNT and SUB_DIV, are used repeatedly. The DCO_CNT command specifies the clock
frequency, whereas the SUB_DIV command specifies the decimation ratio to both produce
a subcarrier from the DCRO clock and define the bitrate.

2.0.2 May 7

8

Streaming extension of Gen2 communication protocol

Interrogator

MSMA tag

specify the decimation numberof subcarrier frequency N (SUB_DIV)
delayed reply

specify the N times ofsubcarrier frequency with 14 bits value (DCO_CNT)
subcarrier frequency
produced for 8 msec
delayed reply
measurement
adjust DCO_CNT value

specify the N times ofsubcarrier frequency with 14 bits value (DCO_CNT)

Figure 8 Iterative subcarrier frequency adjustment

The 14-bit DCRO value comprises overlapped coarse, middle, and find registers (Figure 9).
coarsem id d lefin eFigure 9 Overlapped DCO_CNT register value

The 14-bit value X relates to the actual frequency as follows.
𝑓𝑓 = 400 𝑋𝑋 + 691200

2.0.2 May 7

9

Streaming extension of Gen2 communication protocol

Consequently, one subcarrier frequency can be represented in general with four patternsof register values, thereby allowing some errors in the adjusting accuracy of the DCRO
(Figure 10).

overlap bit = 1
x2

x1

x1

x2

1
0

x2

overlap bit = 0

y-1

y-2

carry down

0
1

y-1

x1

x2

y-2

x1

0
0

y-1

y-2

y-1

y-2

1
1

Figure 10 Candidates to represent one overlap bit

However, the increase in the subcarrier frequency against a unit increase in each registervalue cannot exceed 2.0 because such a case will produce a gap in the subcarrier
frequency that cannot be compensated (Figure 11).

Sub carrier freq uen cy

coarsem id d lecoarse value
n -1

n

n+ 1

Figure 11 Slopes of each DCO value cannot be different by more than two times. This figure depicts
the cases of coarse and middle registers.

The available subcarrier frequency and bitrate are listed in Table 1. The lowest subcarrier
frequency, 100 kHz, is chosen to avoid interference from the powering continuous wave
from the reader. The lowest symbol rate is confined to 10 kbps, as lower symbol rate links
are affected by DCRO frequency fluctuation.
2.0.2 May 7

10

Streaming extension of Gen2 communication protocol

Table 1 Subcarrier and bitrate allocation

An example of subcarrier frequency allocation is explained below.
i.

The reader writes to the SUB_DIV register as 4 division = b100. The bitratevalue in the word does not matter in this particular SUB_DIV.

ii.

The interrogator writes to the DCO_CNT register with an appropriate
frequency value.

iii.

The tag replies with the DCO_CNT register divided by four subcarrier
frequencies for 8 ms.

iv.

The reader samples the information regarding 1/4th DCO frequency andissues an updated DCO_CNT value to compensate for the error.

Example:Assuming that a reader wants to allocate a 200 kHz subcarrier to a stream tag after
inventory, the DCRO frequency of the stream tag should be 1.6 MHz according to Table 1.

2.0.2 May 7

11

Streaming extension of Gen2 communication protocol

For DCO control, the interrogator expects to receive a 400 kHz (1/4th DCO) subcarrier for 8
ms after issuing a DCO_CTL.
i.

The DCO_CTL is 0111 11101 10000. Suppose that the received subcarrier is404000 Hz, which is approximately 1 % higher than the designatedfrequency. Therefore, the interrogator needs to lower the tag’s clock byapproximately 1 %.

ii.

The interrogator knows that the DCRO frequency is 1.6 MHz and thereceived subcarrier frequency is multiplied by four. This yields 1616 = 404 × 4
kHz, which is 16 kHz higher than the designated frequency. The DCRO
frequency can be adjusted with 0.4 kHz resolution for 1 bit of DCRO finedivision (5 bits from LSB (the Least Significant Bit)).

iii.

The bias of 16 kHz can be compensated with 16/0.4 = 40 = 0 × 28 = b0010
1000, which is subtracted from the original DCO_CNL = 0111 11101 10000.
This yields 0111 11100 01000.

2.4 Writing configuration with Gen2 WRITE command
The reader assigns and allocates subcarriers to stream tags and configures their sensors
using Gen2 WRITE command. The structure of a WRITE command is shown in Figure 12.
WordPtr uses Extensible Bit Vectors defined in Gen2. Special register addresses for subcarrier
allocation and sensor configuration are specified.
Write (8 bit)

Membank

WordPtr

Data (XORed withHandle CRC16

handle)11000011

2 bits(EBV)

16 bits(11:user)
Figure 12 Gen2 WRITE command

The response from a tag to the reader after receiving a WRITE command is as follows. Upon
receiving the WRITE command, a tag responds with the following delayed reply. When an
MSMA tag fails to perform the instructed write or configure, it replies with Success/Fail = 1
with a proper error code defined in Annex I of [1].

2.0.2 May 7

12

Streaming extension of Gen2 communication protocol

Preamble

HeaderHandle/Error code

CRC16

10 bits

1 bit

16 bits

16 bits

4M/BLF + 010111

0:successHandle4M/BLF + 010111

1:failError code

The special user memory addresses to stream tag configurations are defined in Table 2. The
values should be stored as MSB first byte order. The implementation of the special memory
address can be RFIC and/or vendor dependent.
Table 2 Special register assignment

Memory alias

Description

Memory WordPtr

SPI_WRITE

Writes a byte data to the SPI

80Hinterface
DCO_CNT

Sets the subcarrier frequency

81H

SUB_DIV

Sets the division number of tag

82Hclock and bitrate of thesubcarrier
SPI_INST

Sets the write and read83H

instruction words used in the SPI
interface
STR_CNTSpecifies the leading address

84H

and number of bytes for thesensor to read. Zone ID canalso be specified with thiscommand
DCO_LCKDCO frequency lock and85H

unlock. DOC unlock state
MSMA tags do not produce
subcarrier streaming

2.0.2 May 7

13

Streaming extension of Gen2 communication protocol

To accommodate many types

SPI_CNTL

87H

of SPI sensors, the SPI interface
is configured through thisregister
To trigger the external sensors

GPIO_CNTL

88H

and devices, the output port
can be toggled by writing tothis register

SPI _WRITE (80 H)
The high byte and low byte are the address and data to be written, respectively. The tag
uses a sensor-specific write command specified in the SPI_INST register (for example 0x0A, inthe case of ADXL). Depending on the type of sensor, the configuration of the sensor is
obtained through SPI by writing to the SPI_WRITE register.
15

14

13

12

11

10

9

8

7

Address

6

5

4

3

2

1

0

Data

DCO_CNT (81 H)
15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

X

X

C3

C2

C1

C0

M4 M3 M2 M1 M0 F4

F3

F2

F1

F0

2

1

0

Explained in subsection 1.4.
SUB_DIV (82 H)
15 14 13 12

11

10

9

8

7

6

5

4

3

X

X

X

S2

S1

S0

B6

B5

B4

B3 B2 B1 B0

X

X

X

S2，S1，and S0：Subcarrier divider control words;
bit rate：B0–B6: bitrate divider control words

2.0.2 May 7

14

Streaming extension of Gen2 communication protocol

SPI_INST (83 H)
This word defines the WRITE and READ command bytes for SPI communication. High 8 bits
for WRITE and low 8 bits for READ sensor and RFIC communication are shown in Figure 7; for
ADXL362, they are 0 × 0A and 0 × 0B, respectively.
15

14

13

12

11

10

9

8

7

0 × 0A

6

5

4

3

2

1

0

0 × 0B

STR_CNT (84 H)
This word defines the data to be read from the RFIC The high 8 bits (15:8) is the starting
address. Bits 7:4 is the number of bytes minus 1 2 to be read. For example, if we read 2 bytes
of data, the bits 7:4 shall be 1. bit 3 is to select the antenna and bits 2–0 is to select the
ZONE ID. For ADXL362 to read XDATA, YDATA, ZDATA, TEMP (total 16 × 4 = 64 bits = 8 bytes).

Additionally, STR_CNT is used to read the SPI register value by the Gen2 Read command, as
explained in the SPI_READ subsection. Although the SPI register is usually bound by a byte,
Gen2 READ always returns two bytes (one word) of data. Therefore, the number of bytes
should be an odd number, such as 1, 3, 5, and the second byte should be discarded by theinterrogator.
15

14

Address

13

12

11

10

9

8

7

6

5

# of bytes to

4

3

2

1

RFU

ZONE ID

0

001

0

read
0 × 081000

DCO_LCK (85 H)
To avoid unexpected or accidental streaming from background stream tags, the reader
should explicitly report the completion of subcarrier allocation to the stream tags. This
completes their subcarrier allocation by writing the or unlock bool value, zone ID, andcoding method to the DCO_LCK register. The default value of the lock flag when a tag
wakes up is “unlock”. A stream tag does not start streaming even upon receiving the2This “minus 1” is to specify up to 16 bytes of data instead of 15 bytes.

2.0.2 May 7

15

Streaming extension of Gen2 communication protocol

STRM_START command if its lock flag is “unlock” or its zone ID does not match the specified
zone ID in STRM_START.
15–10

9

8

7

RFU

Target sensor

6

coding option 3

5

4

3

2–0

RFU

RFU

Lock flag

RFU

SPI address
X

Lock

Depend on the
choice of RFIC

1 = Miller

0:false

3 = Miller differential encoding

1:trueResponse to writing to the DCO_LCK register is given as follows.

Preamble

Success/Fail

HandleCRC16

10 bits

1 bit

16 bits

16 bits

4M/BLF + 010111

0:success
1:ErrorSPI_CNTRL(87H)
This word defines the behavior settings of the SPI interface for various sensors. The default
value at reset is 0x0000. The register value is given as follows.
15
RFU

0

14

13

12

11

10

9

8

7

6

5

4

3

2

1

ASSL ACC_

SPI_

0

OFF

MODE

0

00

0

Bit 3: ASSL (active slave select level), which is chip select (CS) status for an active slave
device.

3

Coding options 0 and 2 are used for experimental convolutional coding.

2.0.2 May 7

16

Streaming extension of Gen2 communication protocol

0: Active L level, 1: Active H levelBit 2: ACC_OFF (Auto Command Code OFF)
0: The command code defined by SPI_INST is automatically added to the SPI Write/Readsequence.
1: The command code defined by SPI_INST is NOT automatically added in the SPI
Write/Read sequence.
Bit 1, 0: SPI_MODE, which specifies the operation mode (clock polarity and phase) in SPI
communication. CPOL and CPHA should be set by the RFIC to the following values.
SPI mode

CPOL CPHA Data shift timing

Data sampling timing

00

0

0

SCK falling ddge

SCK rising edge

01

0

1

SCK rising edge

SCK falling edge

10

1

0

SCK rising edge

SCK falling edge

11

1

1

SCK falling edge

SCK rising edge

CPOL: clock polarity
CPOL = 0 is a CS that idles at 0
CPOL = 1 is a CS that idles at 1.
CPHA: Clock phase
CPHA determines the timing (i.e. phase) of the data bits relative to the clock pulses.
GPIO_CTRL(88H)
This word sets the external GPIO value as OUTPUT. The number of GPIO ports depends on
the available PADS. As a tentative value, the following defines four GPIO ports.
15–4

3

2

1

0

RFU

GPIO 3GPIO 2GPIO 1

GPIO 0

0

0

0

0

0

2.0.2 May 7

17

Streaming extension of Gen2 communication protocol

Bit 3: GPIO port 3 High/Low (default pull down)
Bit 2: GPIO port 2 High/Low (default pull down)
Bit 1: GPIO port 1 High/Low (default pull down)
Bit 1: GPIO port 0 High/Low (default pull down)

2.5

SPI_READ with Gen2 READ command

SPI registers can be read by a combination of STR_CTL(84H) and Gen2 READ commands.
Before any reading of the SPI register, the register address should be specified by STR_CTL(84H). The register data are moved to the two bytes buffers 8CH to 8FH (2 bytes × 4 = 4
words = 8 bytes).

A Gen2 Read command for specifying the special address of USER memory 8CH (EVB 1000
0001 0000 1100) is translated as an instruction to read an SPI memory. If the destination
sensor is capable of reading up to two words, the LSB should be the data of the specificregister. If the sensor is not capable of reading multiple bytes, the second byte is paddedwith zeros.
READ

MEMBANK

WORDPTr

WordCount RN

CRC

8

2

EBV (28

16 bits

16

Number ofhandleCRC-16bytes)
11000010

11:USER

8CH

words toread (from1 to 4)Note that WORDPTr should always be a fixed value. We use 8CH but it can be RFIC
manufacture/vendor dependent. It cannot be 8D, 8E, or 8F even when we read multiple
words. WordPtr format of 8CH is as follows.
Second byte

First byte

7

7

6–0

6–0

2.0.2 May 7

18

Streaming extension of Gen2 communication protocol

1

000 0001

0000 1100

Tag reply to a successful Read command follows the Gen2 protocol and is given as follows.
Header

Memory Words

RN

CRC

8

1 word16 bits

16

0

Data

handle CRC-16

2.6 Sensor data streaming SPI interface exchange
The RFIC in a stream tag should collect sensor data through the SPI interface and plug thedata into the streaming frame. The data obtained from a sensor are synchronouslytransferred to the backscatter modulator, as shown in Figure 15.
This can be done by providing the bitrate-level CLK signal from the RFIC and sensor.
Furthermore, the SPI sensor should have the capability to stream continuously.

Figure 13 Sensor data encapsulation in the streaming stage

2.0.2 May 7

19

Streaming extension of Gen2 communication protocol

2.7 Start streaming
This command triggers the streaming from the designated interrogation zone, which is
specified using the zone ID. The command bits use one of the RFU commands of Gen2, asgiven below.
Command (STRM_START)

Zone ID

CRC

8

3

CRC-5

11011010

zone ID

CRC-5

STRM_START should be preceded by FrameSync of Gen2. The selection of

the embed

sensors or the external analog sensor should be specifiedby writing to the DCO_LCK
register. Generally, the streaming start command is issued repeatedly for two or three times
to avoid any stream tag from failing to start. Stream tags, whose Zone IDs are different fromthe Zone ID in a stream start command, continue to remain in the DCO_LCK state, as
shown in Figure 3.

2.8 Stream stop
The reader can suspend ongoing streaming from a group of stream tags that belong to a
specified Zone ID. Frame_START and Frame END are demanded for tags to prepare for the
demodulation. The technical discussion of full duplex backscatter is provided in [5]Frame_START

Command (STRM_STOP)

Zone ID

CRC

Frame END

6

8

3

CRC-5

4

10101011011011

zone ID

CRC-5

4 bit data-0

The STRM_STOP command (or the repeated STRM_STOPs to avoid decoding failure in thebackscatter sensor) is special because it is issued by the reader while a group of streamtags backscatter. STRM_STOP uses the subcarrier coding instead of Miller coding tofacilitate the demodulation and timing synchronization in the stream tag.
The reader-to-tag link for STRM_STOP should employ the following parameters to realize afull duplex while a group of tags is backscattering.

2.0.2 May 7

20

Streaming extension of Gen2 communication protocol

・Low modulation index coded subcarrier: the subcarrier frequency is 10 kHz andforward link bitrate is 2.5 kbps (4 subcarrier cycles per bit). This is to facilitate thedemodulation in a stream tag. The subcarrier adoption is to shift the downlink signal
from the DC component, which is strongly suppressed by the HPF (High Pass Filter) in abackscatter sensor.
・0° phase for data 0° and 180° phases for data 1 in the subcarrier.
・Modulation index = 0.1
・Pulse shaped with raised cosine filter with roll-off factor 1.0

STRM_STOP command shall be preceded with the 16 bits data 0.
data-0T=0.4ms

data-11

100

T=0.4ms

Figure 14 STRM_STOP encoding

Reference[1]. “ISO/IEC 18000-63, Information Technology–Radio frequency identification for item
management-, Part 63 parameters for air interface communications at 860 MHz to960 MHz type C,” 2015.
[2]. J. Mitsugi, Y. Kawakita, K. Egawa, and H. Ichikawa, "Perfectly synchronizedStreaming from multiple digitally modulated backscatter sensor tags,” IEEE Journalof Radio Frequency Identification, vol. 3, no. 3, pp. 149-156, Sept. 2019, doi:
10.1109/JRFID.2019.2914246.
[3]. Nitish Rajoria, Yuki Igarashi, Jin Mitsugi, Yusuke Kawakita, and Haruhisa Ichikawa,“Comparative analysis on channel allocation schemes in multiple subcarrier passive
communication system,” IEICE TRANSACTIONS on Communications vol. E98-B No.9
pp.1777-1784, (2015). doi: 10.1587/transcom.E98.B.1777.

2.0.2 May 7

21

Streaming extension of Gen2 communication protocol[4]. Kuanfeng Tang, Chao Zhang, Maodong Wang, Xu. Shengliang, Ji. Shujiang, Na
Yan, Hao Min, and Jin Mitsugi. “A novel method to improve the subcarrier
frequency accuracy for UHF RFID sensing system,” In IEEE RFID 2021 (Virtual Event,
USA). pp.1-6, (2021), doi: 10.1109/RFID52461.2021.9444388.
[5]. J. Mitsugi, Y. Kawakita and H. Ichikawa, "Full duplex backscatter communication
with subcarrier synchronized decimation," 2021 IEEE Wireless Communications andNetworking Conference (WCNC), 2021, pp. 1-6, doi:
10.1109/WCNC49053.2021.9417289.

Acknowledgement
This work includes the results of the research and development for expanding radio
resources (JPJ000254) conducted in FY2021 by the Ministry of Internal Affairs andCommunications.

2.0.2 May 7

22

Streaming extension of Gen2 communication protocol

A. Guidelines for ADXL362 configuration through Gen2 WRITE
commands
a. Prerequisite
Data streaming from ADXL362 with a stream tag requires the following configuration using
Gen2 memory WRITE commands. An example connection between the RFIC and ADXL362
is shown in Figure 15.

M ISO
M OSI
SCLK
CS

RFIC

SPI Slave (sen sor)

VDD_ S
VDD
VSS

PAD name

category

MISO
MOSI

SPI

SCLK

Type

Output/Input

Digital

Input

DigitalOutputDigitalOutputValuehigh：1.6~2.5V,
low：0
high：1.6~2.5V,
low：0
high：1.6~2.5V,
low：0

VSS

Signal GND

PowerInput/Output

VDD_S

SPI output voltage
regulation

Digital

Input

VDD

Power

OutputAntenna N

RF antenna N

Antenna P

RF antenna P

01.4V~2V

Figure 15 RFIC, ADXL362, and Interrogator interface diagram

Before any GEN2 READ/WRITE command issuance, SPI READ/WRITE commands (which are 0
× 0B and 0 × 0A for ADXL362, respectively) should be registered to RFIC by issuing a WRITE to
SPI_INST (83 H = EBV10000011) of the user memory (bank 11) to obtain the following.

2.0.2 May 7

23

Streaming extension of Gen2 communication protocol

WRITE

Membank WordPtr

Data

10000011 16 bits XOR

11000011 11

HandleCRC-16

16 bits

16 bits

with handleb. Writing to ADXL register
A Gen2 WRITE command to a specific user memory (address 0 × 80 = EBV 10000000) in user
memory bank (bank 11) received by the RFIC passes through to the SPI using the registered
WRITE command. For example, if we write a byte data point (0 × aa) to a specific addressof ADXL (0 × 77), the WRITE command is as follows.
WRITE

Membank WordPtr

11000011 11

Data

HandleCRC-16

10000000 16 bits (0 16 bits

16 bits

× 77aa)XOR
withHandleAfter receiving the WRITE command, the tag responds with a delayed reply, which
comprises a sequence of specified subcarriers of 43 bit duration.
Preamble

Success/Fail

HandleCRC16

10 bits

1 bit

16 bits

16 bits

4M/BLF + 010111

0: success
1:Errorc. Popular configuration parameters
The following is the configuration of ADXL applied in our experiments.
Description

SPI address

Data example

Note

2.0.2 May 7

24

Streaming extension of Gen2 communication protocol

Sensor activation

0 × 200 × 96

Data are the direct reading of thethreshold value

acceleration level that activates thesetting (lower byte)

MEMS sensor. 0 × 96 = 150 mg
activation.

Sensor activation

0 × 210 × 00threshold value

The threshold level can be specified
with 11 bit data.

(higher byte)
Activity measurement

0 × 220 × 01

duration

To avoid false triggering, several
samples are used to distinguishbetween the activate and inactivate
functions. The absolute time isdetermined by DATA/output data
rate (ODR). ODR is defined in Filter
Control (0 × 2C) register.

Activate/Inactivate

0 × 270 × 01

control

Activity Enabled = 0 × 01, otherwise 0
× 00, activity is not detected. The
sensor is always on and consumes
power. Engaging inactivity bydefining an inactive threshold levelcan be a viable option.

FIFO control

0 × 270 × 00

FIFO disabled. The sensor data are
retrieved by RFIC and streamed to theinterrogator by consecutively issuing
SPI_READ (0 × 0B) command by RFIC.

Filter control

0 × 2C

0 × 45The acceleration range and ODR.
0 × 05 = max 2 g and 200 Hz
0 × 45 = max 4 g and 400 Hz

Power control

0 × 2D0 × 020 × 00: standby (low power
consumption: 10 nA)
0 × 02: measurement

2.0.2 May 7

25

Streaming extension of Gen2 communication protocol

The streaming data length and Zone ID can be configured by writing the following one
word data.
15

14

13

12

11 10

9

8

Starting address

7

6

5

4

# of bytes to

3

2

1

RFU

Zone ID0read
The addresses to retrieve data (12-bit data LSB) are as follows:

The example data to read XDATA, YDATA, ZDATA, TEMP (total 16 × 4 = 64 bits = 8 bytes),
and Zone ID = 1 are as follows.
15

14

13

12

11 10

9

8

0 × 0E

7

6

5

4

1000

3

2

1

0

001

This 16 bit value (0 × 0e81) should be written to STR_CNT (0 × 85) in the user memory bankwith a WRITE command such that
WRITE

Membank WordPtr

11000011 11

Data

HandleCRC-16

10000101 16 bits (0 16 bits

16 bits

× 0e81)XOR
withHandle2.0.2 May 7

26

Streaming extension of Gen2 communication protocol

B. Revision History
Date

Version

Note

June 15, 2021

1.0

Initial version

July 1, 2021

1.1

Editorial and format change

July 7, 2021

1.2

Editorial change

April 15, 2022

2.0

Revision of Jupiter 2 RFIC

April 21, 2022

2.0.1

SPR can be vendor dependent.

May 7, 2022

2.0.2

After thorough proofread

2.0.2 May 727