Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
en:dev:tailcontrol-command-protocol [2025/06/10 15:51] – [Unbinding] darkgrue | en:dev:tailcontrol-command-protocol [2025/06/21 14:27] (current) – [Conference Mode] darkgrue | ||
---|---|---|---|
Line 152: | Line 152: | ||
===== EarGear 2-only Commands ===== | ===== EarGear 2-only Commands ===== | ||
- | | **LISTENMODE** (or **LISTEN FULL**) | Starts Listen Mode; [[#Listen Mode|see below]], returns '' | + | | **LISTENMODE** (or **LISTEN FULL**) | Starts Listen Mode ([[#Listen Mode|see below]]), returns '' |
- | | **STOPLISTEN** (or **ENDLISTEN**) | Stops Listen Mode; [[#Listen Mode|see below]], returns '' | + | | **STOPLISTEN** (or **ENDLISTEN**) | Stops Listen Mode ([[#Listen Mode|see below]]), returns '' |
- | | **STOPTILT** (or **ENDTILTMODE**) | Stops Tilt Mode; [[#Tilt Mode|see below]], returns '' | + | | **STOPTILT** (or **ENDTILTMODE**) | Stops Tilt Mode ([[#Tilt Mode|see below]]), returns '' |
- | | **TILTMODE** (or **TILTMODE START**) | Starts Tilt Mode; [[#Tilt Mode|see below]], returns '' | + | | **TILTMODE** (or **TILTMODE START**) | Starts Tilt Mode ([[#Tilt Mode|see below]]), returns '' |
===== RGB LED Commands ===== | ===== RGB LED Commands ===== | ||
Line 168: | Line 168: | ||
| **RGBDMO** | **RGB** **DE**m**O**; | | **RGBDMO** | **RGB** **DE**m**O**; | ||
| **RGBTST** | **RGB** **TE**s**T**; | | **RGBTST** | **RGB** **TE**s**T**; | ||
+ | | **SETRGB** | **SET** **RGB** configuration and restart after 3 seconds; (e.g., '' | ||
+ | |||
===== Other Commands ===== | ===== Other Commands ===== | ||
- | | **AUTOMODE** | **AUTO**nomous **MO**de; [[# | + | | **AUTOMODE** | **AUTO**nomous **MO**de |
- | | **DSSP** | **D**irectly **S**et **S**ervo **P**osition; [[#Directly Set Servo Position|see below]], returns '' | + | | **DSSP** | **D**irectly **S**et **S**ervo **P**osition |
| **HWVER** | Returns **H**ard**W**are **VER**sion; | | **HWVER** | Returns **H**ard**W**are **VER**sion; | ||
| **PING** | Keepalive heartbeat (from application), | | **PING** | Keepalive heartbeat (from application), | ||
- | | **SETPUSSKEY** | **SET** **P**a**SSKEY**, | + | | **SETPUSSKEY** | **SET** **P**a**SSKEY**, |
| **SHUTDOWN** | **SHUT DOWN** the unit (will lose the BLE connection), | | **SHUTDOWN** | **SHUT DOWN** the unit (will lose the BLE connection), | ||
| **STOPAUTO** | **STOP AUTO**nomous Mode, returns '' | | **STOPAUTO** | **STOP AUTO**nomous Mode, returns '' | ||
| **STOPNPM** | **STOP** **N**o-**P**hone **M**ode and disables it in NVS configuration; | | **STOPNPM** | **STOP** **N**o-**P**hone **M**ode and disables it in NVS configuration; | ||
- | | **USERMOVE** | [[# | + | | **USERMOVE** | Set user-defined move ([[# |
- | | **STOPPUSSKEY** | **STOP** **P**a**SSKEY**, | + | | **STOPPUSSKEY** | **STOP** **P**a**SSKEY**, |
- | | **USERLEDS** | [[# | + | | **USERLEDS** | Set user-defined Glow Tip pattern ([[# |
| **VER** | Returns the firmware **VER**sion number; '' | | **VER** | Returns the firmware **VER**sion number; '' | ||
Line 187: | Line 189: | ||
| **BATT** | **BATT**ery percentage, returns the integer value of estimated battery capacity remaining | | **BATT** | **BATT**ery percentage, returns the integer value of estimated battery capacity remaining | ||
- | | **FORMATNVS** | **FORMAT** **NVS** (erase all contents of the default NVS partition, including BLE bonds) and reboot | | ||
- | | **OTA** | Starts firmware **O**ver **T**he **A**ir update process (e.g., '' | ||
| **READCONF** | **READ** running **CONF**iguration; | | **READCONF** | **READ** running **CONF**iguration; | ||
+ | | **WRITECONF** | **WRITE** **CONF**iguration to NVS and set running configuration to match (e.g., '' | ||
+ | | **SETDISCONNECTEDCOUNT** | **SET** BLE **DISCONNECTED** power off **COUNT**down parameter in NVS and running configuration (in minutes, '' | ||
+ | | **SETHOLDONSTOP** | **SET** servo **HOLD** is maintained when the servos **STOP** (maintains servo PWM when not moving, default for EarGear 2); returns '' | ||
+ | | **UNSETHOLDONSTOP** | **UNSET** servo **HOLD** when the servos **STOP** (servo PWM is dropped when not moving, default for tail-based devices); returns '' | ||
+ | | **SETHOME** | **SET** **HOME** position (0 through 8) for each servo (e.g., '' | ||
+ | | **OTA** | Starts firmware **O**ver **T**he **A**ir update process (e.g., '' | ||
+ | | **FORMATNVS** | **FORMAT** **NVS** (erase all contents of the default NVS partition, including BLE bonds) and reboot | | ||
| **READNVS** | **READ** **CONF**iguration from NVS; returns space-delimited configuration parameters stored in NVS (e.g., '' | | **READNVS** | **READ** **CONF**iguration from NVS; returns space-delimited configuration parameters stored in NVS (e.g., '' | ||
| **REBOOT** | **REBOOT** after 3 seconds, returns '' | | **REBOOT** | **REBOOT** after 3 seconds, returns '' | ||
- | | **RELEASEHOLDONSTOP** | **RELEASE** servo **HOLD** when the servos **STOP** (default for tail-based devices); returns '' | ||
- | | **SETHOLDONSTOP** | **SET** servo **HOLD** is maintained when the servos **STOP** (default for EarGear 2); returns '' | ||
- | | **SETHOME** | **SET** **HOME** position (0 through 8) for each servo (e.g., '' | ||
| **TASKU** | Prints to the hardware serial console the minimum amount of remaining stack space that was available to the task since the task started executing (high water mark), returns '' | | **TASKU** | Prints to the hardware serial console the minimum amount of remaining stack space that was available to the task since the task started executing (high water mark), returns '' | ||
- | | **WRITECONF** | **WRITE** **CONF**iguration to NVS and set running configuration to match (e.g., '' | ||
- | |||
===== Directly Set Servo Position ===== | ===== Directly Set Servo Position ===== | ||
Line 370: | Line 372: | ||
* **Replay Attack:** a type of network attack in which an attacker captures a valid network transmission and then retransmits it later. The main objective is to trick the system into accepting the retransmission of the data as legitimate. | * **Replay Attack:** a type of network attack in which an attacker captures a valid network transmission and then retransmits it later. The main objective is to trick the system into accepting the retransmission of the data as legitimate. | ||
+ | <WRAP round important 90%> | ||
+ | Do NOT attempt to use Conference Mode on TailControl firmware prior to 5.3.0, or a condition requiring repair of the control board can occur.</ | ||
==== Enabling Conference Mode (Pairing and Binding) ==== | ==== Enabling Conference Mode (Pairing and Binding) ==== | ||