94 signals your app.qml can call directly, unqualified β the same ones the
built-in Spirit System UI uses. Each is declared on the Spirit UI root window
and wired straight to the firmware. See Calling signals
for how that wiring works. Signals with no practical use from an app, or that only flow the
other direction (firmware β UI, for you to listen to with an onXxx: handler rather
than call), aren't included here.
Badges
Danger β destructive or safety-relevant; never wire to an
unconfirmed tap. Caution β administrative, network-dependent,
or otherwise not meant for routine app use. Note β a usage quirk
worth knowing before you rely on it.
No signals match your search.
Fullscreen mode
A root property, not a signal β grouped with the signals above because
it's the piece of display control most custom views end up needing.
fullscreen_modeboolNote
Hides the top status bar and bottom panel while true, giving your app the
full 800Γ480 canvas β useful for a maximized plot, graph, or video-style view. Set it
directly; there's no signal to call. Most views enable it as soon as they load:
Component.onCompleted: fullscreen_mode = true
Reset it on the way out
Nothing resets fullscreen_mode automatically when the pilot navigates away
from your app β the same way the built-in Log Viewer's fullscreen plot page does it,
clear it in Component.onDestruction so it doesn't leak into whatever screen
opens next:
Component.onDestruction: fullscreen_mode = false
1. Configuration
Global radio-wide settings, stored in the firmware's settings table by numeric slot.
signalCfgGet(int id)Note
Reads one byte from the global settings table at slot id. The result is
computed on the firmware side but never emitted back to QML β in practice, QML code reads
settings from the locally-cached cfg_array (via the cfgGet(id) helper
function) instead of this signal. Treat it as effectively non-functional for app use.
signalCfgSet(int id, int value)
Writes value (truncated to a byte) to global settings slot id,
persisted by the firmware. id is a numeric offset into the settings table (for
example, slot 20 is the owner name, slot 117 is the UI language, slot 216 is USB mode) β the
full offset table isn't part of this reference, so only call slots you've confirmed by
reading how the built-in settings screens use them.
signalLangSet(int val)
Sets the UI/system language to index val and persists it.
signalUSBMode(int val)
Sets the USB port mode (e.g. host / device / off) to val.
signalOwnerSet(string name)
Sets the transmitter's registered owner name (up to 31 bytes).
signalModeUpdate()Note
Recomputes the current operating mode from settings. No parameters; exact
scope beyond the name isn't confirmed from source alone.
2. Model & Channels
Managing model profiles and their per-channel setup.
signalModelList()
Saves any pending changes to the current model, then (re)loads the model list.
signalModelGet(int id)
Reports the currently loaded model's info back via onModelCur:
(id, name, type, image, theme) β id is logged but doesn't select a different
model.
signalModelSel(int id)
Switches the active model to id: saves the previous model's
pending changes, resets runtime state (timers, flight mode, ESC, stabi), loads and pushes the
new model to the radio, then reports its bind serial via onModelBound: (serial).
signalModelAdd(string name, int type)
Creates a new model named name of model type (plane /
heli / copter / general) and selects it.
signalModelDel(string name)
Deletes model name.
signalModelRen(string name)
Renames the currently-selected model to name.
signalModelCopy(string name)
Duplicates the current model under the new name name.
signalModelSet(string param, int value)
Generic per-model settings setter. param is a field name string
(e.g. "image", "theme", "timer_val_0", "options",
"mix_type_0", "trim_adjust", and many more β see the built-in Model
settings screens for the full set in context), value is the new value. Pushes the
whole model to the radio and marks it changed.
signalModelType()
Notifies that base model-type settings changed (wing/tail/engine/gear layout
for a plane) and recomputes the channel list accordingly.
signalModelBind(bool en)
Starts (en = true) or stops (en = false) RF bind
mode between the transmitter and a receiver.
signalModelSort(string name, int index)
Persists a new sort-order position index for model name
in the model list.
signalChanSet(int id, string param, int value)
Per-channel setter for channel id in the current flight mode.
param selects the field: "delay", "rev" (reverse),
"trim", "input", "dualrate_0"/"dualrate_1",
"limit_0"/"limit_1", "expo", "curve_type",
"curve_val_0"β"curve_val_8", "type" (channel type β also
re-detects the throttle channel), "mix_input_0"β"mix_input_2".
signalTrimMode()
Sends the current model's trim adjustment to the radio; starts a software
trim timer if no physical trim input is assigned.
3. Calibration & Binding
Stick/pot calibration. (RF binding is signalModelBind, above.)
signalCalibOn()
Starts stick/pot calibration mode on the radio hardware.
signalCalibOff()
Ends calibration mode.
4. Flight Modes
Named, switch-triggered configuration presets within a model.
signalFModeAdd(string name)
Adds a new flight mode named name to the current model.
signalFModeDel(string name)
Deletes flight mode name.
signalFModeRen(string oldn, string newn)
Renames flight mode oldn to newn.
signalFModeSet(int id, string param, int val)
Sets field param of flight mode id. Known fields:
"input" (trigger switch/input), "enpos" (enable threshold),
"priority", "delay" (transition delay, in centiseconds).
5. Spirit Controller (Stabi)
The onboard stabilization unit (gyro/flybarless controller) fitted to helis and fixed wings model types.
signalStabiSet(int param, int value)
Sets stabilization parameter param to value, sent
live to the stabilization unit. Depending on the parameter, it's stored either per-flight-mode
or in the model-type-specific stabi config. param indices are firmware-defined and
opaque outside the stabi config tables β confirm the index against a known-good screen before
calling. Parameter 251 is a special "factory reset" trigger for the stabi unit's
cached load state.
signalStabiFM(int param, bool en)
Enables/disables a per-flight-mode override for stabi parameter param.
signalStabiFMQuery(int param)
Queries stabi parameter param's value across all flight modes;
answered via the root window's stabiFMQuery(...) handler.
signalStabiEventGet(int addr)
Requests a stabilization-unit event-log entry at address addr.
signalStabiEventClear()
Clears the stabilization unit's event log.
6. ESC
The electronic speed controller's own configurable parameters (governor, timing, protection, β¦).
signalESCSet(int param, int value)
Sets ESC parameter param to value. Special case:
param == -1 instead initializes ESC parameter loading (needed for HobbyWing v5
ESCs) rather than writing a value.
7. Receiver
The RF receiver unit's configuration.
signalRxGet()
Requests the receiver's current hardware data/config from the radio.
signalRxSet(int param, int value)
Sets receiver parameter param to value.
signalRxSBUS()
Rebuilds the SBUS channel mapping for the current model. No-op for plane
model types.
8. Timers, Alarms & Reports
Countdown/countup timers, threshold alarms, and spoken telemetry "reports".
signalTimerReport(int id, int val)
Feeds timer id's current value/state into the alarm-evaluation
engine, so timer-based alarms can trigger from it.
signalAlarmAdd(int type, int opt, int op, int opt2, int repeat, int val)
Creates a new alarm of type with condition opt/op/opt2,
repeat behavior, and threshold val; refreshes the alarm list.
signalAlarmSet(string name, int opt, int op, int opt2, int repeat, int val)
Updates existing alarm name with new condition/threshold fields
(same meaning as signalAlarmAdd) and clears its "stopped" flag.
signalAlarmSave(string name)
Persists alarm name to storage and refreshes the alarm list.
signalAlarmDel(string name)
Deletes alarm name.
signalAlarmList()
(Re)loads the alarm list for the current model.
signalReportAdd(int type, int input, int enpos, int repeat, int opt)
Adds a spoken telemetry "report" of type with source
input (channel, or -1 for none), enable position enpos,
repeat behavior, and opt; refreshes the report list.
signalReportSet(int type, int input, int enpos, int repeat, int opt)
Updates the report matching type with new field values.
signalReportSave(int type)
Persists report type and refreshes the list.
signalReportDel(int type)
Deletes report type.
signalStatsGet()
Requests aggregated flight statistics for the current model (flight time,
max vibration, RPM min/max, capacity used, voltage/current min/max, peak power, max speed,
max altitude, β¦), delivered to the stats_array property.
9. Flight Logs
Recorded flight-data logs stored on the radio.
signalLogScan()
Scans storage for available flight log files.
signalLogOpen(string name)
Opens/loads log file name.
signalLogDel(string name)
Deletes log file name.
signalLogClean()
Deletes all flight logs.
signalLogGet(int type, int id, int from, int to)
Fetches a data series from the open log: type/id
select the channel to plot, from/to are a millisecond time range
within the log. Answered synchronously.
10. Wi-Fi
Wi-Fi radio control and saved networks.
signalWifiCheck()
Triggers a Wi-Fi network scan.
signalWifiChanged(int val)
Turns Wi-Fi on (val truthy) or off (falsy).
signalWifiSelect(string site, string pwd)
Saves credentials for network site and connects to it.
pwd may be an empty string for open networks.
signalWifiForget(string site)
Deletes saved credentials for site (or, if site is
empty, just refreshes the saved-network list).
11. Bluetooth
Bluetooth mode, device discovery, and the BT-joystick bridge.
signalBTMode(int val)Note
Sets Bluetooth mode to val. Special value 100
instead deletes the BT pairing/cache database β it's a "clear Bluetooth cache" command, not a
normal mode.
signalBTScan()
Scans for nearby Bluetooth devices; results arrive via the btList
handler. Requires Bluetooth to already be enabled.
signalBTConnect(string mac)Note
Records mac as the remote device to connect to. In this build,
the actual pairing/connect step is disabled, so this currently only stores the address.
signalBTJoy(int mode)Note
Controls the Bluetooth-joystick/gamepad bridge. mode == -1 is a
special "status poll" call rather than a real mode value β it reports current status and can
(re)start the bridge helper.
12. RF & Factory Test
Low-level radio-hardware and manufacturing/certification tooling. Most of this
group directly affects the live RF link and is not meant for routine app use.
signalRFTest(int mode)Danger
Puts the main RC RF chip into test mode mode, disrupting the
normal RC control link.
signalRFSpec()Caution
Requests RF spectrum-analysis data. Read-only diagnostic, but part of the
factory-test tooling family.
signalSimWiFi(bool en)Caution
Starts/stops a Wi-Fi simulation thread, used for QA testing without
real Wi-Fi hardware. Not meant for production app use.
13. Firmware & System
Device-wide operations: power, firmware updates, and system files. Several of
these are destructive or disruptive β see the badges.
signalPowerOff()Danger
Shuts the device down: stops all comm/network/server threads, powers off
connected accessory units, then powers off the unit itself. Never call without explicit,
deliberate user confirmation.
signalUIRestart()Danger
Restarts the UI application (applying any staged UI update first),
interrupting whatever's currently on screen.
signalFileScan(string dir)Caution
Scans directory dir through the general-purpose file manager
(used for browsing images/music/etc.). dir is a free-form path forwarded as-is β
validate it before passing anything derived from outside input.
15. Text-to-Speech
Generating and playing spoken voice clips.
signalTTSGen(string name, string text)
Synthesizes a voice clip named name from text.
Progress/result surfaces via the download_act property (1 = in
progress, 2 = success, -1 = failure).
signalTTSPlay(string name)
Plays previously-generated voice clip name.
signalTTSText(string name)
Retrieves the source text associated with voice clip name into
the tts_text property.
signalTTSCheck()
Checks TTS engine/voice availability; result lands in the
tts_check property (1 = ok, -1 = failed).
signalTTSDownload(bool clean)
Downloads TTS voice data; clean requests removing old data
first.
16. Media Player
Internet radio and local music playback.
signalMediaRadioList()
Loads the list of internet/media radio stations.
signalMediaPlay(string addr)
Plays media at addr (a station URL or local file reference).
signalMediaStop()
Stops media playback.
signalMediaState()
Requests the current media-player state (playing/paused, track info).
signalMediaDel(string name)
Deletes stored media entry name.
signalMusicList()
Lists files under the on-device Music directory; results arrive via
mediaMusicList.
17. GPS / GeoLink
The optional GeoLink GPS module's live map.
signalGPSMap(bool active)
Enables/disables live GPS map rendering. Call with true when
your app's map view becomes visible, and false when leaving it.
17. Web Server & Remote Control
The built-in HTTP server used for browser-based remote control and for Wave
Studio's own upload/deploy workflow.
signalWebSrv()
Starts the built-in web server. Publishes the resulting address via the
wifi_ip property.
signalWebSrvStop()
Requests the web server to stop.
signalWebSrvStat()
Polls whether the web server is currently running; updates the
websrv_stat/wifi_ip properties.
signalWebSrvControl(bool allow)Caution
Enables/disables remote touch input from a connected web client (this is
exactly the "Allow control" toggle behind Wave Studio's Screen-tab remote control). Enabling it
grants a network client interactive control of the device's touchscreen β don't turn it on
without the user knowing.
18. Images
Stored background/model images.
signalImageList()
Lists stored model/background images.
signalImageDel(int id)
Deletes image id.
19. Trainer & Model Sharing
Linking two transmitters for trainer mode, and sharing model profiles between
them.
signalTrainerSet(int mode)
Sets trainer-link mode (0, 1, or 2)
for the current model.
signalTrainerCheck(bool exit)
Checks trainer-link connection status; result lands in
trainer_status. exit requests tearing the link down as part of the
check.
signalTrainerSync(bool model_new)
Synchronizes model data over the trainer link; model_new
indicates whether the receiving side should treat it as a brand-new model.
signalMdlShareCheck(int mode)
Checks model-sharing connectivity/status for mode.
signalMdlShareSync()
Synchronizes/shares the current model with another device.
20. Apps
Listing, launching, installing, and configuring Wave Apps β including your
own. This is the same group of signals the on-device app drawer and Wave Studio's Applications tab
use.
signalAppsList()
Lists installed apps; results arrive via the appsList handler.
signalAppsExec(string name, bool binary)
Launches app name. If binary is false
and the app has an app.qml, it's pushed onto the shared StackView β
this is the exact mechanism your own app was loaded with, so it's also how one app could launch
another (or reload itself). If binary is true (or there's no
app.qml), the UI process restarts to hand off to a native binary instead.
signalAppsCfgLoad(string name)
Reads app name's persisted app.cfg settings file;
results arrive via appsCfgList. Use this to load your own app's saved settings β
pass your own app's name.
Writes/updates param = value in app
name's app.cfg file, for persisting your own app's settings. As with
signalAppsCfgLoad, name isn't automatically scoped to the calling app β
always pass your own app's name.
21. Sound & Haptics
Feedback: vibration motor, built-in UI sounds, and arbitrary audio playback.
signalVibePulse(int time)
Triggers a haptic vibration pulse lasting time milliseconds.
osSoundEffect(int id)
Plays a built-in UI sound effect, gated by the user's sound settings:
0 = keyboard click, 1 = value-picker tick, 2 = button
click, 3 = side-panel/back sound. Other ids are ignored. Rate-limited to 20ms
between triggers.
osSoundPlay(string path)
Plays an arbitrary audio file at path, non-blocking, with the
same 20ms rate-limiting as osSoundEffect.