AsReaderRFIDDevice

sharedInstance

Returns the singleton instance of AsReaderRFIDDevice.
Used to share a single instance throughout the application.

+ (instancetype)sharedInstance;

startReadTagsAndRssiWithTagNum

Starts reading RFID tags along with RSSI (signal strength).
After this method is executed, the result is returned via pcEpcRssiReceived.

⚠️ Note
ASR-M30S does not support maxTags or repeatCycle settings.

- (BOOL)startReadTagsAndRssiWithTagNum:(int)maxTags maxTime:(int)maxTime repeatCycle:(int)repeatCycle;

Parameters

Name

Type

Description

maxTags

int

Maximum number of tags to read

maxTime

int

Maximum read time per scan

repeatCycle

int

Number of times to repeat the read cycle

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice startReadTagsAndRssiWithTagNum:1 maxTime:1 repeatCycle:1];
if (status) {
    // Success
} else {
    // Failure
}

startReadTagAndTidWithTagNum

Reads both EPC and TID from tags.
After this method is executed, the result is returned via epcReceived:tid:.

⚠️ Note
ASR-M30S does not support maxTags or repeatCycle settings.

- (BOOL)startReadTagAndTidWithTagNum:(int)maxTags maxTime:(int)maxTime repeatCycle:(int)repeatCycle;

Parameters

Name

Type

Description

maxTags

int

Maximum number of tags to read

maxTime

int

Maximum read time per cycle (in milliseconds)

repeatCycle

int

Number of repeat cycles

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice startReadTagAndTidWithTagNum:5 maxTime:300 repeatCycle:2];
if (status) {
    // Success
} else {
    // Failure
}

startScan

Starts scanning RFID tags with the AsReader device.
The result is returned via receivedScanData.

⚠️ Note
ASR-M30S does not support numberOfTags or repeatCycle settings.

- (BOOL)startScan:(int)numberOfTags
   readUntilInSec:(int)readUntilInSec
      repeatCycle:(int)repeatCycle;

Parameters

Name

Type

Description

numberOfTags

int

Maximum number of tags to read

readUntilInSec

int

Maximum scan time in seconds

repeatCycle

int

Number of repeat cycles

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice startScan:1 readUntilInSec:1 repeatCycle:1];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

stopScan

Stops RFID tag scanning.
Call this method after starting a scan.

- (BOOL)stopScan;

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice stopScan];
if (status) {
    // Success
} else {
    // Failure
}

getChannel

Gets the RF channel used in non-FH (non-frequency-hopping) mode.
The result is returned via channelReceived.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)getChannel;

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice getChannel];
if (status) {
    // Success
} else {
    // Failure
}

setChannel

Sets the RF channel to use in non-FH (non-frequency-hopping) mode.
The result is returned via didSetChannelParamReceived.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)setChannel:(int)channel channelOffset:(int)channelOffset;

Parameters

Name

Type

Description

channel

int

Channel number

channelOffset

int

Offset value for mirrored subcarrier

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice setChannel:1 channelOffset:0];
if (status) {
    // Success
} else {
    // Failure
}

getFhLbtParameter

Retrieves FH and LBT parameters.
The result is returned via the following methods:

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)getFhLbtParameter;

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice getFhLbtParameter];
if (status) {
    // Success
} else {
    // Failure
}

getOutputPowerLevel

Gets the current, maximum, and minimum output power levels.
The result is returned via txPowerLevelReceived.

- (BOOL)getOutputPowerLevel;

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice getOutputPowerLevel];
if (status) {
    // Success
} else {
    // Failure
}

setOutputPowerLevel

Sets the output power level.
The result is returned via didSetOutputPowerLevel.

- (BOOL)setOutputPowerLevel:(int)powerLevel;

Parameters

Name

Type

Description

powerLevel

int

Output level (unit: dBm, range for US and EU regions: 13–27 for ASR-03xD/023xD and 1~27 for ASR-M30S)

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice setOutputPowerLevel:27];
if (status) {
    // Success
} else {
    // Failure
}

writeTagMemoryWithAccessPassword

Writes data to a tag.
The result is returned via writeTagMemoryWithAccessPassword.

- (BOOL)writeTagMemoryWithAccessPassword:(int)accessPassword epc:(NSData *)epc memoryBank:(int)memoryBank startAddress:(int)startAddress dataToWrite:(NSData *)dataToWrite;

Parameters

Name

Type

Description

accessPassword

int

Access password (e.g., 00000000)

epc

NSData

Target tag

memoryBank

int

Tag memory bank: 0=RFU, 1=EPC, 2=TID, 3=User

startAddress

int

Starting address (in word units)

dataToWrite

NSData

Data to write

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice writeTagMemoryWithAccessPassword:11111111 epc:epcs memoryBank:1 startAddress:1 dataToWrite:data];
if (status) {
    // Success
} else {
    // Failure
}

killTagWithPassword

Kills a tag.
The result is returned via killedReceived.

⚠️ Note
A kill password must be set to kill a tag.

- (BOOL)killTagWithPassword:(int)killpassword epc:(NSData *)epc;

Parameters

Name

Type

Description

killpassword

int

Kill password (tags cannot be killed with 00000000)

epc

NSData

EPC of the tag to kill

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice killTagWithPassword:11111111 epc:epc];
if (status) {
    // Success
} else {
    // Failure
}

lockTagMemoryWithAccessPassword

Locks the tag memory.
After executing this method, the result will be returned via the callback lockedReceived.

- (BOOL)lockTagMemoryWithAccessPassword:(int)accessPassword epc:(NSData *)epc lockData:(int)lockData;

Parameters

Name

Type

Description

accessPassword

int

Access password (Cannot lock if set to 00000000)

epc

NSData

EPC of the tag to be locked

lockData

int

Lock data

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice lockTagMemoryWithAccessPassword:11111111 epc:epc lockData:1];
if (status) {
    // Success
} else {
    // Failure
}

getSession

Retrieves the current session value.
After executing this method, the result will be returned via the callback sessionReceived.

- (BOOL)getSession;

Parameters

Name

Type

Description

Return

BOOL

Method result: YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice getSession];
if (status) {
    // Success
} else {
    // Failure
}

setSession

Sets the session value.
After executing this method, the result will be returned via the callback didSetSession.

- (BOOL)setSession:(int)session;

Parameters

Name

Type

Description

session

int

Session value: 0: S0, 1: S1, 2: S2, 3: S3

Return Value

Type

Description

BOOL

Method result: YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice setSession:1];

getAnticollision

Retrieves the anti-collision settings.
After executing this method, the result will be returned via the callback anticolParamReceived.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)getAnticollision;

Return Value

Type

Description

BOOL

Method result: YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice getAnticollision];

setAnticollision

Sets anti-collision parameters.
After executing this method, the result will be returned via the callback didSetAntiCollision.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)setAnticollision:(int)mode Counter:(int)counter;

Parameters

Name

Type

Description

mode

int

0: Fixed Q, 1: Dynamic Q

counter

int

Counter (Default is 1)

Return Value

Type

Description

BOOL

Method result: YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice setAnticollision:1 Counter:1];

updateRegistry

Updates the registry.
After executing this method, the result will be returned via the callback updatedRegistry.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)updateRegistry;

Return Value

Type

Description

BOOL

Method result: YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice updateRegistry];

getRFIDModuleVersion

Retrieves basic information about the RFID reader.
After executing this method, the result will be returned via the callback rfidModuleVersionReceived.

- (BOOL)getRFIDModuleVersion;

Return Value

Type

Description

BOOL

Method result: YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice getRFIDModuleVersion];

setHoppingOnOff

Sets frequency hopping and LBT parameters.
After executing this method, the result will be returned via the callback didSetFhLbt.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)setHoppingOnOff:(BOOL)isOn;

Parameters

Name

Type

Description

isOn

BOOL

YES: Frequency hopping 2 / LBT 1, NO: Frequency hopping 1 / LBT 2

Return Value

Type

Description

BOOL

Method result: YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice setHoppingOnOff:YES];

writeTagMemoryWithEPC

Writes data to a tag.
After executing this method, the result will be returned via the callback writtenReceived.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)writeTagMemoryWithEPC:(NSData *)epc dataToWriteAscii:(NSString *)dataToWrite;

Parameters

Name

Type

Description

epc

NSData

EPC of the tag to write

dataToWrite

NSString

Data to be written

Return Value

Type

Description

BOOL

Method result: YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice writeTagMemoryWithEPC:epc dataToWriteAscii:dataToWrite];

readTagWithAccessPassword

Reads the specified memory bank of a tag using an access password.
After executing this method, the result will be returned via the callback tagMemoryReceived.

⚠️ Note
On ASR-M30S, if dataLength is 0 and the memoryBank is EPC or TID, data is read from startAddress to the end. For other memory banks, this will result in an error.

- (BOOL)readTagWithAccessPassword:(int)accessPassword epc:(NSData*)epc memoryBank:(int)memoryBank startAddress:(int)startAddress dataLength:(int)dataLength;

Parameters

Name

Type

Description

accessPassword

int

Access password

epc

NSData

EPC data of the target tag

memoryBank

int

Tag memory bank (0: RFU, 1: EPC, 2: TID, 3: User)

startAddress

int

Start address (word units)

dataLength

int

Length to read (word units)

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice readTagWithAccessPassword:11111111 epc:epcs memoryBank:1 startAddress:1 dataLength:dataLength];
if (status) {
    // Success handling
} else {
    // Failure handling
}

setOptimumFrequencyHoppingTable

Sets the optimal frequency hopping table.
After executing this method, the result will be returned via the callback didSetOptiFreqHPTable.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)setOptimumFrequencyHoppingTable;

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice setOptimumFrequencyHoppingTable];
if (status) {
    // Success
} else {
    // Failure
}

getFrequencyHoppingMode

Retrieves the frequency hopping mode.
After executing this method, the result will be returned via the callback hoppingTableReceived.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)getFrequencyHoppingMode;

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice getFrequencyHoppingMode];
if (status) {
    // Success
} else {
    // Failure
}

setFrequencyHoppingMode

Sets the frequency hopping mode.
After executing this method, the result will be returned via didSetFHmodeChanged.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)setFrequencyHoppingMode:(int)mode;

Parameters

Item

Type

Description

mode

int

Frequency hopping mode. The value’s meaning depends on the protocol.

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice setFrequencyHoppingMode:1];
if (status) {
    // Success
} else {
    // Failure
}

getRegion

Gets the current region setting of the device.
After executing this method, the result will be returned via regionReceived.

- (BOOL)getRegion;

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice getRegion];
if (status) {
    // Success
} else {
    // Failure
}

setRegion

Sets the region setting of the device.

- (BOOL)setRegion:(int)region;

Parameters

Item

Type

Description

region

int

Region code (e.g., 17 = Korea, 33 = North America, etc.)

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice setRegion:82];
if (status) {
    // Success
} else {
    // Failure
}

setReadTime

Sets the tag reading on/off time.
After executing this method, the result will be returned via onOffTimeChanged.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)setReadTime:(int)onTime offTime:(int)offTime;

Parameters

Item

Type

Description

onTime

int

Reading active time (e.g., in milliseconds)

offTime

int

Reading pause time (e.g., in milliseconds)

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice setReadTime:100 offTime:200];
if (status) {
    // Success
} else {
    // Failure
}

startReadTagsRFM

Starts reading RFID tags with sensor data.
After executing this method, the result will be returned via pcEpcSensorDataReceived.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)startReadTagsRFM:(int)maxTags maxTime:(int)maxTime repeatCycle:(int)repeatCycle;

Parameters

Item

Type

Description

maxTags

int

Maximum number of tags to read

maxTime

int

Maximum time for a single read session

repeatCycle

int

Number of repeat cycles

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code:

BOOL status = [asReaderDevice startReadTagsRFM:10 maxTime:500 repeatCycle:2];
if (status) {
    // Success
} else {
    // Failure
}

getSelectParameter

Retrieves the tag selection parameters.
After executing this method, the result will be returned via selectParamReceived.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)getSelectParameter;

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

BOOL status = [asReaderDevice getSelectParameter];
if (status) {
    // Successfully executed
} else {
    // Execution failed
}

setSelectParameter

Sets the tag selection parameters.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)setSelectParameter:(int)target
                    action:(int)action
                memoryBank:(int)memoryBank
                   pointer:(int)pointer
                    length:(int)length
                  truncate:(int)truncate
                      mask:(NSData *)mask;

Parameters

Item

Description

target

Session: S0(000), S1(001), S2(010), S3(011), SL(100)

action

Action specified according to ISO18000-6C

memoryBank

Memory bank: RFU(00), EPC(01), TID(10), User(11)

pointer

Starting address of the filter memory

length

Length of the filter data

truncate

Whether to truncate tag data when matched: Enable(1), Disable(0)

mask

Filter data body

Return Value

Type

Description

BOOL

YES: Success, NO: Failure

Sample Code

uint8_t bytes[] = { 0x01, 0x02, 0x03 };
NSData *selParamData = [NSData dataWithBytes:bytes length:sizeof(bytes)];

BOOL status = [asReaderDevice setSelectParameter:selParamData];
if (status) {
    // Successfully executed
} else {
    // Execution failed
}

Note
Be sure to configure the parameters according to the device specifications. Incorrect settings may cause unexpected behavior.


setQueryParam

Sets the Query parameters of the 18000-6C Air Interface protocol.
Used for detailed control such as session behavior and slot count.

⚠️ Note Some models such as ASR-M30S does not support this function.

- (BOOL)setQueryParam:(int)divideRatio
                    m:(int)m
                trext:(int)trext
            selection:(int)selection
              session:(int)session
               target:(int)target
               qValue:(int)qValue;

Parameters

Item

Type

Description

divideRatio

int

0: DR = 8
1: DR = 64/3

m

int

0: M = 1
1: M = 2
2: M = 4
3: M = 8

trext

int

0: No pilot tone
1: With pilot tone

selection

int

0 or 1: All
2: ~SL
3: SL

session

int

0: S0
1: S1
2: S2
3: S3

target

int

0: A
1: B

qValue

int

Slot count in range 0–15 (power of 2: e.g., 4 → 16 slots)

Return Value

Type

Description

BOOL

YES: Success
NO: Failure


getModulation

Retrieves the current modulation settings.
After executing this method, the result will be returned via modulationParamReceived:rxMod:dr:.

- (BOOL)getModulation;

Return Value

Type

Description

BOOL

YES: Success, NO: Failure


setModulationBLF

Sets the modulation mode.
After executing this method, the result will be returned via didSetModulation.

- (BOOL)setModulationBLF:(int)blf rxMod:(int)rxMod dr:(int)dr;

Parameters

Item

Type

Description

blf

int

Example: 160 (BLF_160), 250 (BLF_250), 320, 640, etc.

rxMod

int

Example: 0 (FM0), 1 (M2), 2 (M4), 3 (M8)

dr

int

Example: 0 (8), 1 (64/3)

Return Value

Type

Description

BOOL

YES: Success, NO: Failure


getRSSIThreshold

Retrieves the RSSI threshold setting.
After executing this method, the result will be returned via rssiThresholdReceived:.

- (BOOL)getRSSIThreshold;

Return Value

Type

Description

BOOL

YES: Success, NO: Failure


setRSSIThreshold

Sets the RSSI threshold.

- (BOOL)setRSSIThreshold:(uint16_t)threshold;

Parameters

Item

Type

Description

threshold

uint16_t

RSSI threshold value to set

Return Value

Type

Description

BOOL

YES: Success, NO: Failure


setFrequencyHoppingTableSize

Sets the frequency hopping table.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)setFrequencyHoppingTableSize:(int)tableSize channels:(NSData *)channels;

Parameters

Item

Type

Description

tableSize

int

Size of the table (in bytes)

channels

NSData

List of channel numbers

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure


getQueryParameter

Retrieves the query parameters (Query A/I Class C).

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)getQueryParameter;

setRfCw

Sets RF CW signal output.
This command is only valid in idle state.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)setRfCw:(BOOL)on;

Parameters

Item

Type

Description

on

BOOL

CW signal output: YES = On, NO = Off

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure


blockEraseTagMemoryWithAccessPassword

Erases tag memory in blocks.

- (BOOL)blockEraseTagMemoryWithAccessPassword:(int)accessPassword epc:(NSData *)epc memoryBank:(int)memoryBank startAddress:(int)startAddress dataLength:(int)dataLength;

Parameters

Item

Type

Description

accessPassword

int

Access password

epc

NSData

EPC of the target tag

memoryBank

int

Memory bank (0: RFU, 1: EPC, 2: TID, 3: User)

startAddress

int

Start address (word-based)

dataLength

int

Data length to erase (in words)

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure


getTemperature

Retrieves the temperature.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)getTemperature;

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice getTemperature];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

getRegistryItem

Retrieves a registry item.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)getRegistryItem:(int)registryItem;

Parameters

Item

Type

Description

registryItem

int

Registry item code
Examples:
0x0000: Registry version
0x0001: Firmware date
0x0002: Frequency band
0x0003: Output power
0x0004: FH/LBT
0x0005: Anti-collision mode
0x0006: Modulation mode
0x0007: Query (Q)
0x0008: Frequency hopping table
0x0009: Output table

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice getRegistryItem:1];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

setFrequencyHoppingMode

Sets the frequency hopping mode.

⚠️ Note
Some models such as ASR-M30S does not support this function.

- (BOOL)setFrequencyHoppingMode:(int)mode;

Parameters

Item

Type

Description

mode

int

Frequency hopping mode
0: Normal mode
1: Smart frequency hopping mode

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice setFrequencyHoppingMode:1];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

setReadRSSIMode

Sets whether to read the tag’s RSSI value in RFID mode.

- (void)setReadRSSIMode:(BOOL)isReadRSSIMode;

Parameters

Item

Type

Description

isReadRSSIMode

BOOL

YES: Read RSSI
NO: Do not read

Sample Code

[AsReaderDevice setReadRSSIMode:YES];

getAutoOffTime

Gets the auto-off time of the device.
The result is returned via didGetAutoOffTimeReceived after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)getAutoOffTime;

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice getAutoOffTime];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

setAutoOffTime

Sets the auto-off time of the device.
The result is returned via didSetAutoOffTime after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)setAutoOffTime:(int)time;

Parameters

Item

Type

Description

time

int

Auto-off time (seconds)
Range: 0–1800 seconds
0 = No auto-off

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice setAutoOffTime:0];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

getContinuousMode

Gets the tag read mode (single or continuous).
The result is returned via didGetContinuousModeReceived after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)getContinuousMode;

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice getContinuousMode];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

setContinuousMode

Sets the tag read mode (single or continuous).
The result is returned via didSetContinuousMode after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)setContinuousMode:(BOOL)isContinuousMode;

Parameters

Item

Type

Description

isContinuousMode

BOOL

YES: Continuous mode
NO: Single mode

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice setContinuousMode:YES];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

getQValue

Gets the Q value.
The result is returned via didGetQValueReceived after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)getQValue;

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice getQValue];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

setQValue

Sets the Q value.

The result is returned via didSetQValue after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)setQValue:(int)value;

Parameters

Name

Type

Description

value

int

Q value Range: 0~15

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice setQValue:10];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

getSessionFlag

Gets the Session Flag.
The result is returned via didGetSessionFlagReceived after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)getSessionFlag;

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice getSessionFlag];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

setSessionFlag

Sets the Session Flag.

The result is returned via didSetSessionFlag after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)setSessionFlag:(int)sessionFlag;

Parameters

Name

Type

Description

sessionFlag

int

Session Flag 0:A, 1:B, 2:A or B

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice setSessionFlag:1];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

getHidMode

Gets the HID mode.
The result is returned via didGetHidModeReceived after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)getHidMode;

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice getHidMode];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

setHidMode

Sets the HID mode.

The result is returned via didSetHidMode after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)setHidMode:(BOOL)hidMode;

Parameters

Name

Type

Description

hidMode

BOOL

YES: HID mode. NO: Not HID mode.

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice setHidMode:YES];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

getDutyRatio

Gets the duty ratio.
The result is returned via didGetDutyRatioReceived after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)getDutyRatio;

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice getDutyRatio];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

setDutyRatio

Sets the duty ratio.

The result is returned via didSetDutyRatio after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)setDutyRatio:(int)dutyRatio;

Parameters

Name

Type

Description

dutyRatio

int

Duty ratio. Range: 0~15 0: Full load; 1: 5%; 2: 10%; 3: 15%; 4: 20%; 5: 25%; 6: 30%; 7: 35%; 8: 40%; 9: 45%; 10: 50%; 11: 55%; 12: 60%; 13: 70%; 14: 80%; 15: 90% *Note: For example, 5% means stopping for 5% of the base time.

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice setDutyRatio:10];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

getDutyRatioBaseTime

Gets the duty ratio base time.
The result is returned via didGetDutyRatioBaseTimeReceived after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)getDutyRatioBaseTime;

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice getDutyRatioBaseTime];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}

setDutyRatioBaseTime

Sets the duty ratio base time.

The result is returned via didSetDutyRatioBaseTime after execution.

⚠️ Note
This function is only supported by some models, such as ASR-M30S.

- (BOOL)setDutyRatioBaseTime:(int)dutyRatioBaseTime;

Parameters

Name

Type

Description

dutyRatioBaseTime

int

Duty ratio base time. Range: 0~65000 ms

Return Value

Type

Description

BOOL

Result of execution: YES = Success, NO = Failure

Sample Code

BOOL status = [asReaderDevice setDutyRatioBaseTime:10];
if (status) {
    // Method executed successfully
} else {
    // Method execution failed
}