Control4 Shelly: Programming Changes Incorrectly. Events Fire incorrectly

Control4 Shelly: Programming Changes Incorrectly. Events Fire incorrectly

Problem

We have identified an issue with C4 Shelly Module NG drivers where the Events may fire incorrectly (in particular, when the controller is rebooted), or/and the programming appears to have changed to the wrong event / variable in Control4 Detective Suite. This issue affects any installation of the driver which was initially installed with a driver which is older than 20251027. 

Shelly 20260129 and Later Module NG drivers will show "Old / Legacy" in the Event Engine Property if the patch has not been applied. If the system is not affected, Event Engine will display "New / Enhanced"


Logs will likely not not show these events / Variable changes firing (and will possibly only show the conflicting Event / Variable). 

This is due to an undocumented conflict where Events and Variables may use the same ID range, causing unpredictable behavior (such as single / double click events firing on i4 during controller reboot). 


Solution

We have introduced a patch in version 20251028 (which ensures the ID's do not conflict). This patch is only applied to new installs where the first version installed was 20251028 or later. It is not applied retrospectively as doing so would break all programming (including those where the issue may not be a problem in practice). Control4 also does not provide us with the capability to move the existing programming to new variable ID's. 

To implement the patch: 
1. Ensure your composer has the latest version. Drivers => Add or Update Driver or Agent. This would also upgrade the driver on the controller.. You may need to migrate the licence to Chowmain Marketplace if your existing driver in the project is 20240807 or older
2. Delete the current Module NG drivers/devices (or the affected ones) from the Control4 project
3.  Re-add the affected Module NG driver. The first version installed MUST be 20251028.  Whilst the Variables and bindings will look the same as previously, the ID's will not clash