TCPIP slice - flexradio/smartsdr-api-docs GitHub Wiki
Create a slice receiver. See SmartSDR Supported Modes for a complete list of supported modes
C[D]<seq_number>|slice create [freq=<MHz>][pan=<streamID>][ant=<antenna_port>][mode=<mode>][clone_slice=<source_slice>]
<MHz> = frequency in MHz, up to 15 significant digits
<streamID> = stream identification
<antenna_port> = antenna designator: ANT1, ANT2, RXA, RXB, or XVTR
<mode> = alphanumeric mode designator: usb, lsb, cw, am ...
<source_slice> = slice to be cloned
Example:
C21|slice create freq=10.0 ant=ANT1 mode=usb
See Response Format for details on the format of the response messages from the radio
Hex Response | Message | Debug Output / Meaning |
---|---|---|
00000000 | <slice_rx> | OK Slice receiver created on MHz on port |
50000001 | Unable to get foundation receiver assignment | |
50000003 | License check failed, cannot create slice receiver | |
50000004 | Slice parameter error | |
50000005 | The number or type of parameters supplied is incorrect | |
50000016 | Malformed Command | |
5000002C | Incorrect number of parameters | |
50000032 | Bad Mode |
Responses
<slice_rx> = the slice receiver number assigned to this slice receiver
Response Example:
R21|0|2|OK Slice receiver 2 created on 10.000 MHz on port ANT1
Returns the frequency error of a slice. Slices are tuned using a set of digital tuning elements that can be slightly off-frequency. This command will report the known difference in the requested and actual frequency. Note that this command is only useful if the radio is GPS locked or locked to a 10MHz reference. The result does not take into account any drift in the internal OCXO or TCXO. Note that the FLEX-6500 and FLEX-6700(R) use a PLL master oscillator with a very narrow loop bandwidth (10Hz) that will have around a 3-4 cycle-per-minute sinusoid that will modulate the receiver and transmitter. Typical error induced by the oscillation is in the vicinity of 3mHz peak-to-peak. Long-term averaging should null out this error (v1.10.8 and later)
C[D]<seq_number>|slice get_error <slice_rx>
<slice_rx> = the slice receiver number that has the error. Slice receivers are numbered starting with zero (0)
Example:
C21|slice get_error 0
See Response Format for details on the format of the response messages from the radio
Hex Response | Message | Debug Output / Meaning |
---|---|---|
00000000 | <rx_error_value>,<tx_error_value> | <rx_error_value> is the frequency offset in mHz for the receiver (tx for transmitter). Negative values indicate the receiver or transmitter is tuned low in frequency. |
50000004 | Incorrect number of parameters | |
50000005 | The number or type of parameters supplied is incorrect | |
5000000D | Invalid Slice Receiver | |
5000002C | Incorrect number of parameters |
Responses
Response Example:
R21|0|+3.56432,-11.346234
Remove (delete) a slice receiver
C[D]<seq_number>|slice r <slice_rx>
<slice_rx> = the slice receiver number to be removed. Slice receivers are numbered starting with zero (0)
Example:
C19|slice r 0
See Response Format for details on the format of the response messages from the radio
Hex Response | Message | Debug Output / Meaning |
---|---|---|
00000000 | Successfully deleted slice receiver | |
50000005 | The number or type of parameters supplied is incorrect | |
5000000D | Invalid Slice Receiver | |
5000002C | Incorrect number of parameters | |
534C9999 | The slice number provided is invalid |
Responses
Response Example:
R19|0||
Tune the slice receiver to a new frequency
C[D]<seq_number>|slice t <slice_rx> <frequency> [autopan=<0|1>]
<slice_rx> = the slice receiver number to be removed. Slice receivers are numbered starting with zero (0)
<frequency> = the new frequency for the slice receiver specified in MHz
autopan specifies if panadapters should be tuned to keep slice in view
Example:
C12|slice t 1 14.2055
See Response Format for details on the format of the response messages from the radio
Hex Response | Message | Debug Output / Meaning |
---|---|---|
00000000 | Successfully tuned slice receiver | |
50000005 | The number or type of parameters supplied is incorrect | |
5000000C | The frequency requested is out of range | |
5000000D | Invalid slice receiver number | |
5000001D | Insufficient resources to tune to that frequency (requires new minimixer, not available) | |
534C9999 | The slice number provided is invalid |
Responses
Response Example:
R12|0||
Retrieve a list of slice receivers currently enabled. Note that the single letter after the slice command is a lower case L, not a number one.
C[D]<seq_number>|slice list
Example:
C41|slice list
See Response Format for details on the format of the response messages from the radio
Hex Response | Message | Debug Output / Meaning |
---|---|---|
00000000 | list of slice receivers provided | |
Responses
Response Example:
R41|0|0 1 3 4|
In this example, slice receivers 0, 1, 3 and 4 are all enabled and in use.
Changes various operational parameters specific to the slice receiver.
C[D]<seq_number>|slice s <slice_rx> <parameter=value> [<parameter=value>...]
Example:
C41|slice s 0 nr=50
Parameters that can be set and the appropriate values are listed in the table below:
Parameter | Value |
---|---|
active | select (active=1) or deselect (active=0) the specified slice |
agc_mode | specify the agc mode <off|slow|med|fast> |
agc_off_level | specify at what level agc will turn off |
agc_threshold | set the agc threshold <0-100> |
anf | automatic notch filter state (on or off) |
anf_level | automatic notch filter level: 0=OFF, range 0-100 |
apf | |
apf_level | set apf level <0-100> |
dax | dax channel to be used by the specified slice receiver |
diversity | enable/disable diversity |
mode | demodulation mode (See SmartSDR Supported Modes for a complete list of supported modes) |
nb | noise blanking state (on or off) |
nb_level | noise blanking level: 0=OFF, range 0-100 |
nr | noise reduction state (on or off) |
nr_level | noise reduction level: 0=OFF, range 0-100 |
tnf | enable/disable tnf <T|F> |
tx | enable (tx=1) or disable (tx=0) transmission via the specified slice |
txant | specify the tx antenna port ex: ANT1 |
wnb | enable/disable white noise blanker <on|off> |
wnb_level | set the wnb level <0-100> |
step | specifies a step |
step_list | returns list of steps |
record | starts recording <0 |
play | starts playing recording <0 |
fm_deviation | changes the frequency deviation in Hz |
dfm_pre_de_emphasis | <T |
rf_gain | changes frequency gain <-10 |
audio_level | audio level <0-100> |
audio_pan | pan audio level <0-100> |
sample_rate | adjust sample rate <24000 |
squelch | enable/disable squelch <1 |
squelch_level | squelch level state <1 |
pos_mute | toggle pos mute <0 |
See Response Format for details on the format of the response messages from the radio
Hex Response | Message | Debug Output / Meaning |
---|---|---|
00000000 | OK - update successful | |
5000000F | Invalid DSP process (the process you attempted to set it not in this signal chain) | |
50000016 | Malformed command | |
5000002D | Bad field | |
5000002F | Unimplemented mode (mode recognized, but not yet implemented) | |
50000030 | Signal chain error - likely bad mode | |
50000032 | Unrecognized mode (string) | |
50000033 | Parameter out of range |
Responses
Response Example:
R41|0|0 1 3 4|
In this example, slice receivers 0, 1, 3 and 4 are all enabled and in use.