How Migrate to Internal Webcore from User-Installed Webcore

The user-snstalled Webcore has not been updated in a while. I understand the internal Webcore is more actively maintained, so I want to move to that version, along with all my settings, devices, variables, and pistons, as painlessly as possible. How can I do that?

Outside of backing up all your pistons, and then restoring them to the new instance, I don't know of any way. Global variables do not get backed-up and they would have to be recreated.

It would be similar to when I moved Webcore from SmartThings to Hubitat. I restored all my pistons from backup, and recreated by global variables from screenshots I took beforehand.

The nice thing is that your device ID's are the same, unlike when I moved from SmartThings and I had to figure out what new device needed to be replaced in all the pistons, even though I had all my logic.

1 Like

I thought I remembered one of the developers saying there would be a tool or documented procedure posted to give a clear path to moving from the user installed to the internal. but it never seemed to materlize.

I have not yet been motivated to switch. Below are notes that I captured in mid-2024, for consideration only.

Summary

ADVANCED CONSIDERATIONS
• webCoRE global variable recreation (possibly categories also)
○ Evaluate which ones should be:
§ Deleted
§ Revised
§ Converted to HE global
• Aligning account identifier across multiple instances?
○ Consider logging out of each dashboard instance
Anecdotal recommendations
○ Copy global variables into a text file
○ Validate built-in app before deleting user version
○ Apply a distinct name to the built-in app during setup
○ Built-in app install - add the same devices as the user version
○ Add global variables with correct variable type
○ Pistons
§ Open a dashboard for User and Built-in versions
§ Pause in User version
§ Built-in Version
□ Resume
□ Edit/Save to engage triggers
□ Update category
□ Allow back-up

MIGRATION
1. Backup
a. From dashboard IDE
i. Backup Piston(s) - select all piston to migrate
ii. Password - not needed
2. Restore
a. From dashboard IDE
i. New Piston --> Import a piston from a backup file
ii. Select the backup file (password if used)
iii. Dialog box displays pistons and warnings
1) Maintain "safest" sorting
iv. Import and view
1) Adjust piston name or category if needed
2) Resume now or later
v. Continue Import until complete

The second link appears to state that you can run them both side by side. Might be worthwhile (if you want to transition) to install the built in and gradually move things over until the external is empty.

I did mine back when it first came out. I only had a few pistons for edge cases that RM couldn't handle. So, for me it was fairly easy to do in one shot.

This step-by-step guide looks really helpful. I’ve been holding off too — mostly waiting for that mythical “free afternoon” (or two) to appear so I can make the move. My biggest push to switch to the Hubitat webCoRE version? The external instance’s HPM timeout issue, which I still wrestle with today, meaning I’m stuck doing updates manually… every single time. Okay, stepping off my soapbox now. Let us know how it goes!

to be clear, there is no requirement to make this change.

You can if you wish, the two versions are generally in sync, or the user installed one may be ahead.

2 Likes

Maybe wrongly, but I thought the internal Webcore was more up-to-date. I can stay with the user version if that makes sense. I currently have:

  • @Field static final String sVER='v0.3.114.20220203'
    @Field static final String sHVER='v0.3.114.20240115_HE'
    @Field static final String sHVERSTR='v0.3.114.20240115_HE - September 19, 2025'

That is the last pushed update. In general webCoRE has been very stable, and there have not been lot of platform changes that required it to be changed.

You can see the running versions by going to:

HE console -> apps -> top level webcore instance

You will see some of those strings in the console

2 Likes