ControlUp has deprecated the old Device Registration Codes across all tenants, requiring a transition to new codes for agent deployment. While new agent installations using the latest Device Registration Code proceed without issues, existing devices that were registered prior to the code expiration retain the old registration code in the Windows registry. This persistence causes a problem when these devices become inactive and are removed from ControlUp. Upon attempting to re-register, the ControlUp Agent reads the outdated, expired Device Registration Code from the registry, which leads to a registration failure.
The recommended approach to resolve this for existing devices differs from the process for new installations. The latest Agent Manager deployment automatically uses the new Device Registration Code for fresh agent installs; however, it does not automatically update the registration code already stored in the registry of existing agents. Therefore, device re-registration fails if the persisted old code is expired. There is no official migration tool provided by ControlUp to update this registry value across existing installations en masse. The key registry path involved is `HKLM\SOFTWARE\Avacee\SIP` and the relevant value is `DeviceRegistrationCode`.
For an immediate workaround, ControlUp acknowledges that updating the registry manually or via script on affected devices is effective. This involves stopping the SIP Agent service, updating the `DeviceRegistrationCode` registry value to the current valid code, and restarting the service. Given that agent version auto-updates are managed separately (either by ControlUp version control or via user-managed software deployment like SCCM or Intune), it is the administrator’s responsibility to ensure deployment tools push such remediation scripts or silent Agent Manager reinstalls outfitted with the new Device Registration Code to devices at scale.
In practice, many organizations use deployment platforms such as Intune or SCCM to run remediation scripts that overwrite the expired registration code in the registry of existing agent installations, thereby preventing registration failure without full reinstallation. This approach balances efficiency and scale, allowing smooth transition without requiring large-scale agent removal and fresh installation. Administrators should plan to deploy these registry updates proactively to avoid disruptions caused by automatic agent attempts to re-register post device inactivity cleanup.
For further details on Agent Manager deployment and registry settings, consult the ControlUp documentation at https://docs.controlup.com/.
Read the entire ‘How to Update Device Registration Codes for Existing ControlUp Agents After Code Expiration’ thread below:
A while ago, ControlUp communicated that the existing Device Registration Codes would be marked as expired across all tenants. This was communicated well in advance, so there was no issue on our side.
We updated our Agent Manager deployment accordingly and are now using the new Device Registration Code for new installations. The deployment itself is working correctly.
However, we have discovered an issue with existing devices.
It appears that the old Device Registration Code is still present in the registry on devices that were already installed and registered before the code was expired.
This becomes a problem when a device is removed from ControlUp due to inactivity. When the ControlUp Agent subsequently tries to register itself again, it still uses the old Device Registration Code from the registry. Since that code has now been blocked/expired, the agent can no longer register the device.
My questions:
What is the recommended way to update the Device Registration Code on existing devices?
Is there a supported method to update the registration code in the registry without having to reinstall the agent?
I noticed in the documentation that the latest version of Agent Manager should automatically update the Device Registration Code on existing installations.
Is Agent Manager automatically updated to the latest version? Or is updating Agent Manager something we need to handle ourselves through our software deployment solution?
If we need to deploy the latest Agent Manager ourselves, is there a recommended/supported way to do this at scale?
Does the latest Agent Manager actually update the registration code for already-installed agents, or does this only apply when deploying new agents?
At the moment, we have the new Device Registration Code correctly configured in our deployment, but we are concerned about existing devices that still have the expired code stored locally.
Hi Rico,
You’re reading this right. Updating your deployment only fixes new installs. Already-enrolled devices are fine until they need to register again: inactive removal, rebuild, reinstall, etc.
Then they’ll use whatever’s still in the registry, and if that’s the expired code, registration fails.
Quick answers:
• Existing enrolled devices → no action needed unless they have to re-register
• Registry update → not the official migration path, but it works. Code is at `HKLM\SOFTWARE\Avacee\SIP` → `DeviceRegistrationCode`. Stop SIP Agent, update, restart.
• AM auto-update → yes if you’re using ControlUp version control. If you manage versions yourself in SCCM/Intune, that’s on you
• Does latest AM update the code on existing boxes? → No. AM auto-update is for version only, not reg code
• Scale fix → silent AM reinstall with the new `DEVREGCODE`, or registry script across the fleet
thanks again! We will solve this by a Remediation script by Intune.
Continue reading and comment on the thread ‘How to Update Device Registration Codes for Existing ControlUp Agents After Code Expiration’. Not a member? Join Here!
Categories: All Archives, ControlUp Scripts & Triggers
