Skip to content

Spot Commands

github-actions[bot] edited this page Jun 15, 2026 · 1 revision

Spot Commands

Generated from FlexLib v4.2.18

DX cluster spot management


Wire Protocol

Commands follow the FlexRadio TCP wire protocol:

C[D]<seq_number>|<command> [sub-command] [parameters]

Where:

  • C = Command prefix
  • D = Optional debug flag
  • <seq_number> = Sequence number for command tracking
  • <command> = Primary command word
  • [sub-command] = Optional sub-command
  • [parameters] = Command-specific parameters

Responses follow the format:

R<seq_number>|<result_code>|<data>|[debug_info]

Where:

  • R = Response prefix
  • <seq_number> = Matching sequence number from command
  • <result_code> = Result code (0 = success, non-zero = error)
  • <data> = Command-specific response data
  • [debug_info] = Optional debug information

Common Response Codes

Code Meaning
0 Success
50000001 Unable to get foundation receiver assignment
50000003 License check failed
50000004 Parameter error
50000005 Incorrect number or type of parameters
50000016 Malformed command
5000002C Incorrect number of parameters
50000032 Bad mode

Commands

spot add callsign=... rx_freq=...

Creates a new Spot on the radio

Syntax:

C<seq>|spot add callsign=<spot> rx_freq=<spot>

Parameters:

Parameter Description
<spot>
<spot>

Response Example:

R<seq>|0||

spot clear

Clear All Spots

Syntax:

C<seq>|spot clear

Response Example:

R<seq>|0||

spot remove ...

Removes a spot from the radio. Note that only upon the resulting status message from the radio will the SpotRemoved event fire from the Radio object.

Syntax:

C<seq>|spot remove <index>

Parameters:

Parameter Description
<index>

Response Example:

R<seq>|0||

spot set

Syntax:

C<seq>|spot set <index> <parameter>=<value>
Parameter Description
rx_freq The frequency to be used to place the Spot. If no TXFrequency is set, this is the assumed TX Frequency (simplex).
tx_freq (optional) This field would indicate a Split spot with a different transmit frequency than the RX frequency. When this field is blank, it is assumed to be a simplex Spot where the TX Frequency matches the RX Frequency. Note that triggering a Spot with this field set does not automatically create a Split Slice as of v2.3.x.
mode The Mode specified for the Spot. Note that this may not always be provided and may not map directly to a DSPMode (e.g. SSB, PSK31, etc)
callsign The Callsign to display for the Spot (dxcall in N1MM spot packet)
color (Optional). A color represented by hex. Typical format #AARRGGBB
background_color (Optional). A color represented by hex. Typical format #AARRGGBB
source A string used to identify from where the Spot came. For example, the source will be N1MM-[StationName] for spots that originate from N1MMSpot Ports.
spotter_callsign The callsign of the spotter as is often reported on telnet.
timestamp The timestamp (UTC) of the spot as reported by the original source
lifetime_seconds An expiration time. After this many seconds, the Spot will automatically be removed from the radio. Setting this property will reset the countdown timer. Warning: Because duplicate values are allowed to "reset" this timer, care should be taken in the client not to create a loop where an upstream PropertyChanged event triggers a downstream Property set call (which calls the radio, which generates a status message, which creates another PropertyChanged event...).
comment The Spot comment as provided by the original Spot source.
priority The integer (1:higher-5:lower) priority of the Spot perhaps due to multipliers, etc. Higher priority Spots will be shown lower on the Panadapter.
trigger_action The action for the radio to take when a Spot is triggered (clicked in SmartSDR). The supported actions today are "tune" and "none". The assumption is that a client that sets a Spot to "none" will likely be implementing their own functionality that tuning might interfere with.

Response Example:

R<seq>|0||

spot trigger ...

A parameterless version of the Spot Trigger

Syntax:

C<seq>|spot trigger <index>

Parameters:

Parameter Description
<index>

Response Example:

R<seq>|0||

spot trigger ... pan=0x...

Gets called when the Spot is interacted with (e.g. Clicked in SmartSDR) and could be called to simulate a Spot being Clicked.

Syntax:

C<seq>|spot trigger <index> pan=0x<pan>

Parameters:

Parameter Description
<index>
<pan>

Response Example:

R<seq>|0||

Clone this wiki locally