# CLI Command Reference

_________________________________ cliSeparatorHack
____Application_Configuration____ cliSeparatorHack
setEventConfig u32 u32 [u32] setEventConfig
Control RAIL events.
Arguments

- u32eventsMask<31:0>
- u32eventsValues<31:0>
- u32(optional) eventsMask<63:32>\n [uint32opt] eventsValues<63:32>

resetCounters resetCounters
Resets the TX and RX counters.
setPeripheralEnable u8 setPeripheralEnable
Control LEDs and LCD peripherals.
Arguments

- u8[0=Disable] 1=Enable

setNotifications u8 setNotifications
Control asynchronous status prints (rxPacket,txEnd,txError).
Arguments

- u80=Disable [1=Enable]

getLogLevels getLogLevels
Show whether notifications or peripherals are enabled.
getVersion getVersion
Get version information.
getVersionVerbose getVersionVerbose
Get verbose version information.
setPtiProtocol u8 setPtiProtocol
Set PTI protocol for Network Analyzer.
Arguments

- u80=Custom 2=Thread 3=BLE 4=Connect 5=Zigbee 6=Z-Wave

getPti getPti
Get PTI configuration.
setPrintingEnable u8 setPrintingEnable
Control all printing in RAILtest, except CLI.
Arguments

- u80=Disable [1=Enable]

____________________________ cliSeparatorHack
____Receive_and_Transmit____ cliSeparatorHack
rx u8 rx
Control receive mode.
Alias r
Arguments

- u80=Disable [1=Enable]

rxAt u32 str u32 str [u8] rxAt
Configure scheduled receive.
Arguments

- u32startTimeUs
- str'rel'=Relative 'abs'=Absolute
- u32endTimeUs
- str'rel'=Relative 'abs'=Absolute
- u8(optional) rxTransEndSched: [0]/1\n [uint8opt] hardEnd: [0]/1

setRxOptions [u32] setRxOptions
Show/Configure receive options (RAIL_RX_OPTIONs).
Alias configRxOptions
Arguments

- u32(optional) rxOptionsValues: bitmask of enabled options

tx u32 tx
Transmit packets with current TX options.
Alias t
Arguments

- u32number of packets, 0=continuous until next 'tx 0'

txWithOptions u32 txWithOptions
Same tx command. This command is deprecated.
Arguments

- u32number of packets, 0=continuous until next 'tx 0'

txAfterRx u32 txAfterRx
Schedule a TX with specified delay after each RX.
Arguments

- u32delayUs: 0=Disable

configTxOptions [u32] configTxOptions
Show/Configure transmit options (RAIL_TxOptions_t).
Alias setTxOptions
Arguments

- u32(optional) txOptionsValues: bitmask of enabled options

setFixedLength u16 setFixedLength
Configure fixed length packet operation.
Arguments

- u16fixedLength: payload bytes

setPower i32 [str] setPower
Set the transmit power. The radio must be IDLE.
Arguments

- i32power: deci-dBm unless 'raw' is added
- str(optional) 'raw'=units are raw power level

getPower getPower
Get the transmit power in deci-dBm.
setPowerConfig str u16 u16 setPowerConfig
Set transmit PA configuration. Must use setpower afterwards.
Arguments

- strpaMode
- u16millivolts
- u16rampTimeUs

getPowerConfig getPowerConfig
Get the transmit PA configuration.
printPowerCurves str [str] printPowerCurves
Print TX power curves.
Arguments

- str'chip'=currently in use, 'nvm'=stored in NVM
- str(optional) [unserialized] serialized offsets json deserialized

testNvmPaMode str testNvmPaMode
Test NVM PA mode.
Arguments

- strpMode (255 to delete NVM token)

testNvmPowerCurves [str] testNvmPowerCurves
Test NVM power curves.
Arguments

- str(optional) [write] corrupt delete

getPowerLimits [u8] getPowerLimits
Get min and max powerLevel for a power mode.
Arguments

- u8(optional) powerMode

enablePaAutoMode u8 enablePaAutoMode
Control automatic PA selection based on the TX power level.
Arguments

- u80=Disable 1=Enable

configPaAutoMode u8 [i32] configPaAutoMode
Configure entries in the default PA Auto Mode plugin.
Arguments

- u8start Index
- i32(optional) min max mode band: PA auto config entries

sweepTxPower sweepTxPower
Sweep TX power for the current PA by toning at each level.
offsetLqi i32 offsetLqi
Adjust the hardware's LQI value for received packets.
Arguments

- i32offset: signed value to add\n The resulting LQI is capped within 0..255 range.

getRssi [u32] getRssi
Get RSSI in dBm. It'll be invalid if receiver isn't ready.
Arguments

- u32(optional) [0=don't wait] 1=wait for valid RSSI if possible

sweepPower i32 i32 u32 sweepPower
Sweep power by toning low/high in a square wave fashion.
Arguments

- i32lowPower: deci-dBm
- i32hiPower: deci-dBm
- u32periodUs

startAvgRssi u32 [u16] startAvgRssi
Start AGC RSSI averaging.
Arguments

- u32averageTimeUs
- u16(optional) channel: if different from current channel

getAvgRssi getAvgRssi
Get AGC RSSI averaging result.
setTxTone u32 [u32] setTxTone
Control tone transmission.
Arguments

- u320=Disable 1=Enable
- u32(optional) antenna: [0]/1\n [uint32opt] mode: [0]/1=phaseNoise

setTxStream u32 [u32] setTxStream
Control stream transmission.
Arguments

- u320=Disable 1=Enable
- u32(optional) streamMode: 0=tone [1=PN9] 2=1010 3=phaseNoise\n See RAIL_StreamMode_t for other values.\n [uint32opt] antenna: [0]/1

status getStatus
Print the current status counters.
fifoStatus fifoStatus
Print the current FIFO-related counters.
setTxHoldOff u32 setTxHoldOff
Control transmit hold-off (blocking of transmits).
Arguments

- u320=Disable 1=Enable

setTxDelay u32 setTxDelay
Set the inter-packet delay for repeated TX.
Arguments

- u32delayMilliseconds

getTxDelay getTxDelay
Get the inter-packet millisecond delay for repeated TX.
setTxPayload u16 [u8] setTxPayload
Set TX packet payload bytes for future transmits.
Arguments

- u16offset
- u8(optional) byte0 byte1 ...

setTxRandom [u16] setTxRandom
Set a specified range of bytes in the Tx packet payload to a\n random value. Call setTxRandom again to stop randomizing the payload.
Arguments

- u16(optional) Start Index\n [uint16opt] End Index

setTxPayloadQuiet u16 [u8] setTxPayloadQuiet
Like setTxPayload, but less verbose.
Arguments

- u16offset
- u8(optional) byte0 byte1 ...

setTxLength u16 setTxLength
Set how much data to load into the TX FIFO for transmitting.\n Actual packet length may vary based on radio configuration.
Arguments

- u16lengthBytes

printTxPacket printTxPacket
Print the current TX payload data and byte length.
peek u16 [u16] peekRx
Peek at the start of the receive buffer.
Arguments

- u16bytes: 1-10
- u16(optional) offset: [0]

getTime getTime
Get the current RAIL time in microseconds.
setTime u32 setTime
Set the current RAIL time.
Arguments

- u32timeUs

dataConfig str str [u8] dataConfig
Control the data methods for TX and RX.
Arguments

- strtxMethod: 'pkt'/'fifo'
- strrxMethod: 'pkt'/'fifo'
- u8(optional) RAIL_RxDataSource_t (>0 needs fifo mode)\n [uint8opt] RAIL_TxDataSource_t (>0 needs ping-pong buffer)

setRxFifo u16 setRxFifo
Set the receive buffer length.
Arguments

- u16lengthBytes: range 64-RX_BUFFER_SIZE

setTxFifo u16 setTxFifo
Set the transmit buffer length.
Arguments

- u16lengthBytes: range 64-TX_BUFFER_SIZE, 0 for default size

setTxFifoThreshold u16 setTxFifoThreshold
Set the TX FIFO Almost Empty threshold.
Arguments

- u16thresholdBytes: below which the event triggers

setRxFifoThreshold u16 setRxFifoThreshold
Set the RX FIFO Almost Full threshold.
Arguments

- u16thresholdBytes: above which the event triggers

fifoModeTestOptions u8 u8 fifoModeTestOptions
Manual control over RAILtest FIFO actions.
Arguments

- u8txFifo: 1=Manual 0=Automatic
- u8rxFifo: 1=Manual 0=Automatic

rxFifoManualRead u8 u16 [u8] rxFifoManualRead
Read and print bytes from receive FIFO when in manual mode.
Arguments

- u8appendedInfo: 1=include packet metadata
- u16bytesToRead
- u8(optional) [0=don't] 1=show timestamps with appendedInfo

txFifoManualLoad txFifoManualLoad
Try to load data into available TX FIFO space.
fifoReset u8 u8 fifoReset
Reset the transmit and/or receive FIFO.
Arguments

- u8tx: 1=reset TX FIFO
- u8rx: 1=reset RX FIFO

abortRxPacket u32 abortRxPacket
Idle the radio shortly after RX sync word detection.
Arguments

- u32abortOffsetUs

printTxAcks u8 printTxAcks
Control printing of TX ACK packets.
Arguments

- u8[0=Disable] 1=Enable

configRxHopping [u32] configRxChannelHopping
Configure an RX Channel Hopping sequence.
Alias configRxChannelHopping
Arguments

- u32(optional) channel hopMode param delayUs: a hop's config,\n repeat for additional hops ...\n Use no arguments to get Z-Wave radio config defaults.

enableRxHopping u8 [u8] enableRxChannelHopping
Control RX channel hopping previously configured.
Alias enableRxChannelHopping
Arguments

- u8[0=Disable] 1=Enable
- u8(optional) [0=Continue] 1=Restart sequence

configRxHoppingOpts u8 u8 [i8] configChannelHoppingOptions
Configure options for a hop. Use configRxHopping after.
Alias configChannelHoppingOptions
Arguments

- u8hopIndex
- u8options
- i8(optional) rssiThreshold: dBm for the threshold option

configRxMultiHop u8 u32 u32 u32 u32 configChannelHoppingMulti
Configure multi-sense for a hop. Use configRxHopping after.
Alias configChannelHoppingMulti
Arguments

- u8hopIndex
- u32syncDetectUs
- u32preambleSenseUs
- u32timingSenseUs
- u32timingReSenseUs

triggerRxHop triggerRxHop
Trigger a manual RX channel hopping hop.
getRxHoppingRssi u8 getChannelHoppingRssi
Get the latest RSSI for a hopping channel.
Alias getChannelHoppingRssi
Arguments

- u8hopIndex

spectrumAnalyzer u8 [u16] spectrumAnalyzer
Hop across a channel range to see the RSSI distribution.
Arguments

- u81=Show ASCII-Art graph (non-parseable output)
- u16(optional) minChannel: [0]-65535\n [uint16opt] maxChannel: 0-[65535]\n Channel range is limited by the PHY and by hopping's\n MAX_NUMBER_CHANNELS.

configRxDutyCycle u32 i32 i32 [i32] configRxDutyCycle
Configure RX Duty Cycling of the receiver.
Arguments

- u32hopMode
- i32parameter(s) {syncUs preamUs timingUs retimingUs}
- i32delayUs
- i32(optional) options\n [int32opt] rssiThreshold: dBm for the threshold option

enableRxDutyCycle u8 [u8] enableRxDutyCycle
Control RX duty cycling previously configured.
Arguments

- u8DutyCycling: 0=Disable 1=Enable
- u8(optional) ScheduledWakeup: [0=Disable] 1=Enable

getDefaultRxDutyCycleConfig getDefaultRxDutyCycleConfig
Get the default RX duty cycle configuration.
setTxAltPreambleLen u16 setTxAltPreambleLen
Set alternate TX preamble length, enabled via txOptions.
Arguments

- u16preambleBits

configSyncWords u8 u32 [u32] configSyncWords
Set sync words and their length. The radio must be off.
Arguments

- u8bits: 2-32
- u32syncWord1
- u32(optional) syncWord2: [same as syncWord1]

enableAutoLnaBypass u8 u32 u8 u8 u8 u8 u8 enableAutoLnaBypass
Enable automatic LNA bypass for external FEM.
Arguments

- u8[0=Disable] 1=Enable
- u32timeoutUs
- u8threshold
- u8deltaRssiDbm = FEM LNA gain
- u8port
- u8pin
- u8polarity

getSyncWords getSyncWords
Get the sync word length in bits and value(s).
printRxErrors u8 printRxErrors
Control printing of RX error packets.
Arguments

- u8[0=Disable] 1=Enable

printRxFreqOffsets u8 printRxFreqOffsets
Control printing of RX frequency offsets.
Arguments

- u8[0=Disable] 1=Enable

printDataRates printDataRates
Print the data rates of the current PHY.
stopInfinitePream stopInfinitePreambleTx
Stops an infinite preamble transmission.
Alias stopInfinitePreambleTx
___________________________________ cliSeparatorHack
____Energy_Modes_and_RF_Sensing____ cliSeparatorHack
sleep str [u32] sleep
Sleep until UART input or RF Sensed (if either configured).
Arguments

- strenergyMode: 0-4[hs], for EM1P use 2 with radio on
- u32(optional) Legacy: RfSenseUs\n RfBand: 0=none,1=GHz,2=MHz,3=both\n or Selective: SyncwordBytes Syncword RfBand

rfsense u32 [u32] rfSense
Start RfSensing.
Arguments

- u32Legacy: RfSenseUs; Selective: SyncwordBytes
- u32(optional) Legacy: RfBand: 0=none,1=GHz,2=MHz,3=both\n or Selective: Syncword RfBand: as above

configRfSenseWakeup configRfSenseSelectiveOokWakeupPhy
Configure RFSense Selective Wakeup PHY for transmitting.
Alias configRfSenseWakeupPhy
setRfSenseTxPayload u8 u32 setRfSenseTxPayload
Load TX FIFO with RfSense Selective(OOK) Mode wake packet.
Arguments

- u8syncwordNumBytes: 1-4
- u32syncWord: sent from least to most significant byte

_________________________ cliSeparatorHack
____Address_Filtering____ cliSeparatorHack
configAddressFilter u32 [u8] setAddressFilterConfig
Configure the addresss filter.
Arguments

- u32matchTable
- u8(optional) offset0 size0 offset1 size1 ...\n Enter more offsets and sizes if required.

setAddressFiltering u8 setAddressFilter
Control address filtering.
Arguments

- u80=Disable 1=Enable

getAddressFiltering getAddressFilter
Get the current state of address filtering.
printAddresses printAddresses
Print the current address filtering addresses.
setAddress u8 u8 [u8] setAddress
Set a specific filtering address value.
Arguments

- u8field: 0-1
- u8filterIndex: 0-3
- u8(optional) addrByte0 addrByte1 ... addrByte7

setAddressMask u8 [u8] setAddressMask
Set a specific filtering address mask.
Arguments

- u8field: 0-1
- u8(optional) bitMask

setAddressEnable u8 u8 u8 enableAddress
Control address filtering for a specific address.
Arguments

- u8field: 0-1
- u8filterIndex: 0-3
- u80=Disable 1=Enable

__________________________ cliSeparatorHack
____Error_Rate_Testing____ cliSeparatorHack
perRx u32 u32 startPerMode
Start a Packet Error Rate test. 'perRx 0 0' stops test.
Arguments

- u32number of packets
- u32delayUs

perStatus getPerStats
Get the PER test results. Also see status command.
setBerConfig u32 berConfigSet
Set number of bytes to receive in BER mode.
Arguments

- u32number of bytes: 0=maximum (536870911)

berRx u8 berRx
Control BER receive mode.
Arguments

- u80=Disable 1=Enable

berStatus berStatusGet
Get status of current or last BER test.\n Status is reset by setBerConfig and berRx enable.
______________________________ cliSeparatorHack
____Listen_Before_Talk_LBT____ cliSeparatorHack
setLbtMode [str] setLbtMode
Show/Set the LBT mode for transmits.
Arguments

- str(optional) 'off'/'csma'/'lbt'

getLbtParams getLbtParams
Get the current LBT parameters.
setLbtParams u8 u8 u8 i32 u16 u16 u32 setLbtParams
Set LBT parameters.
Arguments

- u8minBo
- u8maxBo
- u8tries
- i32ccaThreshold
- u16backoffUs
- u16durationUs
- u32timeoutUs

set802154CcaMode u8 set802154CcaMode
Set 802.15.4 CCA Mode
Arguments

- u8ccaMode 0=RSSI 1=Signal 2=RSSI|Signal 3=RSSI&Signal 4=Always transmit

_____________________ cliSeparatorHack
____802_15_4_Mode____ cliSeparatorHack
enable802154 str u16 u16 i16 [u8] ieee802154Enable
Configure and enable 802.15.4 mode.
Arguments

- strdefaultState: 'idle'/'rx'
- u16idleToRxUs
- u16turnaroundTimeUs
- i16ackTimeoutUs: to ACK's sync-detect
- u8(optional) defaultFP: [0]/1 Frame Pending for poll ACKs

list2p4Ghz802154Configs list2p4Ghz802154Configs
List supported 2.4 GHz 802.15.4 configs.
config2p4GHz802154 [u8] config2p4Ghz802154
Configure the radio for 2.4 GHz 802.15.4.\n Use with enable802154.
Arguments

- u8(optional) [uint8opt] config: see list2p4Ghz802154Configs (ignores any remaining parameters if > 1)\n [uint8opt] coex: [0=Disable] 1=Enable\n [uint8opt] fem: [0=Disable] 1=Enable\n [uint8opt] custom: [0=None] 1=Custom1\n [uint8opt] 2mbps: [0=Disable] 1=Enable

config863MHz802154 config863Mhz802154
Configure the radio for 863 MHz 802.15.4 GB868.\n Use with enable802154.
config915MHz802154 config915Mhz802154
Configure the radio for 915 MHz 802.15.4 GB868.\n Use with enable802154.
set802154e u32 ieee802154SetE
Configure 802.15.4E options.
Arguments

- u32RAIL_IEEE802154_EOptions_t

set802154g u32 ieee802154SetG
Configure 802.15.4G options.
Arguments

- u32RAIL_IEEE802154_GOptions_t

set802154FpMode u8 u8 ieee802154SetFpMode
Control early and data frame pending lookup.
Arguments

- u8early: [0=Disable] 1=Enable
- u8dataframes:[0=Disable] 1=Enable

config2Mbps802154RxTimeout u32 ieee802154Config2MbpsRxTimeout
Configure timeout to switch back from 2Mbps PHY to standard 250kbps PHY.
Arguments

- u32timeout

config2Mbps802154RxChannel u16 ieee802154Config2MbpsRxChannel
Configure channel to receive 2Mbps mode switch packets.
Arguments

- u16channel

acceptFrames u8 u8 u8 u8 [u8] ieee802154AcceptFrames
Control 802.15.4 frame type acceptance.
Arguments

- u8command: 0=Reject [1=Accept]
- u8ack: [0=Reject] 1=Accept
- u8data: 0=Reject [1=Accept]
- u8beacon: 0=Reject [1=Accept]
- u8(optional) multipurpose: [0=Reject] 1=Accept

setPromiscuousMode u8 ieee802154SetPromiscuousMode
Control promiscuous mode.
Arguments

- u80=Disable 1=Enable

setRxToEnhAckTx i32 setRxToEnhAckTx
Set an RxToTx turnaround time used just for Enh-ACKs.
Arguments

- i32rxToTxUs (0=same as Imm-ACKs, -1=don't change)

setPanCoordinator u8 ieee802154SetPanCoordinator
Control whether node is a PAN coordinator.
Arguments

- u81=Yes 0=No

setPanId802154 u16 [u8] ieee802154SetPanId
Set the PAN ID for a filtering index.
Arguments

- u16panId
- u8(optional) filterIndex: [0]-2

setShortAddr802154 u16 [u8] ieee802154SetShortAddress
Set the short address for a filtering index.
Arguments

- u16shortAddr
- u8(optional) filterIndex: [0]-2

setLongAddr802154 u8 u8 u8 u8 u8 u8 u8 u8 [u8] ieee802154SetLongAddress
Set the long address for a filtering index.
Arguments

- u8longAddr_0
- u8longAddr_1
- u8longAddr_2
- u8longAddr_3
- u8longAddr_4
- u8longAddr_5
- u8longAddr_6
- u8longAddr_7
- u8(optional) filterIndex: [0]-2

setAddresses802154 u16 u16 [str] ieee802154SetAddresses
Set all 802.15.4 address information.
Arguments

- u16panId0
- u16shortAddr0
- str(optional) longAddr0\n [stringopt] panId1 shortAddr1 longAddr1 ...

configRxChannelSwitching802154 u16 u16 [u8] ieee802154ConfigRxChannelSwitching
Configure RX channel switching for 2.4 GHz 802.15.4
Arguments

- u16First radio channel
- u16Second radio channel
- u8(optional) Reset

setDataReqLatency u32 ieee802154SetDataReqLatency
Set data request event processing latency.
Arguments

- u32latencyUs

set802154PHR u8 [u8] ieee802154SetPHR
Set PHR (first 1, 2 or 4 bytes) in Tx buffer according to\n the 'format' input parameter.\n PHR 'frameLength' field is derived from TxLength set\n previously with 'setTxLength'\n For PHR fields info, refer to 802.15.4 specification.
Arguments

- u8PHR format: 0=misc IEEE802154 modulations, PHR 1byte\n 1=SUN FSK, PHR 2bytes\n 2=SUN OFDM, PHR 4bytes\n 3=SUN OQPSK, PHR 4bytes
- u8(optional) For LEG_OQPSK: none\n For SUN_FSK : fcsTtype\n For SUN_OFDM : rate\n For SUN_OQPSK: spreadingMode\n [uint8opt] For LEG_OQPSK: none\n For SUN_FSK : whitening\n For SUN_OFDM : scrambler\n For SUN_OQPSK: rateMode

trigModeSwitchTx u8 u8 [u32] trigModeSwitchTx
Transmit a Mode Switch packet then transmit packets on the new PHY with current\n TX options Depending on modeSwitchLife configuration, after all iterations are\n done, it either stays on the new PHY or returns to the base PHY.
Arguments

- u8new PhyModeId, i.e. ID of the PHYMode we are switching to
- u8number of packets transmitted on the new PHY
- u32(optional) number of times the sequence -mode switch packet followed by data packets- is\n repeated, default is 1 if argument is absent\n [uint32opt] delayMilliseconds before switching back to base PHY after all packets have been\n transmitted on the new PHY, default is 0 if argument is absent. Multitimer is\n used for delay greater than 0.

modeSwitchLife u8 modeSwitchLife
Return to the base PHY after all data packets transmission for TX or after\n MODE_SWITCH_START event and multitimer expiration after first data packet\n reception on new phy for RX.
Arguments

- u80=stay on new PHY (normal Wi-SUN FAN behaviour) 1=return to base PHY (special test mode)

________________ cliSeparatorHack
____BLE_Mode____ cliSeparatorHack
setBleMode u8 bleEnable
Control BLE mode.
Arguments

- u80=Disable 1=Enable

getBleMode bleStatus
Get the current BLE mode.
setBleChannelParams u8 [u32] bleSetChannelParams
Configure channel parameters related to BLE.
Arguments

- u8logicalChannel
- u32(optional) accessAddr crcInit disableWhiten

setBlePhySwitchToRx u8 [u32] blePhySwitchToRx
Configure BLE PhySwitchToRx parameters. RX is\n entered timeDeltaUs after sync word of received packet.
Arguments

- u80=Disable, >0=number of RX switches to perform
- u32(optional) phy timeDelta physicalChannel\n [uint32opt] logicalChannel accessAddr crcInit\n [uint32opt] disableWhiten\n [uint32opt] extraDelayUs

setBleAdvertising u8 bleAdvertisingConfig
Configure for BLE advertising.
Arguments

- u8advChannel: 37-39

setBle1Mbps [u8] bleSet1MbpsPhy
Switch to the 1Mbps BLE PHY.
Arguments

- u8(optional) 0=Legacy 1=Viterbi [chip default]

setBle2Mbps [u8] bleSet2MbpsPhy
Switch to the 2Mbps BLE PHY.
Arguments

- u8(optional) 0=Legacy 1=Viterbi [chip default]

setBleCoding u8 bleSetCoding
Switch to a BLE coded PHY.
Arguments

- u8RAIL_BLE_Coding_t value

setBleSimulscan bleSetSimulscan
Switch to a BLE simulscan PHY.
___________________ cliSeparatorHack
____WMBUS_Mode____ cliSeparatorHack
configWmbus u8 configWmbus
Configure WMBUS simultaneous M2O RX of T and C modes
Arguments

- u80=Disable 1=Enable

_______________ cliSeparatorHack
____Z_Wave_Mode____ cliSeparatorHack
setZWaveMode [u8] zwaveEnable
Show/Control Z-Wave mode.
Arguments

- u8(optional) 0=Disable 1=Enable\n [uint8opt] optionsBitmask

getZWaveMode zwaveStatus
Get the current Z-Wave mode.
setZWaveRegion u8 zwaveSetRegion
Set the Z-Wave region.
Arguments

- u8region: see listZWaveRegions

performZwaveIrcal [u8] zwavePerformIrcal
Perform IRCAL across all channels of the current Z-Wave region.
Arguments

- u8(optional) [0=Use cached IRCAL values], 1=Force IRCAL

getZWaveRegion zwaveGetRegion
Get the current Z-Wave region.
listZWaveRegions zwaveListRegions
List supported Z-Wave regions.
getZWaveBaudRate zwaveGetBaudRate
Get the baudrate of the current Z-Wave channel.
setZWaveNodeId u16 zwaveSetNodeId
Sets Z-Wave NodeId.
Arguments

- u16nodeId

setZWaveHomeId u32 u8 zwaveSetHomeId
Sets Z-Wave HomeId and its hash.
Arguments

- u32homeId
- u8hash

setZWaveOptions [u8] zwaveConfigureOptions
Configure Z-Wave options.
Arguments

- u8(optional) optionsBitmask

setZWaveLowPower i32 [str] zwaveSetLowPowerLevel
Set the transmit power for low-power ACKing.
Arguments

- i32power: deci-dBm unless 'raw' is added
- str(optional) 'raw'=units are raw power level

getZWaveLowPower zwaveGetLowPowerLevel
Get the low power values (deci-dBm and raw).
zwaveReceiveBeam zwaveReceiveBeam
Run the Z-Wave beam detection algorithm.
setMfmMode u8 mfmEnable
Set MFM mode to enabled or disabled
Arguments

- u80=Disable 1=Enable

getMfmMode mfmStatus
Get the current MFM mod
__________________ cliSeparatorHack
____RAIL_Timer____ cliSeparatorHack
setTimer u32 str setTimer
Set the RAIL timer timeout.
Arguments

- u32timeout: per mode
- str'rel'=Relative 'abs'=Absolute

timerCancel timerCancel
Cancel the RAIL timer if it is active.
printTimerStats printTimerStats
Print current timer configuration.
enableMultiTimer u8 enableMultiTimer
Control the multiTimer API.
Arguments

- u80=Disable 1=Enable

setMultiTimer u8 u32 str setMultiTimer
Set a specific timer timeout.
Arguments

- u8timer: 0..(NUM_MULTI_TIMERS-1)
- u32timeout: per mode
- str'rel'=Relative 'abs'=Absolute

multiTimerCancel u8 multiTimerCancel
Cancel a specific timer if it is active.
Arguments

- u8timer: 0..(NUM_MULTI_TIMERS-1)

getMultiTimerStats u8 printMultiTimerStats
Get information about a specific timer.
Alias printMultiTimerStats
Arguments

- u8timer: 0..(NUM_MULTI_TIMERS-1)

delayUs u32 delayUs
Do a blocking delay for a specified time.
Arguments

- u32delayUs

____________________ cliSeparatorHack
____Auto_ACK_ing____ cliSeparatorHack
autoAckConfig str u32 u32 u16 autoAckConfig
Configure and enable auto-ACK functionality.
Arguments

- strdefaultState: 'idle'/'rx'
- u32idleToRxUs
- u32turnaroundTimeUs
- u16ackTimeoutUs: to ACK's sync-detect

autoAckDisable autoAckDisable
Disable auto-ACK. Use autoAckConfig to reenable.
setAckPayload u16 [u8] setAckPayload
Set the ACK payload to transmit.
Arguments

- u16offset
- u8(optional) byte0 byte1 ...

setAckLength u16 setAckLength
Set how much data to load into the TXACK FIFO.
Arguments

- u16lengthBytes

printAckPacket printAckPacket
Print the current TXACK payload data and byte length.
getAutoAck getAutoAck
Get the current state of auto-ACKing.
autoAckPause u8 u8 autoAckPause
Pause or Resume auto-ACKing
Arguments

- u81=PauseRx 0=ResumeRx
- u81=PauseTx 0=ResumeTx

setTxAckOptions u8 u8 setTxAckOptions
Control auto-ACK response for just the next receive.
Arguments

- u81=cancelAck 0=sendAck
- u81=useTxBuf 0=useTxAckBuf

setTxAckDirect u8 setTxAckDirect
Control direct access to TXACK FIFO (RAIL_GetAutoAckFifo).
Arguments

- u80=indirect-access 1=direct-access

______________________ cliSeparatorHack
____GPIO_Functions____ cliSeparatorHack
setGpioOutPin str u8 u8 setGpioOutPin
Set a GPIO pin to push/pull and data out bit.
Arguments

- strgpioPort: start from '0' or 'a' or 'A'
- u8gpioPin
- u8state: 0/1

setAntDivPin u8 u8 u8 u8 [u8] setAntDivPin
Set output pin for antenna diversity.
Arguments

- u8Antenna0 gpioPort (0=A, 1=B, etc.)
- u8Antenna0 gpioPin
- u8Antenna1 gpioPort (0=A, 1=B, etc.)
- u8Antenna1 gpioPin
- u8(optional) Antenna0 gpioPin State: 0=Disable [1=Enable]\n [uint8opt] Antenna1 gpioPin State: 0=Disable [1=Enable]

___________________________ cliSeparatorHack
____Diagnostic_and_Test____ cliSeparatorHack
getConfigIndex getConfigIndex
Get the index of the current multi-PHY radio config.\n See the entries in *channelConfigs[]. Start with index 0.
setConfigIndex u8 [u16] setConfigIndex
Activate a multi-PHY radio configuration.\n See the entries in *channelConfigs[]. Start with index 0.\n If optional 'channel' parameter is not provided, the first available channel is set.
Arguments

- u8multiPhyIndex
- u16(optional) channel

setCtune u16 setCtune
Set the value of HFXO CTUNE. The radio must be IDLE.
Arguments

- u16ctune

getCtune getCtune
Get the value of HFXO CTUNE
setCtuneDelta u16 setCtuneDelta
Set the value of HFXO CTUNE delta
Arguments

- u16delta

getCtuneDelta getCtuneDelta
Get the value of HFXO CTUNE delta
setPaCtune u8 u8 setPaCtune
Set the PACTUNE value for TX and RX.
Arguments

- u8txPaCtune
- u8rxPaCtune

enablePaCal u8 enablePaCal
Control PA power calibration.
Arguments

- u80=Disable 1=Enable

setDebugSignal str str [u16] setDebugSignal
Configure chip specific debug output.\n Use 'setDebugSignal help me' for more details.
Arguments

- strpin
- strsignal
- u16(optional) signalOptions

setDebugMode u32 setDebugMode
Control Debug mode which allows freqOverride.
Arguments

- u320=Disable 1=Enable

freqOverride u32 setFrequency
Set the radio frequency. Requires debug mode.
Arguments

- u32freqHz: Only small deviations from the\n current configuration are supported.

configDirectMode u8 u8 u8 u8 u8 u8 u8 u8 [u8] configDirectMode
Configure direct mode
Arguments

- u8syncRx: 0=Disable 1=Enable
- u8syncTx: 0=Disable 1=Enable
- u8doutPort
- u8doutPin
- u8dclkPort
- u8dclkPin
- u8dinPort
- u8dinPin
- u8(optional) doutLoc\n [uint8opt] dclkLoc\n [uint8opt] dinLoc

directMode u8 setDirectMode
Control direct mode.
Arguments

- u80=Disable 1=Enable

directTx u8 setDirectTx
Control TX in direct mode.
Arguments

- u80=Disable 1=Enable

txCancel i32 [u8] txCancel
Start a TX that will be cancelled.
Arguments

- i32delayUs: when to cancel it
- u8(optional) stopMode: [0=RAIL_IDLE_ABORT] 1-3=RAIL_StopMode_t\n 4-7=4+RAIL_IdleMode_t

configHFXOThermistor configHFXOThermistor
Configures the thermistor pin and the HFXO compensation parameters.
configHFXOCompensation [i8] configHFXOCompensation
Configure the temperature parameters for HFXO compensation.\n Set deltaNominal and deltaCritical to 0 to compensate after each tx.
Arguments

- i8(optional) Arg1: enableCompensation\n Arg2: zoneTemperatureC\n Arg3: deltaNominal\n Arg4: deltaCritical

startThermistor startThermistorMeasurement
Starts a thermistor measurement.\n Triggers the HFXO temperature compensation if enabled.
Alias startThermistorMeasurement
getThermistor getThermistorImpedance
Gets the thermistor impedance.
Alias getThermistorImpedance
getHFXOPPMError getHFXOPPMError
Compute the HFXO PPM deviation.\n Must be called after a complete thermistor measurement\n ie after getThermistor.
compensateHFXO [i8] compensateHFXO
Apply the temperature compensation using latest thermistor measurement\n if no parameter is given.
Arguments

- i8(optional) The amount of ppm to compensate

configThermalProtection [u8] configThermalProtection
Enable thermal protection, configure temperature threshold and cool down.\n Threshold and cool down values are respectively set to maximum and minimum.
Arguments

- u8(optional) Enable protection\n New temperature threshold in Celsius degrees\n New cool down

getTemperature [u8] getTemperature
Show chip and XTAL temperatures in Celsius (255=invalid)
Arguments

- u8(optional) 1=reset temperature values after reading

getRandom u16 [u8] getRandom
Get random data from the radio.
Arguments

- u16lengthBytes
- u8(optional) [0=show them] 1=hide them

setTxUnderflow u8 setTxUnderflow
Control TX underflows by not loading the TX FIFO.
Arguments

- u81=Force underflows 0=Disable

setRxOverflow u8 [u32] setRxOverflow
Control RX overflows by delaying in the event handler.
Arguments

- u80=Disable 1=Enable
- u32(optional) delayUs: [0]

setCalibrations u8 setCalibrations
Control calibrations.
Arguments

- u80=Disable 1=Enable

setTxTransitions str str setTxTransitions
Set the TX state transitions.
Arguments

- strtxSuccess: 'idle'/'rx'
- strtxError: 'idle'/'rx'

setRxTransitions str str setRxTransitions
Set the RX state transitions.
Arguments

- strrxSuccess: 'idle'/'rx'/'tx'
- strrxError: 'idle'/'rx'/'tx'

getTxTransitions getTxTransitions
Get the TX state transitions.
getRxTransitions getRxTransitions
Get the RX state transitions.
setNextTxRepeat u16 [u32] setNextTxRepeat
Set next transmit's automatic repeat count.
Arguments

- u16number of auto-repeated transmits after the first
- u32(optional) delayUs inter-transmit or hop delay\n [uint32opt] channel (if hopping)\n repeat delayUs and channel for additional hops.

configTxRepeatStartToStart u8 configTxRepeatStartToStart
Set tx repeat option to have tx repeats delaying from start of tx to start of tx.
Arguments

- u80 to disable, 1 to enable

setNextBleTxRepeat u16 [u32] setNextBleTxRepeat
Set next transmit's automatic repeat count.
Arguments

- u16number of auto-repeated transmits after the first
- u32(optional) delayUs inter-transmit or hop delay\n [uint32opt] phy railChannel logicalChannel accessAddress\n (a hop's config, repeat from delayUs for additional hops)

setTxTimePos u8 setTxTimePos
Set desired TX timestamp position.
Arguments

- u8RAIL_PacketTimePosition_t

setRxTimePos u8 setRxTimePos
Set desired RX timestamp position.
Arguments

- u8RAIL_PacketTimePosition_t

setTimings i32 i32 i32 [i32] setTimings
Set RAIL state transition timings (use -1 to keep same).
Arguments

- i32idleToRxUs
- i32txToRxUs
- i32idleToTxUs
- i32(optional) rxToTxUs [0]\n [int32opt] rxSearchTimeoutUs [0]\n [int32opt] txToRxSearchTimeout [0]\n [int32opt] txToTx [0]

forceAssert u32 forceAssert
Force a RAIL assert with the given error code.
Arguments

- u32RAIL_AssertErrorCodes_t

getAppMode getAppMode
Get the current RAILtest AppMode_t mode.
getRadioState getRadioState
Get the current RAIL_RadioState_t radio state.
verifyRadio u32 u8 u8 u8 verifyRadio
Verify radio memory contents.
Arguments

- u32durationUs: time limit
- u80=Resume if previously didn't finish 1=Restart
- u80=current radio config 1=external radio config
- u80=No callback 1=Use RAILCb_ConfigVerification

getChannel getChannel
Get the current radio channel.
setChannel u16 setChannel
Set the radio channel.
Arguments

- u16channel

setPktOffsetInTxFifo [u16] setPktOffsetInTxFifo
Set the offset in number of bytes of the Tx Data in Tx Fifo.
Arguments

- u16(optional) Offset in number of bytes. If no parameter specified, command returns current active Offset

reset resetChip
Perform a reboot of the chip.
writeRmrStructure u8 u16 u8 [u32] CI_writeRmrStructure
Reserved for Simplicity Studio use only.
Arguments

- u8
- u16
- u8
- u32(optional)

updateConfigPtr u8 u16 u8 CI_updateConfigurationPointer
Reserved for Simplicity Studio use only.
Alias updateConfigurationPointer
Arguments

- u8
- u16
- u8

reconfigureModem CI_reconfigureModem
Reserved for Simplicity Studio use only.
setRfPath u32 CI_SetRfPath
Set the RF path.
Arguments

- u320=Path0 1=Path1

printEvents [u32] configPrintEvents
Show/Configure printing of RAIL events as they occur.
Arguments

- u32(optional) printEvents<31:0> printEvents<63:32>\n [uint32opt] mask<31:0> mask<63:32>

printChipFeatures printChipFeatures
Display RAIL features supported at compile and runtime.
getmemw u32 [u32] getMemWord
Read count 32-bit words starting at address.
Arguments

- u32address
- u32(optional) count

setmemw u32 [u32] setMemWord
Write 32-bit values starting at address.
Arguments

- u32address
- u32(optional) value0 value1 ...

setmemwNoRead u32 [u32] setMemWordNoRead
Write 32-bit values starting at address without readback.
Arguments

- u32address
- u32(optional) value0 value1 ...

throughput u32 throughput
Throughput test.
Arguments

- u32number of packets

setRssiOffset i8 [str] setRssiOffset
Sets an RSSI offset in dBm.
Arguments

- i8offsetDbm (use -128 to erase nvm)
- str(optional) ['protocol'] or 'radio' or 'nvm'

getRssiOffset [u8] getRssiOffset
Gets the RSSI offsets in dBm.
Arguments

- u8(optional) (not used)

setRssiDetectThreshold i8 setRssiDetectThreshold
Sets the RSSI detect threshold.
Arguments

- i8RSSI detect threshold (in dBm). (-128 disables detection)

getRssiDetectThreshold getRssiDetectThreshold
Gets the RSSI detect threshold(in dBm).
txAt u32 [str] txAtTime
Transmit a packet at a certain time.
Arguments

- u32time: per mode
- str(optional) ['abs'=Absolute] 'rel'=Relative\n [stringopt] 'abort' RX if TX occurs during packet RX\n otherwise TX is delayed to end of RX

txAtN u32 u32 [str] txAtTimeN
Transmit multiple packets starting at a certain time.
Arguments

- u32number of transmits
- u32time: per mode
- str(optional) ['abs'=Absolute] 'rel'=Relative\n [stringopt] 'abort' RX if TX occurs during packet RX\n otherwise TX is delayed to end of RX

setFreqOffset [i32] setFreqOffset
Get/Set the frequency offset adjustment.
Arguments

- i32(optional) RAIL_FrequencyOffset_t

holdRx u8 holdRx
Control holding of received packets.
Arguments

- u8[0=Process packets immediately] 1=Hold packets

wait u32 [str] wait
Suspend processing of CLI input for a while.
Arguments

- u32waitTimeUs
- str(optional) ['rel'=Relative] 'abs'=Absolute

clearScript [u8] clearScript
Clear the script entered via enterScript.
Arguments

- u8(optional) [0=RAM] 1=Flash

printScript [u8] printScript
Print the script entered via enterScript.
Arguments

- u8(optional) [0=RAM] 1=Flash

enterScript [u8] enterScript
Enter script entry mode.\n Conclude entry mode with text 'endScript'.
Arguments

- u8(optional) [0=RAM] 1=Flash-script will run on boot

runScript [u8] runScript
Run the script entered via enterScript.
Arguments

- u8(optional) [0=RAM] 1=Flash-script will run on boot

setRetimeOption u8 setRetimeOption
Control retime options.
Arguments

- u8optionBitMask: 1=HFXO | 2=HFRCO | 4=DCDC | 8=LCD

enable802154SignalIdentifier u8 enable802154SignalIdentifier
Enable Signal Identifier 2.4Ghz 802.15.4 signal detection
Arguments

- u80=Disable 1=Enable

enableBleSignalIdentifier u8 enableBleSignalIdentifier
Enable Signal Identifier for BLE signal detection
Arguments

- u8Mode 0=Disable 1=BLE1Mbps 2=BLE2Mbps

getChannelConfigEntry u8 u8 getChannelConfigEntry
Get the maximum valid channelConfig index, the maximum\n valid channelConfigEntry index in the selected channelConfig\n and the parameters of the selected channelConfigEntry
Arguments

- u8channelConfig index
- u8channelConfigEntry index

deinitProtocol deinitProtocol
Deinit the current protocol (BLE, 802.15.4, Z-Wave)
enableCacheSynthCal u8 enableCacheSynthCal
Sequencer will start caching the calibration values on next\n state transition and use them instead of calibrating again\n for future state transitions. Recalibration will occur when\n needed (eg. protocol change, temperature change)
Arguments

- u80=Disable 1=Enable

getWhiteningInitVal getWhiteningInitVal
Returns the whitening initialization value.
getCrcInitVal getCrcInitVal
Returns the CRC initialization value.
setWhiteningInitVal u16 setWhiteningInitVal
Set the whitening initialization value.
Arguments

- u16Whitening initialization value.

setCrcInitVal u32 setCrcInitVal
Set the CRC initialization value.
Arguments

- u32CRC initialization value.

resetWhiteningInitVal resetWhiteningInitVal
Reset the whitening initialization value to it's\n original setting from the Radio Configurator.
resetCrcInitVal resetCrcInitVal
Reset the CRC initialization value to it's\n original setting from the Radio Configurator.