Skip to content

Commands

Simple reference for commands handled in src/core/commandhandler.cpp. Order and sections match that file.

Websockets for Player

Command(s) Action
toggle Toggle play/pause.
prev Play previous station/track.
next Play next station/track.
voldown, volumedown, volm, vol- Step volume down by configured step size.
volup, volumeup, volp, vol+ Step volume up by configured step size.
newmode Set config mode selection and request CHANGEMODE update. Blocked in HTTP/MQTT/Telnet.
balance Set balance (-16..16), apply to player, and notify clients.
treble Set treble (-16..16).
middle Set middle (-16..16).
bass Set bass (-16..16).
volume, vol Set absolute volume (clamped 0..VOLUME_SCALE).
turnoff Turn display off, stop playback, and preserve smartstart value.
turnon Turn display on, optionally resume smartstart playback.
burl, playurl Play direct stream URL (http/https).
sdpos Set SD playback position when in SD mode.
playstation, play Play station by playlist index (clamped to valid range).
shuffle Enable/disable SD shuffle; if enabled, advance to next entry.
start Start playback from last station.
stop Stop playback.
sleep Set sleep timer using for,after values.
mode Change playback mode: 0 = Radio/Web, 1 = SD Card, out-of-range values cycle modes (2 cycles in Telnet).
reset Reset runtime config state when cid is 0.
submitplaylist Stop playback before playlist submit flow.
submitplaylistdone Finalize playlist submit flow, reload best station target, and trigger MQTT playlist sync.

Hidden Websockets

Command(s) Action
getindex Request index payload to clients. Blocked in HTTP/MQTT/Telnet.
getactive Request active-state payload to clients. Blocked in HTTP/MQTT/Telnet.
clearspiffs Run allowlist-based SPIFFS cleanup and force play mode to web.

Options: Load Settings

Command(s) Action
getsystem Request system settings payload. Blocked in HTTP/MQTT/Telnet.
getscreen Request screen settings payload. Blocked in HTTP/MQTT/Telnet.
getlocale Request locale settings payload. Blocked in HTTP/MQTT/Telnet.
getcontrols Request controls settings payload. Blocked in HTTP/MQTT/Telnet.
getweather Request weather settings payload. Blocked in HTTP/MQTT/Telnet.
getmqtt Request MQTT settings payload. Blocked in HTTP/MQTT/Telnet.
getbattery Request battery settings payload. Blocked in HTTP/MQTT/Telnet.

Options: System

Command(s) Action
smartstart Enable/disable smartstart.
bufferbar Enable/disable the buffer bar on the display.
vumeter Enable/disable VU meter and refresh display state.
wifiscan Enable/disable best-RSSI WiFi scan behavior.
autoupdate Enable/disable auto update checks.
ehdp Enable/disable eHDP service.
ehdpname Set eHDP name and reinitialize eHDP.
softap Set soft AP delay setting.
mdnsname Set mDNS host name.
rebootmdns Reboot device after short delay.

Options: Battery

Command(s) Action
battref Calibrate battery reference voltage and refresh battery payload.
battrecalc Force battery recalculation and refresh battery payload.

Options: Screen

Command(s) Action
flipscreen Toggle display flip and redraw player view.
invertdisplay Toggle display inversion.
numplaylist Toggle numbered playlist display and redraw player view.
clock12 Toggle 12-hour clock display and refresh clock.
volumepage Toggle dedicated volume page behavior and refresh player view.
brightness, dim Set brightness (0..100), ensure screen-on state, clamp dimmed brightness if needed, and apply brightness.
screenon, dspon Turn display on/off and reset dimming state.
contrast Set contrast (0..100) and apply to display.
screensaverenabled Enable/disable idle screensaver behavior.
screensavertimeout Set idle screensaver timeout (5..65520).
screensaverblank Enable/disable idle screensaver blanking behavior.
screensaverplayingenabled Enable/disable playing screensaver behavior.
screensaverplayingtimeout Set playing screensaver timeout (1..1080).
screensaverplayingblank Enable/disable playing screensaver blanking behavior.
screensaverfull Enable/disable full time on the screensaver.
dimmingenabled Enable/disable idle dimming behavior.
dimmingtimeout Set idle dimming timeout (5..65520).
dimmingbrightness Set dimmed brightness (0..100, clamped to the current brightness setting).

Options: Controls

Command(s) Action
fliptouch Toggle touchscreen axis flip and apply touch config.
dbgtouch Enable/disable touch debug mode.
encacc Set encoder acceleration value.
oneclickswitching Toggle one-click playlist switching behavior.
irtlp Set IR tolerance value.

Options: Locale

Command(s) Action
locale_webui Update WebUI locale file asynchronously. Blocked in HTTP/MQTT/Telnet.
tz_name Set timezone display name.
tzposix Set POSIX timezone string and force time sync.
sntp1 Set primary SNTP server and force time sync.
sntp2 Set secondary SNTP server.
timeinterval Set time sync interval.

Options: Weather

Command(s) Action
wenable Enable/disable weather display and trigger weather refresh path.
wen_feelslike Toggle feels-like field in weather output string.
wen_humidity Toggle humidity field in weather output string.
wen_pressure Toggle pressure field in weather output string.
wen_wind Toggle wind field in weather output string.
wtempunit Toggle temperature unit mode.
wpressunit Toggle pressure unit mode.
wspeedunit Set wind speed unit string.
wapi Set weather provider API selector and force weather refresh.
wlang Set weather language and force weather refresh.
wkey Set weather key and refresh display mode.
winterval Set weather sync interval.
wlat Set weather latitude, reset elevation, force weather refresh.
wlon Set weather longitude, reset elevation, force weather refresh.

Options: MQTT

Only available when built with MQTT_ENABLE.

Command(s) Action
mqttenable Enable/disable MQTT and initialize MQTT client.
mqtthost Set MQTT host.
mqttport Set MQTT port.
mqttuser Set MQTT username.
mqttpass Set MQTT password.
mqtttopic Set MQTT topic prefix.

Options: Danger Zone

Command(s) Action
reboot, boot Reboot device immediately.
format Stop playback, format SPIFFS, reboot device.
reset Apply default settings reset flow by requested section/value.

IR Recorder

Only available when built with IR_PIN != 255.

Command(s) Action
irbtn Set IR recording index and update IR recording mode/state. Blocked in HTTP/MQTT/Telnet.
chkid Set IR check slot id. Blocked in HTTP/MQTT/Telnet.
irclr Clear selected IR slot value at active index. Blocked in HTTP/MQTT/Telnet.

Curated Playlists

Command(s) Action
loadindex Start background curated index fetch task. Blocked in HTTP/MQTT/Telnet.
loadplaylist Start background curated playlist fetch task. Blocked in HTTP/MQTT/Telnet.
curated_import Prepare curated import file for review and notify frontend. Blocked in HTTP/MQTT/Telnet.

Telnet Local Commands

Handled in src/core/telnet.cpp before commandhandler dispatch.

Command(s) Action
help Show a short list of basic telnet commands.
quit, bye Close the active Telnet client connection immediately (no confirmation text).

Syntax Notes

  • WebSocket command format: command=value.
  • HTTP command format: GET URL query params. Use a browser URL or curl GET for command calls (not POST for this path).
  • HTTP single-command examples: http://<radio-ip>/?toggle=1 and curl "http://<radio-ip>/?volume=80"
  • HTTP multi-param behavior: params are processed in URL order, each as a separate commandhandler dispatch.
  • HTTP multi-param example: http://<radio-ip>/?volume=70&treble=4&bass=-2
  • HTTP sleep behavior: sleep and after are merged into one sleep value before dispatch: sleep=for,after.
  • HTTP sleep examples: http://<radio-ip>/?sleep=30 and http://<radio-ip>/?sleep=30&after=5
  • MQTT and Telnet command formats: key=value, key value, key(value).
  • MQTT examples (topic command): payload toggle, payload volume=80, payload play 12, payload http://example.com/stream
  • MQTT supports raw URL payloads and maps them to burl.
  • Telnet connect example: telnet <radio-ip> 23
  • Telnet command examples: toggle, volume 80, play 12, sleep(30,5)
  • Telnet mode examples: mode 0 (Radio/Web), mode 1 (SD Card), mode 2 (cycle mode).
  • Telnet maps play with no value to start, and play with URL to burl.
  • Boolean-like values use numeric parsing (0 false, non-zero true in most handlers).
  • Numeric values are parsed with atoi-style integer conversion.
  • HTTP, MQTT, and Telnet share source policy blocking for certain commands because they are only used by websockets with WebUI