ESPEasy Command Reference
Jump to navigation
Jump to search
Notice: The ESPEasy Command Reference page is transitioning to a new format. The revised page can be found here: readthedocs
ESP Easy offers a set of commands to control hardware devices and provide some basic local control using rules. There are several ways to launch commands on ESP Easy:
Protocol | Syntax | Extra information |
---|---|---|
HTTP | http://<espeasyip>/control?cmd=<command> | Send commands over the HTTP protocol. |
MQTT | <MQTT subscribe template>/cmd with payload: <command> | Send commands over the MQTT protocol. As of current status this is obeyed only for the first controller in the list. |
Serial (TTL) | <command> | Send commands using serial (RX/TX). Just type the <command> |
UDP | SendTo <unit nr>, <command> | Send commands from one ESP Easy unit to another. Setup UDP peer-2-peer first. |
Rules | <command> | Internally within ESP Easy. Just enter the <command> within an event block or conditional block. |
Commands are divided into several classes:
Internal - Can be run from serial and rules engine Rules - Can be run from serial and rules engine Plugin - Can be run from serial, rules engine, HTTP, MQTT Special - This can be used from any source
If you want to use internal or rules commands using HTTP/MQTT, setup an event within the rules section and remotely launch the "event" command.
Command | Class | Purpose | Syntax |
---|---|---|---|
Debug | Internal | Change Serial port debug level | Debug <1-4> |
Delay | Rules | Delay rule processing | Delay <delay in milliSeconds> |
Event | Special | Create an event, it's possible to send a float value along as well. | event,<eventName> event,<eventName>=<eventValue> |
GPIO | Plugin | Direct control of output pins | See:GPIO |
Status | Plugin | Get a status set by GPIO/PWM/Servo command. | Status,GPIO,<pin number> |
IP | Internal | Change IP address | IP <IP address> |
LongPulse | Plugin | Direct pulse control of output pins | See:GPIO |
LongPulse_mS | Plugin | Direct pulse control of output pins, same as above but using mSeconds instead of Seconds. | See:GPIO |
Name | Internal | Set the name of the unit | Name <new name> |
Password | Internal | Set the password of the unit | Password <new password> |
Pulse | Plugin | Direct pulse control of output pins | See:GPIO |
Publish | Rules | Send command using MQTT broker service | Publish <topic>, <value> |
PWM | Plugin | Direct PWM control of output pins | See:GPIO |
Reboot | Internal | Reboot the ESP | Reboot |
Reset | Internal | Reset config to factory default. Caution, all settings will be lost! | Reset |
ResetFlashWriteCounter | Internal | Reset flash write to zero. | ResetFlashWriteCounter |
Rules | Internal | Rules enabled (1) or rules disabled (0) | Rules,<value> |
Tone | Plugin | Play tone via speaker or piezo | See:Buzzer (RTTTL) |
Rtttl | Plugin | Play melody via speaker or piezo | See:Buzzer (RTTTL) |
Save | Internal | Save config to persistent flash memory | Save |
SendTo | Rules | Send command to other ESP (using UDP) | SendTo <unit nr>, <command> |
SendToHTTP | Rules | Send command to other network device using HTTP. Example for domain: SendToHTTP temperatur.nu,80,/rapportera.php?hash=123abc456&t=[temp2#out] |
SendToHTTP <IP address>, <Portnumber>, <command> SendToHTTP <domain>, <Portnumber>, </url> |
SendToUDP | Rules | Send command to other network device using UDP | SendToUDP <IP address>, <Portnumber>, <command> |
Servo | Plugin | Direct control of servo motors | See:GPIO
Example for MQTT: <MQTT subscribe template>/cmd Servo 1 0 120 |
Settings | Internal | Show settings on serial terminal | Settings |
TaskClear | Internal | Delete the given task/device | TaskClear,<task/device nr> |
TaskClearAll | Internal | Delete ALL task/device | TaskClearAll |
TaskRun | Internal | Run/excecute the given task/device, use to manually force an update/read of the task. | TaskRun,<task/device nr> |
TaskValueSet | Rules | Set values on a Dummy Task device | TaskValueSet,<task/device nr>,<value nr>,<value/formula> |
TimerSet | Rules | Start a timed event | TimerSet,<timernr>,<timeInSeconds> |
Unit | Internal | Set the unit number | Unit <unit number> |
WifiAPKey | Internal | Change AP WPA key | WifiAPKey <WPA key> |
WifiAPMode | Internal | Force the unit into AP mode. | WifiAPMode |
WifiConnect | Internal | Connect to configured wireless network | WifiConnect |
WifiDisconnect | Internal | Disconnect from wireless network | WifiDisconnect |
WifiKey | Internal | Change WPA key for primary WiFi | WifiKey <Wifi WPA key> |
WifiKey2 | Internal | Change WPA key for secondary WiFi | WifiKey2 <Wifi WPA key> |
WifiScan | Internal | Scan Wireless networks | WifiScan |
WifiSSID | Internal | Change SSID to connect as primary WiFi | WifiSSID <SSID> |
WifiSSID2 | Internal | Change SSID to connect as secondry WiFi | WifiSSID2 <SSID> |
Raw list of commands
WARNING
Some of these commands below are not meant to be used by end users, they might do harm to your system if used wrongly. This list is meant to be a reference list for developers and power users.
event [_C005.ino] %valname% [_C005.ino] (variable) %value% [_C008.ino] (variable) email [_N001_Email.ino] buzzer [_N002_Buzzer.ino] pinstate [_P001_Switch.ino] gpio [_P001_Switch.ino] pwm [_P001_Switch.ino] pulse [_P001_Switch.ino] longpulse [_P001_Switch.ino] longpulse_ms [_P001_Switch.ino] servo [_P001_Switch.ino] status [_P001_Switch.ino] monitor [_P001_Switch.ino] inputswitchstate [_P001_Switch.ino] rtttl [_P001_Switch.ino] tone [_P001_Switch.ino] mcpgpio [_P009_MCP.ino] mcppulse [_P009_MCP.ino] mcplongpulse [_P009_MCP.ino] extgpio [_P011_PME.ino] extpwm [_P011_PME.ino] extpulse [_P011_PME.ino] extlongpulse [_P011_PME.ino] LCDCMD [_P012_LCD.ino] Off [_P012_LCD.ino] Clear [_P012_LCD.ino] pcfgpio [_P019_PCF8574.ino] pcfpulse [_P019_PCF8574.ino] pcflongpulse [_P019_PCF8574.ino] serialsend [_P020_Ser2Net.ino] setlevel [_P021_Level.ino] getlevel [_P021_Level.ino] pcapwm [_P022_PCA9685.ino] pcafrq [_P022_PCA9685.ino] OLEDCMD [_P023_OLED.ino] IRSEND [_P035_IRTX.ino] RAW [_P035_IRTX.ino] NEC [_P035_IRTX.ino] JVC [_P035_IRTX.ino] RC5 [_P035_IRTX.ino] RC6 [_P035_IRTX.ino] SAMSUNG [_P035_IRTX.ino] SONY [_P035_IRTX.ino] PANASONIC [_P035_IRTX.ino] PIONEER [_P035_IRTX.ino] OLEDFRAMEDCMD [_P036_FrameOLED.ino] Low [_P036_FrameOLED.ino] High [_P036_FrameOLED.ino] NeoPixel [_P038_NeoPixel.ino] NeoPixelAll [_P038_NeoPixel.ino] NeoPixelLine [_P038_NeoPixel.ino] NeoClockColor [_P041_NeoClock.ino] NeoTestAll [_P041_NeoClock.ino] NeoTestLoop [_P041_NeoClock.ino] MotorShieldCMD [_P048_Motorshield_v2.ino] DCMotor [_P048_Motorshield_v2.ino] Forward [_P048_Motorshield_v2.ino] Backward [_P048_Motorshield_v2.ino] Release [_P048_Motorshield_v2.ino] Stepper [_P048_Motorshield_v2.ino] SINGLE [_P048_Motorshield_v2.ino] DOUBLE [_P048_Motorshield_v2.ino] INTERLEAVE [_P048_Motorshield_v2.ino] MICROSTEP [_P048_Motorshield_v2.ino] mhzcalibratezero [_P049_MHZ19.ino] mhzreset [_P049_MHZ19.ino] mhzabcenable [_P049_MHZ19.ino] mhzabcdisable [_P049_MHZ19.ino] mhzmeasurementrange1000 [_P049_MHZ19.ino] mhzmeasurementrange2000 [_P049_MHZ19.ino] mhzmeasurementrange3000 [_P049_MHZ19.ino] mhzmeasurementrange5000 [_P049_MHZ19.ino] senseair_setrelay [_P052_SenseAir.ino] senseair_setABCperiod [_P052_SenseAir.ino] dmx [_P054_DMX512.ino] chime [_P055_Chiming.ino] chimeplay [_P055_Chiming.ino] chimesave [_P055_Chiming.ino] mprint [_P057_HT16K33_LED.ino] mbr [_P057_HT16K33_LED.ino] mnum [_P057_HT16K33_LED.ino] encwrite [_P059_Encoder.ino] stop [_P065_DRF0299_MP3.ino] vol [_P065_DRF0299_MP3.ino] eq [_P065_DRF0299_MP3.ino] tare [_P067_HX711_Load_Cell.ino] 7dn [_P073_7DGT.ino] 7dt [_P073_7DGT.ino] 7don [_P073_7DGT.ino] 7doff [_P073_7DGT.ino] 7db [_P073_7DGT.ino] NEXTION [_P075_Nextion.ino] hlwreset [_P076_HLW8012.ino] hlwcalibrate [_P076_HLW8012.ino] dothis [_Pxxx_PluginTemplate.ino] accessinfo [Command.ino] background [Command.ino] blynkget [Command.ino] build [Command.ino] clearaccessblock [Command.ino] clearrtcram [Command.ino] config [Command.ino] debug [Command.ino] delay [Command.ino] deepsleep [Command.ino] erase [Command.ino] executerules [Command.ino] i2cscanner [Command.ino] ip [Command.ino] logentry [Command.ino] lowmem [Command.ino] malloc [Command.ino] meminfo [Command.ino] notify [Command.ino] nosleep [Command.ino] password [Command.ino] publish [Command.ino] reboot [Command.ino] restart [Command.ino] resetflashwritecounter [Command.ino] sdcard [Command.ino] sdremove [Command.ino] sysload [Command.ino] sendto [Command.ino] sendtohttp [Command.ino] sendtoudp [Command.ino] serialfloat [Command.ino] settings [Command.ino] taskclear [Command.ino] taskclearall [Command.ino] taskrun [Command.ino] taskvalueset [Command.ino] taskvaluesetandrun [Command.ino] timerset [Command.ino] timerpause [Command.ino] timerresume [Command.ino] udptest [Command.ino] unit [Command.ino] wdconfig [Command.ino] wdread [Command.ino] wifiapmode [Command.ino] wificonnect [Command.ino] wifidisconnect [Command.ino] wifikey2 [Command.ino] wifissid2 [Command.ino] wifiscan [Command.ino] Rules#TimerPause= [Command.ino] (event) Rules#TimerResume= [Command.ino] (event) System#Wake [ESPEasy.ino] (event) System#Boot [ESPEasy.ino] (event) System#Sleep [ESPEasy.ino] (event) %pvalue% [ESPEasy.ino] (variable) WiFi#ChangedAccesspoint [ESPEasyWifi.ino] (event) WiFi#Disconnected [ESPEasyWifi.ino] (event) WiFi#Connected [ESPEasyWifi.ino] (event) Rules#Timer= [Misc.ino] (event) %eventvalue% [Misc.ino] (variable) %vcc% [StringConverter.ino] (variable) %SP% [StringConverter.ino] (variable) %ip4% [StringConverter.ino] (variable) %ip% [StringConverter.ino] (variable) %rssi% [StringConverter.ino] (variable) %ssid% [StringConverter.ino] (variable) %bssid% [StringConverter.ino] (variable) %wi_ch% [StringConverter.ino] (variable) %unit% [StringConverter.ino] (variable) %mac% [StringConverter.ino] (variable) %mac_int% [StringConverter.ino] (variable) %sysload% [StringConverter.ino] (plugin name) %sysheap% [StringConverter.ino] (variable) %systm_hm% [StringConverter.ino] (variable) %systm_hm_am% [StringConverter.ino] (variable) %systime% [StringConverter.ino] (variable) %systime_am% [StringConverter.ino] (variable) %sysname% [StringConverter.ino] (variable) %syshour% [StringConverter.ino] (variable) %sysmin% [StringConverter.ino] (variable) %syssec% [StringConverter.ino] (variable) %syssec_d% [StringConverter.ino] (variable) %sysday% [StringConverter.ino] (variable) %sysmonth% [StringConverter.ino] (variable) %sysyear% [StringConverter.ino] (variable) %sysyears% [StringConverter.ino] (variable) %sysweekday% [StringConverter.ino] (variable) %sysweekday_s% [StringConverter.ino] (variable) %lcltime% [StringConverter.ino] (variable) %lcltime_am% [StringConverter.ino] (variable) %uptime% [StringConverter.ino] (variable) %unixtime% [StringConverter.ino] (variable) %tskname% [StringConverter.ino] (variable) %vname1% [StringConverter.ino] (plugin name) %vname2% [StringConverter.ino] (variable) %vname3% [StringConverter.ino] (variable) %vname4% [StringConverter.ino] (variable) %id% [StringConverter.ino] (variable) %val1% [StringConverter.ino] (plugin name) %val2% [StringConverter.ino] (variable) %val3% [StringConverter.ino] (variable) %val4% [StringConverter.ino] (variable) %c_w_dir% [StringConverter.ino] (plugin name) %c_c2f% [StringConverter.ino] (variable) %c_ms2Bft% [StringConverter.ino] (variable) %c_cm2imp% [StringConverter.ino] (variable) %c_mm2imp% [StringConverter.ino] (variable) %c_m2day% [StringConverter.ino] (variable) %c_m2dh% [StringConverter.ino] (variable) %c_m2dhm% [StringConverter.ino] (variable) %c_s2dhms% [StringConverter.ino] (variable) Clock#Time= [TimeESPeasy.ino] (event) Time#Initialized [TimeESPeasy.ino] (event) Time#Set [TimeESPeasy.ino] (event) Login#Failed [WebServer.ino] (event)