02. Rail – Receive and Transmit Command
No | Command | Description | |
R0201 | rx | Control receive mode. | |
R0202 | rxAt | Configure scheduled receive. | |
R0203 | setRxOptions | Show/Configure receive options (RAIL_RX_OPTIONs). | |
R0204 | tx | Transmit packets with current TX options. | |
R0205 | txWithOptions | Same tx command. This command is deprecated. | |
R0206 | txAfterRx | Schedule a TX with specified delay after each RX. | |
R0207 | configTxOptions | Show/Configure transmit options (RAIL_TX_OPTIONs). | |
R0208 | setFixedLength | Configure fixed length packet operation. | |
R0209 | setPower | Set the transmit power. The radio must be IDLE. | |
R0210 | getPower | Get the transmit power in deci-dBm. | |
R0211 | setPowerConfig | Set transmit PA configuration. Must use setpower afterwards. | |
R0212 | getPowerConfig | Get the transmit PA configuration. | |
R0213 | getPowerLimits | Get min and max powerLevel for a power mode. | |
R0214 | enablePaAutoMode | Control automatic PA selection based on the TX power level. | |
R0215 | configPaAutoMode | Configure entries in the default PA Auto Mode plugin. | |
R0216 | sweepTxPower | Sweep TX power for the current PA by toning at each level. | |
R0217 | offsetLqi | Adjust the hardware’s LQI value for received packets. | |
R0218 | getRssi | Get RSSI in dBm. It’ll be invalid if receiver isn’t ready. | |
R0219 | sweepPower | Sweep power by toning low/high in a square wave fashion. | |
R0220 | startAvgRssi | Start AGC RSSI averaging. | |
R0221 | getAvgRssi | Get AGC RSSI averaging result. | |
R0222 | setTxTone | Control tone transmission. | |
R0223 | setTxStream | Control stream transmission. | |
R0224 | status | Print the current status counters. | |
R0225 | fifoStatus | Print the current FIFO-related counters. | |
R0226 | setTxHoldOff | Control transmit hold-off (blocking of transmits). | |
R0227 | setTxDelay | Set the inter-packet delay for repeated TX. | |
R0228 | getTxDelay | Get the inter-packet millisecond delay for repeated TX. | |
R0229 | setTxPayload | Set TX packet payload bytes for future transmits. | |
R0230 | setTxRandom | Set a specified range of bytes in the Tx packet payload to a | |
R0231 | setTxPayloadQuiet | Like setTxPayload, but less verbose. | |
R0232 | setTxLength | Set how much data to load into the TX FIFO for transmitting. | |
R0233 | printTxPacket | Print the current TX payload data and byte length. | |
R0234 | peek | Peek at the start of the receive buffer. | |
R0235 | getTime | Get the current RAIL time in microseconds. | |
R0236 | setTime | Set the current RAIL time. | |
R0237 | dataConfig | Control the data methods for TX and RX. | |
R0238 | setRxFifo | Set the receive buffer length. | |
R0239 | setTxFifo | Set the transmit buffer length. | |
R0240 | setTxFifoThreshold | Set the TX FIFO Almost Empty threshold. | |
R0241 | setRxFifoThreshold | Set the RX FIFO Almost Full threshold. | |
R0242 | fifoModeTestOptions | Manual control over RAILtest FIFO actions. | |
R0243 | rxFifoManualRead | Read and print bytes from receive FIFO when in manual mode. | |
R0244 | txFifoManualLoad | Try to load data into available TX FIFO space. | |
R0245 | fifoReset | Reset the transmit and/or receive FIFO. | |
R0246 | abortRxPacket | Idle the radio shortly after RX sync word detection. | |
R0247 | printTxAcks | Control printing of TX ACK packets. | |
R0248 | configRxHopping | Configure an RX Channel Hopping sequence. | |
R0249 | enableRxHopping | Control RX channel hopping previously configured. | |
R0250 | configRxHoppingOpts | Configure options for a hop. Use configRxHopping after. | |
R0251 | configRxMultiHop | Configure multi-sense for a hop. Use configRxHopping after. | |
R0252 | getRxHoppingRssi | Get the latest RSSI for a hopping channel. | |
R0253 | spectrumAnalyzer | Hop across a channel range to see the RSSI distribution. | |
R0254 | configRxDutyCycle | Configure RX Duty Cycling of the receiver. | |
R0255 | enableRxDutyCycle | Control RX duty cycling previously configured. | |
R0256 | getDefaultRxDutyCycleConfig | Get the default RX duty cycle configuration. | |
R0257 | setTxAltPreambleLen | Set alternate TX preamble length, enabled via txOptions. | |
R0258 | configSyncWords | Set sync words and their length. The radio must be off. | |
R0259 | getSyncWords | Get the sync word length in bits and value(s). | |
R0260 | printRxErrors | Control printing of RX error packets. | |
R0261 | printRxFreqOffsets | Control printing of RX frequency offsets. | |
R0262 | printDataRates | Print the data rates of the current PHY. | |
R0263 | stopInfinitePream | Stops an infinite preamble transmission. |
R0201 rx Control receive mode.
Option | [uint8] 0=Disable [1=Enable] | |
Exercise |
R0204 tx Transmit packets with current TX options.
Option | [uint32] number of packets, 0=continuous until next ‘tx 0’ | |
Exercise |
R0209 setPower Set the transmit power. The radio must be IDLE.
Option | [int32] power: deci-dBm unless ‘raw’ is added, 169 ~ -150 | |
[stringopt] ‘raw’=units are raw power level | ||
Exercise | setPower 10 {{(setPower)}{powerLevel:11}{power:10}} |
Comment:
Power [dBm] | Setting | |
20dBm | ||
1dBm | setPower 100 | |
14dBm | setPower 140 | |
20dBm | setPower 200 |
R0210 getPower Get the transmit power in deci-dBm.
Option | None | |
Exercise |
R0210 setPowerConfig Set transmit PA configuration. Must use setpower afterwards.
Option | [string] paMode | |
[uint16] millivolts | ||
[uint16] rampTimeUs | ||
Exercise |
R0223 setTxStream Control stream transmission.
Option | [uint32] 0=Disable 1=Enable | |
[uint32opt] streamMode: 1=PN9, 2=1010, 3=phaseNoise 0=tone | ||
[uint32opt] antenna: [0]/1 | ||
Exercise | setTxStream 1 1 0 |
R0202 | rxAt | Configure scheduled receive. | |
[uint32] startTimeUs | |||
[string] ‘rel’=Relative ‘abs’=Absolute | |||
[uint32] endTimeUs | |||
[string] ‘rel’=Relative ‘abs’=Absolute | |||
[uint8opt] rxTransEndSched: [0]/1 | |||
[uint8opt] hardEnd: [0]/1 | |||
R0203 | setRxOptions | Show/Configure receive options (RAIL_RX_OPTIONs). | |
[uint32opt] rxOptionsValues: bitmask of enabled options | |||
R0205 | txWithOptions | Same tx command. This command is deprecated. | |
[uint32] number of packets, 0=continuous until next ‘tx 0’ | |||
R0206 | txAfterRx | Schedule a TX with specified delay after each RX. | |
[uint32] delayUs: 0=Disable | |||
R0207 | configTxOptions | Show/Configure transmit options (RAIL_TX_OPTIONs). | |
[uint32opt] txOptionsValues: bitmask of enabled options | |||
R0208 | setFixedLength | Configure fixed length packet operation. | |
[uint16] fixedLength: payload bytes | |||
R0212 | getPowerConfig | Get the transmit PA configuration. | |
R0213 | getPowerLimits | Get min and max powerLevel for a power mode. | |
[uint8opt] powerMode | |||
R0214 | enablePaAutoMode | Control automatic PA selection based on the TX power level. | |
[uint8] 0=Disable 1=Enable | |||
R0215 | configPaAutoMode | Configure entries in the default PA Auto Mode plugin. | |
[uint8] start Index | |||
[int32opt] min max mode band: PA auto config entries | |||
R0216 | sweepTxPower | Sweep TX power for the current PA by toning at each level. | |
R0217 | offsetLqi | Adjust the hardware’s LQI value for received packets. | |
[int32] offset: signed value to add | |||
The resulting LQI is capped within 0..255 range. | |||
R0218 | getRssi | Get RSSI in dBm. It’ll be invalid if receiver isn’t ready. | |
[uint32opt] [0=don’t wait] 1=wait for valid RSSI if possible | |||
R0219 | sweepPower | Sweep power by toning low/high in a square wave fashion. | |
[int32] lowPower: deci-dBm | |||
[int32] hiPower: deci-dBm | |||
[uint32] periodUs | |||
R0220 | startAvgRssi | Start AGC RSSI averaging. | |
[uint32] averageTimeUs | |||
[uint16opt] channel: if different than current channel | |||
R0221 | getAvgRssi | Get AGC RSSI averaging result. | |
R0222 | setTxTone | Control tone transmission. | |
[uint32] 0=Disable 1=Enable | |||
[uint32opt] antenna: [0]/1 | |||
[uint32opt] mode: [0]/1=phaseNoise | |||
R0224 | status | Print the current status counters. | |
R0225 | fifoStatus | Print the current FIFO-related counters. | |
R0226 | setTxHoldOff | Control transmit hold-off (blocking of transmits). | |
[uint32] 0=Disable 1=Enable | |||
R0227 | setTxDelay | Set the inter-packet delay for repeated TX. | |
[uint32] delayMilliseconds | |||
R0228 | getTxDelay | Get the inter-packet millisecond delay for repeated TX. | |
R0229 | setTxPayload | Set TX packet payload bytes for future transmits. | |
[uint16] offset | |||
[uint8opt] byte0 byte1 … | |||
R0230 | setTxRandom | Set a specified range of bytes in the Tx packet payload to a | |
random value. Call setTxRandom again to stop randomizing the payload. | |||
[uint16opt] Start Index | |||
[uint16opt] End Index | |||
R0231 | setTxPayloadQuiet | Like setTxPayload, but less verbose. | |
[uint16] offset | |||
[uint8opt] byte0 byte1 … | |||
R0232 | setTxLength | Set how much data to load into the TX FIFO for transmitting. | |
Actual packet length may vary based on radio configuration. | |||
[uint16] lengthBytes | |||
R0233 | printTxPacket | Print the current TX payload data and byte length. | |
R0234 | peek | Peek at the start of the receive buffer. | |
[uint16] bytes: 1-10 | |||
[uint16opt] offset: [0] | |||
R0235 | getTime | Get the current RAIL time in microseconds. | |
R0236 | setTime | Set the current RAIL time. | |
[uint32] timeUs | |||
R0237 | dataConfig | Control the data methods for TX and RX. | |
[string] txMethod: ‘pkt’/’fifo’ | |||
[string] rxMethod: ‘pkt’/’fifo’ | |||
[uint8opt] RAIL_RxDataSource_t (>0 needs fifo mode) | |||
[uint8opt] RAIL_TxDataSource_t (>0 needs ping-pong buffer) | |||
R0238 | setRxFifo | Set the receive buffer length. | |
[uint16] lengthBytes: range 64-RX_BUFFER_SIZE | |||
R0239 | setTxFifo | Set the transmit buffer length. | |
[uint16] lengthBytes: range 64-TX_BUFFER_SIZE, 0 for default size | |||
R0240 | setTxFifoThreshold | Set the TX FIFO Almost Empty threshold. | |
[uint16] thresholdBytes: below which the event triggers | |||
R0241 | setRxFifoThreshold | Set the RX FIFO Almost Full threshold. | |
[uint16] thresholdBytes: above which the event triggers | |||
R0242 | fifoModeTestOptions | Manual control over RAILtest FIFO actions. | |
[uint8] txFifo: 1=Manual 0=Automatic | |||
[uint8] rxFifo: 1=Manual 0=Automatic | |||
R0243 | rxFifoManualRead | Read and print bytes from receive FIFO when in manual mode. | |
[uint8] appendedInfo: 1=include packet metadata | |||
[uint16] bytesToRead | |||
[uint8opt] [0=don’t] 1=show timestamps with appendedInfo | |||
R0244 | txFifoManualLoad | Try to load data into available TX FIFO space. | |
R0245 | fifoReset | Reset the transmit and/or receive FIFO. | |
[uint8] tx: 1=reset TX FIFO | |||
[uint8] rx: 1=reset RX FIFO | |||
R0246 | abortRxPacket | Idle the radio shortly after RX sync word detection. | |
[uint32] abortOffsetUs | |||
R0247 | printTxAcks | Control printing of TX ACK packets. | |
[uint8] [0=Disable] 1=Enable | |||
R0248 | configRxHopping | Configure an RX Channel Hopping sequence. | |
[uint32opt] channel hopMode param delayUs: a hop’s config, | |||
repeat for additional hops … | |||
Use no arguments to get Z-Wave radio config defaults. | |||
R0249 | enableRxHopping | Control RX channel hopping previously configured. | |
[uint8] [0=Disable] 1=Enable | |||
[uint8opt] [0=Continue] 1=Restart sequence | |||
R0250 | configRxHoppingOpts | Configure options for a hop. Use configRxHopping after. | |
[uint8] hopIndex | |||
[uint8] options | |||
[int8opt] rssiThreshold: dBm for the threshold option | |||
R0251 | configRxMultiHop | Configure multi-sense for a hop. Use configRxHopping after. | |
[uint8] hopIndex | |||
[uint32] syncDetectUs | |||
[uint32] preambleSenseUs | |||
[uint32] timingSenseUs | |||
[uint32] timingReSenseUs | |||
R0252 | getRxHoppingRssi | Get the latest RSSI for a hopping channel. | |
[uint8] hopIndex | |||
R0253 | spectrumAnalyzer | Hop across a channel range to see the RSSI distribution. | |
[uint8] 1=Show ASCII-Art graph (non-parseable output) | |||
[uint16opt] minChannel: [0]-65535 | |||
[uint16opt] maxChannel: 0-[65535] | |||
Channel range is limited by the PHY and by hopping’s | |||
MAX_NUMBER_CHANNELS. | |||
R0254 | configRxDutyCycle | Configure RX Duty Cycling of the receiver. | |
[uint32] hopMode | |||
[int32] parameter(s) {syncUs preamUs timingUs retimingUs} | |||
[int32] delayUs | |||
[int32opt] options | |||
[int32opt] rssiThreshold: dBm for the threshold option | |||
R0255 | enableRxDutyCycle | Control RX duty cycling previously configured. | |
[uint8] DutyCycling: 0=Disable 1=Enable | |||
[uint8opt] ScheduledWakeup: [0=Disable] 1=Enable | |||
R0256 | getDefaultRxDutyCycleConfig | Get the default RX duty cycle configuration. | |
R0257 | setTxAltPreambleLen | Set alternate TX preamble length, enabled via txOptions. | |
[uint16] preambleBits | |||
R0258 | configSyncWords | Set sync words and their length. The radio must be off. | |
[uint8] bits: 2-32 | |||
[uint32] syncWord1 | |||
[uint32opt] syncWord2: [same as syncWord1] | |||
R0259 | getSyncWords | Get the sync word length in bits and value(s). | |
R0260 | printRxErrors | Control printing of RX error packets. | |
[uint8] [0=Disable] 1=Enable | |||
R0261 | printRxFreqOffsets | Control printing of RX frequency offsets. | |
[uint8] [0=Disable] 1=Enable | |||
R0262 | printDataRates | Print the data rates of the current PHY. | |
R0263 | stopInfinitePream | Stops an infinite preamble transmission. |