Changelog
All notable changes to Shelly GEN2 API Docs will be reflected here.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.14.4] 2023-05-10
Fixed
- PlusPlugUK Update default max power and max current limits
[0.14.3] 2023-04-20
Fixed
- PlusSmoke OTA update via cloud
Added
- PlusSmoke New hook type
smoke.alarm_off
[0.14.2] 2023-03-28
Fixed
- PlusWallDimmer Restore night mode in case of power loss
- PlusWallDimmer Looped trigger of
light.on
/light.off
webhooks
Local Embedded Web
- Improvement: PlusWallDimmer - Minor improvement on summary cards UI
- Bug fix: PlusWallDimmer, improve auto on/off timers animation
[0.14.1] 2023-03-08
Fixed
- PlusHT
Temperature
andHumidity
offsets are applied by twofold - PlusSmoke Disable
active_between
property inWebhooks
Changed
- Relax notifications rate limit for the
Input
component (80 notifications for a period of 60 seconds) - PlusPlugUK Update max power and max current limits
Local Embedded Web
- Use
zopfli
to compress the Web UI bundle - Minor bug fix of behavior for attached/detached inputs
[0.14.0] 2023-02-28
Added
EnergyMeter
Ability to calibrate a new CT from an existing one,EM.PhaseToPhaseCalib
andEM.PhaseToPhaseCalibReset
EnergyMeter
Addno_load
error- Notifications rate limit for the
Input
component MQTT Control
Additional topics which allow commands to be sent to the device as well as for publishing resultsBLE
Bluetooth observer
Fixed
HTTP.Request
cannot perform POST HTTPS request to specific sites
Changed
- Pro4PM Show channel name on display when set, if it contains latin characters only.
Local Embedded Web
- New feature: Add support for MQTT control
- New feature: Add support for RPC over MQTT
- New feature: Add support for bluetooth gateway
- New feature: Add phase to phase calibration for Pro3EM
- Improvement: Improve the diagram view for Pro3EM
[0.13.2] 2023-02-21
Fixed
- PlusHT Implement a full refresh every 24h (at night time) to clear any artefacts on ePaper display
- PlusHT Improve display update temperature threshold (change to 0.2C)
[0.13.1] 2023-02-09
Local Embedded Web
- Bug fix: Pro3EM Totals of active power, apparent power, current are
null
[0.13.0] 2023-02-09
Added
Switch
,Cover
Undervoltage protectionSwitch
Automatic recovery from overvoltage/undervoltage errorsInput
Triple push notification and webhookEMData
Perpetual total energy countersEnergyMeter
total_current
,total_act_power
,total_aprt_power
attributes in status
Fixed
Switch
Improve power measurement forPlus1PM
,PlugUS
,PlusPlugS
,PlusPlugIT
,PlusPlugUK
(fixes erroneous overvoltage errors; fixes parasitic energy reports when no load is connected)Switch
Optimize power measurement notificationsSwitch
,Cover
Reduce aggressiveness of overpower/overcurrent protectionSwitch
,Cover
Parasitic status change notifications on overvoltage, overpower and overcurrent errorsSwitch
,Light
,WiFi
Inaccurate*.SetConfig
error messagesWebhook
active_between
is interpreted incorrectly when period spawns across the next dayScript
Crashes when specific scripts are enabled to start on bootEMData
CSV data download HTTP params processingEMData
Missing MODBUS data for energy on phases B and C- PlusPlugS, PlusPlugUK Support dynamic LED transition ranges based on power limit settings
- PlusPlugS, PlusPlugUK, PlusPlugIT Update max power limit to match device prints
- PlusPlugS, PlusPlugUK Improve reaction time of LEDs in power mode
- PlusPlugS, PlusPlugUK Wrong brightness of network status indication
- PlusPlugS, PlusPlugUK Restore night mode in case of power loss
- PlusPlugS Ambiguous voltage shown when output is off
- PlugUS, PlusPlugIT Wrong LED indication after factory reset
- Plus2PM, Pro2PM Guarantee outputs don't turn on after factory reset from
cover
toswitch
profile - Pro4PM Display shows wrong time when not synced with NTP
- PlusSmoke Battery charge is not displayed
- PlusSmoke Missing
id
in status change notifications - PlusSmoke Does not factory reset with 5 button clicks from config mode
Local Embedded Web
- New device support: Added support for Plus Plug S
- New device support: Added support for Plus Plug IT
- New device support: Added support for Plus Plug UK
- New device support: Added support for Pro 3EM
- New feature: Added build version for local web UI
- New feature: Detect firmware update and show message asking for a refresh of the page
- New feature: Add
Undervoltage protection
setting for devices with power metering - New feature: Add settings for auto recovery for Over/under voltage
- New feature: Add RPC over UDP
- New feature: Add Actions: Webhook-Event for triplepush
- New feature: Add tripplepush input visualisation
- New feature: Add Pro3EM error handling visualisation
- New feature: Add support for Pro3EM actions
- Improvement: Create placeholder with prompt when no scripts
- Improvement: Saving script causes errors in some weird situations
- Improvement: IP and network mask are the only required settings for static IP
- Improvement: Add cover profile default route to home -> /cover/0/overview
- Improvement: Set
Action on power on
default value tooff
when is required - Bug fix: Ensure
Units
settings is only visible on devices which have units - Bug fix: Plus Addon - Non-blocking TypeError when adding peripheral
- Bug fix:
RangeError: Invalid time value
error when a device had issues with syncing time - Bug fix: Can't configure Outbound Web Socket with
TLS no verification
and awss://
link on version 0.12.0 - Bug fix: Fix the disappearing factory reset by input checkbox
- Bug fix: Fix showing incorrect component when changing index in URL
- Bug fix: Submenu's active bar is not correctly displayed
- Bug fix: Home is side navigation is not highlighted
- Bug fix: Empty actions placeholder contains wrong icon
- Bug fix: Fix incorrect Pro3EM sum of totals
- Bug fix: Fix timer freezing
- Minor: Home page URL handling for Plus/Pro2PM (Cover/Switch)
- Minor: Actions - Slider text improvement
[0.12.0] 2022-12-06
Added
- Sensor Add-On support for
Plus1
,Plus1PM
,Plus2PM
,PlusI4
,PlusI4DC
Voltmeter
componentInput
component: support digital and analog inputs- Webhook: new types
input.analog_change
,input.analog_measurement
,voltmeter.measurement
,temperature.measurement
,humidity.measurement
- Scripts: Base64 encoding and decoding
- Scripts: Access bluetooth functionality - device discovery
- Embedded web: new device UI. Add "Actions" - control local device functionality on component events
Fixed
- Cover:
Cover.SetConfig
error messages when arguments are out of range - Cover: calibration fails when
obstruction_detection.holdoff
exceeds open/close duration - ECO Mode fails to apply after WiFi reconnect
- Webhook: fix invocation of
http://localhost
/http://127.0.0.1
urls - Scripts: fix memory leak in
Shelly.emitEvent
Light
component: fix validation ofnight_mode.active_between
parameter
Changed
- PlusHT: Change
wakeup_period
to 2h
[0.11.4] 2022-10-24
Added
- Sys: Add event to announce scheduled soft restart
- Webhook: Add expanded context for evaluation of conditions and token replacement and configurable repeatability
- Temperature and Humidity: offset
- Cover: configurable idle hold-off period
Changed
- BLE: Updated configuration to include separate
enable
flag for the RPC service - Sys:
restart_required
property is no longer set totrue
when a restart is scheduled automatically - RPC handlers are disabled when a soft reboot is scheduled. Error code will be -109
- Webhook: Expand the context for evaluation of conditions and token replacement with device status, configuration and info
- Cover: last position is stored in non-volatile memory when movement ends
Fixed
- Duplicate notification for some types of events
- Cover: losing position when multiple GoToPosition commands are enqueued
- Increased CPU frequency limit in ECO Mode
- PlusHT: fixes in display behavior
- Cover: improve stability with ECO Mode
[0.11.3] 2022-10-14
Fixed
- Device instability caused by ZX synchronizer during flash operations
- Memory leak in scripts
[0.11.2] 2022-10-04
Changed
Pro1PM
,Pro2PM
,Pro4PM
,Plus2PM
: Synchronize output operations with voltage zero-cross
Fixed
- Off-by-1 error in some timezones
[0.11.1] 2022-09-09
Fixed
- Mis-provisioned
Plus1
,Plus1PM
devices
[0.11.0] 2022-08-30
Embedded/local web improvements:
- When editing a script, there is a “Snippets” section, which allows you to use snippets to write code faster
- On the Scripts (listing) page, there is a new Library button, that allows you to install scripts, directly from our GitHub page
- In the scripts library, you can change the library url for the specific device and load your own library
API Documentation improvements:
- Major restructuring of the documentation, so that most of the APIs are now easy to find in the new combined “Components and Services” section
- Request, responses are now reformatted to look better/are easier to use/understand
- Formatting of parameters, error codes and others are now rendered in tables to improve readability
- Each Component/Service page is now following similar page structure
- New components and their respective documentation had been added (see next)
Added
- client_id parameter in MQTT configuration
- discoverable property to System configuration
- Range extender
- Outbound Websocket component
- Webhooks and schedules revisions
- Webhooks: conditions; variable interpolation in URLs
- Status change notification for cfg_rev attribute
- KVS service
- Temperature component
- Humidity component
- DevicePower component
- Light component
- Sleep management for battery-operated devices
- Scripts: register handlers to incoming HTTP requests
- Scripts: broadcast events
- Scripts: synchronous access to configuration, status, device info, current script id
Changed
- MQTT: Change MQTT QOS level to 1
- MQTT: Retain LWT messages
- BLE: Require restart to apply BLE config changes
- Scripts: Error handling behavior changes to a more strict mode. Previously, errors during script execution only terminated the current context -- specific callback invokcation, for example. Now, errors encountered during script execution terminate the script and are reflected in its status.
- For battery-operated devices: deprecate
wakeup_period
property in System configuration (moved to System status)
Fixed
- Scripts: Script causing device crashes are detected and disabled automatically
- Scripts: Crash on MQTT unsubscribe when MQTT is disabled
- Power values oscillation between 0W and 1W on Plus1PM
- Crash when calling Shelly.Update without parameters
- Wrong aenergy values with low-power loads on Pro devices
- Validation of cid and event parameters of Webhook.Create, Webhook.Update
- Crash due to race-conditions between TCP errors and queued callbacks
- Poor device responsiveness during HTTPS webhooks execution
- Incorrect ACL when authenticaion is disabled
- Erroneous overpower events on
Plus1PM
andPlugUS
devices - MQTT: Ignored
topic_prefix
[0.10.3] 2022-06-17
Fixed
- Erroneous overvoltage events on
Plus1PM
devices
[0.10.2] 2022-05-31
Fixed
- Wrong power consumption values displayed on Pro4PM boot
- Incorrect behavior of reset button (all devices)
- Fix mis-provisioned
Plus1PM
devices
[0.10.1] 2022-03-30
Fixed
- Schedules around DST time shifts
[0.10.0] 2022-03-08
Added
- New HTTP.Request RPC method with support for
GET
,POST
,PUT
,HEAD
andDELETE
. - Cover component
- Only applicable for multi-profile devices: RPC methods Shelly.ListProfiles, Shelly.SetProfile;
profile
key in the responses of Sys.GetConfig, Shelly.GetDeviceInfo and /shelly - Support for
/ota
HTTP endpoint, for backward compatibility with Gen1 devices. - Embedded web now has UI for changing the display brightness on Pro4PM
- Device name (if set) is now shown everywhere in the UI of embedded web to ensure users, using multiple browser tabs, would know on which device they are making their changes
- Experimental support for Economy mode in the embedded web, decreasing power consumption of devices when latency is not critical. Since, this is still experimental, there is no support for changing it in the application yet. Enabling the option may have adverse effects and we do not recommend it for general usage. At this stage, it is intended for testing purposes and power consumption measurements.
Changed
- Switch: setting
power_limit
tonull
will apply the default overpower threshold instead of disabling overpower protection. - MQTT: do not show
pass
in response ofMQTT.GetConfig
- Change response format of Shelly.ListProfiles
- Improved Plus I4 UI in embedded web
Fixed
- Scripts: Fixed Status change notifications being duplicated as Event notifications.
- Webhooks: fixed decoding of URLs containing the
"
character. - Power factor measurement on Pro4PM.
- Initial/on start up power metering improvements
WiFi|Eth.SetConfig
- fixed ipv4mode invalid argument error message- Ethernet improvements that should fix some issues with devices hanging/crashing
- Embedded web - Wrong channel name was displayed on Plus I4
- Disable SMP (Symmetric Multiprocessing) on all devices
[0.9.3] 2022-01-17
Fixed
- Broken
aenergy
update inSwitch
component status
[0.9.2] 2022-01-14
Added
- Experimental support for Economy mode, decreasing power consumption of devices when latency is not critical. We do not include support for this feature in application and local web interface. Enabling the option may have adverse effects and we do not recommend it for general usage. At this stage, it is intended for testing purposes and power consumption measurements.
- Local web interface: Display the input state of the switch
- Local web interface: Explanation of power limit
- Ability to do OTA Update from url
Changed
Webhook.Update
can now modifycid
(component instance id) of an existing webhook.
Fixed
- Display negative values for
apower
andaеnergy
inSwitch
component status ssl_ca
andname
validation in Webhook.Updateunixtime
will benull
in Sys.GetStatus when not synced with NTP server- Ethernet IP address notification on connect
- Local web interface: Pro4PM issue with authentication menu
- Local web interface: Time in local webpage not correct
[0.9.1] 2021-12-03
Fixed
- Local web interface: Webhook, Script, Schedule list
- Local web interface: invert switch
- Local web interface: Input/Output-Setting & Invert Switch is missing
[0.9.0] 2021-12-01
Added
- MQTT support in scripts
- Limitations of the resources used by a script
- Option to set brightness of the Pro4PM's screen when it is idle through a new UI component
- Basic MQTT tutorial in the docs
- Placeholder notation in the docs
- Math API for scripts
- Initial release of Shelly Scripts
- User-configurable overvoltage (
voltage_limit
) and overcurrent (current_limit
) protection in Switch - Local web interface: selection of discovered WiFi APs
- Configuration revision number added to System Component configuration
- Set
active_between
parameter in Webhook.Create/Update with HH and MM, which are hours and minutes respectively, and can be specified with or without leading zeros in 24-hour format device.name
parameter in System Component configurationsntp.server
parameter in System Component configuration- Limit maximum number of simultaneous non-persistent RPC channels
Fixed
- Event and status handlers in scripts
- Plus1 crash when
Switch.SetConfig()
is invoked - MQTT topic prefix configuration shows the correct default value
- Local web interface: schedules time set, Pro4PM channel handling
Changed
- Overpower protection (
power_limit
) in Switch can be disabled - The response type of
Webhook
:Update
,Delete
,DeleteAll
; andSchedule
:Update
andDelete
methods is now empty (null
), in unison with other APIs.
[0.8.1] - 2021-09-21
Added
- Firmware version and device temperature in the screen UI of Pro4PM
- RPC communication over UDP
Fixed
/shelly
HTTP endpoint does not require authentication anymore- Bug causing Pro4PM's screen to crash when scrolling too fast in one direction
[0.8.0] - 2021-09-13
Added
- Ability to change the prefix of MQTT topics
- Ability to publish each component's status on a dedicated MQTT topic
status/<component:[id]>
- Debug log streams over UDP, MQTT and websocket
- New property
nameserver
in the configuration of the Ethernet component - Missing timezones
- New method HTTP.POST
- HTTP
headers
andbody
in the response of HTTP.GET - Changelog page :)
Removed
Fixed
- Sporadic temperature jumps in the readings of temperature sensors
- Voltage reported as 0 when Switch output is off
Changed
- Streamline payloads of event notifications: improve event descriptions, add reference to event origin
[0.7.0] - 2021-09-01
Added
- First public version released