# Device/Turned on not available after migration to Homey Pro 2023

**URL:** <https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264>\
**Category:** Questions & Help\
**Created:** [September 21, 2025, 12:42pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264 "2025-09-21T12:42:55Z")\
**Posts on this page:** 17\
**Page:** 1

<div class="post-metadata">

**Author:** ![Pat\_M](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pat_m/32/56295_2.png) [@Pat\_M](https://community.homey.app/u/Pat_M)\
**Post date:** [September 21, 2025, 12:42pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/1 "2025-09-21T12:42:55Z")

</div>

Hi,

I just migrated from Homey Pro 2019 to Homey Pro 2023.

I have a few flows for Z-Wave plugs that writes to a database if the device has been turned on/off or the power has changed.

Power is not a problem but the “Turned on” variable for each device has stopped working and when I hover the error message instead of “true” or “false” it only says “common.x”. This worked before.

I can see all Z-Wave devices in Dev tools.

Thanks!

---

<div class="post-metadata">

**Author:** ![Peter\_Kawa](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_kawa/32/173848_2.png) [@Peter\_Kawa](https://community.homey.app/u/Peter_Kawa)\
**Post date:** [September 21, 2025, 2:16pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/2 "2025-09-21T14:16:13Z")

</div>

Is the pro 2019 turned off? Sounds obvious maybe, but it’s crucial.

Restart the Homey Pro 2023 if you didn’t already, preferrably by cutting the power for 10 minutes.

Now wait for a while for the mesh network to recover, give it half an hour or longer.

If necessary, perform a “Heal” @ developer tools.

If an individual device continues to malfunction: briefly disconnect it’s power, or perform the interview/repair again from the device menu.  
For battery powered devices, you’ll have to wake those up before interview/repair by pressing the pair button briefly, and keep pressing he pair button briefly every other 2s (ish) during the process.

---

<div class="post-metadata">

**Author:** ![Pat\_M](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pat_m/32/56295_2.png) [@Pat\_M](https://community.homey.app/u/Pat_M)\
**Post date:** [September 21, 2025, 2:25pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/3 "2025-09-21T14:25:36Z")

</div>

Hi,

Yes I turned if off before migration. I had the famous invalid node first, so I factory reset and then used a backup. Second time around the Z-Wave devices were looking good and I was able to turn them on/off. Currently only 2 devices are unknown in Dev tools. It is systematic across the board. ALL Z-Wave plugs do not have the “Turned on” parameter anymore regardless of App/Brand. Power is reported correctly. I have done a few PTP (15 min+) but the problem persists. I have power recycled some of the plugs and it does not help. I think heal would only help if it was chaos in Z-Wave network, but it looks good (apart from 2 devices) and all other devices have the Power parameter.

Thanks!

Edit: Just for test I could access other “Logic”-variables in other flows, like Playing for a Sonos device, so Logic (app) seem to work fine.

Also, the same problem with Turned On is present for Zigbee (Aqara and Nous) as well.

Edit 2: Looks like the Turned on is working in brand new flows for that device. I’m not eager to rewrite hundreds of flows though…

---

<div class="post-metadata">

**Author:** ![Pat\_M](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pat_m/32/56295_2.png) [@Pat\_M](https://community.homey.app/u/Pat_M)\
**Post date:** [September 21, 2025, 2:42pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/4 "2025-09-21T14:42:08Z")

</div>

It looks like this. If I use Turned on as a AND-logic card, the value is present. But if I use it in a (fake here) MySQL statement it fails:

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/5/4/547f15f0c18e45b15e301a56c388432ae952a576.png)

---

<div class="post-metadata">

**Author:** ![Pat\_M](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pat_m/32/56295_2.png) [@Pat\_M](https://community.homey.app/u/Pat_M)\
**Post date:** [September 21, 2025, 2:44pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/5 "2025-09-21T14:44:29Z")

</div>

Have Athom cancelled all real support? “As much as we’d love to help, we focus on general support and can’t assist with custom use-cases. For tailored advice, visit the Homey Community forum, where experienced users might be able to help.”

---

<div class="post-metadata">

**Author:** ![Dijker](https://avatars.discourse-cdn.com/v4/letter/d/b9bd4f/32.png) [@Dijker](https://community.homey.app/u/Dijker)\
**Post date:** [September 21, 2025, 3:07pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/6 "2025-09-21T15:07:26Z")

</div>

> [@Pat\_M](#):
>
> If I use Turned on as a AND-logic card, the value is present

Correct, so the logic is fine.

> [@Pat\_M](#):
>
> But if I use it in a (fake here) MySQL statement it fails

The card fails. But it is another app.

Pls write the tag to fe a timeline or log to show the real value. Then looj at how to fix the difference beteen 2019 and 2023 model Homey.

---

<div class="post-metadata">

**Author:** ![Pat\_M](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pat_m/32/56295_2.png) [@Pat\_M](https://community.homey.app/u/Pat_M)\
**Post date:** [September 21, 2025, 5:35pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/7 "2025-09-21T17:35:41Z")

</div>

Hi,

So in the flow, the logic card is still Yes (correct) but in the SQL and Log it is interpreted as a checkmark (and common.checkmark in the flow).

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/4/6/46148d6c2b387cd34d59ad29eff5f6b616cc7a79.png)

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/2/3/23d6e08fcb8ca1c728020fec2ff3ca72645f065b.png)

 ![image](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/1/2/1211b37741e4b59eae1afa8d60670f649e319095.png)

Thanks!

---

<div class="post-metadata">

**Author:** ![Peter\_Kawa](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_kawa/32/173848_2.png) [@Peter\_Kawa](https://community.homey.app/u/Peter_Kawa)\
**Post date:** [September 21, 2025, 9:41pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/8 "2025-09-21T21:41:00Z")

</div>

I’ve seen it before, the boolean states `true` and `false` (or `yes` and `no`) popping up as emojis ✔ and ❌ outside of boolean variables.

I think only Athom could explain what’s going on.  
I’m clueless why (on earth) and how these values turn into unusable emoji’s.

---

<div class="post-metadata">

**Author:** ![Pat\_M](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pat_m/32/56295_2.png) [@Pat\_M](https://community.homey.app/u/Pat_M)\
**Post date:** [September 22, 2025, 4:48am UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/9 "2025-09-22T04:48:02Z")

</div>

Yeah, I think you’re right, right now I have to recreate all flows that uses booleans in other card-types than direct Logic-cards. ☹

Thanks!

---

<div class="post-metadata">

**Author:** ![Pat\_M](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pat_m/32/56295_2.png) [@Pat\_M](https://community.homey.app/u/Pat_M)\
**Post date:** [September 22, 2025, 8:21am UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/10 "2025-09-22T08:21:25Z")

</div>

@Peter_Kawa Maybe a stupid question, but my old Homey is shut down and offline. Would it help if I removed it in the Homey app as well (the dropdown menu for choosing which Homey to work with)?

Thanks!

Edit: I also tried with brand new flow and brand new variable, still the same problem - so I cannot even recreate the flows but I’m stuck. ☹

---

<div class="post-metadata">

**Author:** ![Peter\_Kawa](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_kawa/32/173848_2.png) [@Peter\_Kawa](https://community.homey.app/u/Peter_Kawa)\
**Post date:** [September 22, 2025, 6:13pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/11 "2025-09-22T18:13:11Z")

</div>

> [@Pat\_M](#):
>
> Would it help if I removed it in the Homey app as well (the dropdown menu for choosing which Homey to work with)?

Hi Pat,  
I don’t believe stupid questions exist 😉

No, that shouldn’t influence anything.  
Powering off the ‘old’ Homey is just to make sure not two controllers are trying to control the same set of paired zigbee / z-wave devices.

> [@Pat\_M](#):
>
> Edit: I also tried with brand new flow and brand new variable, still the same problem - so I cannot even recreate the flows but I’m stuck. ☹

Maybe migrating to Better Logic variables is the workaround.  
Can you check if those DON’T use emoji’s in your flowcards?

If adding another app isn’t on your bucket list 🤪 :  
a good alternative can be using _numeric_ variables, and just use a `0` or a `1` as boolean values.

---

<div class="post-metadata">

**Author:** ![Pat\_M](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pat_m/32/56295_2.png) [@Pat\_M](https://community.homey.app/u/Pat_M)\
**Post date:** [September 23, 2025, 5:49am UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/12 "2025-09-23T05:49:03Z")

</div>

@Peter_Kawa, Yup I think you are right, right now it was either going full Better Logic or create fake bools in Logic (0/1) that can be used properly. I opted for Logic (not being so dependent on other apps), so I’m creating a like 100 _deviceX\_isTurnedOn_ right now. It will work but its tedious. Right now I’m most interested in if this is happening to everyone (firmware) or if it’s a bug from migration…

Do you have the same problem?

If you create an advanced flow, and put a

- **Then** -card, Simple (Sys) Log: Add \<_message_\> to the Timeline and the Log.  
Where \<_message_\> is a boolean variable you have since earlier.

Will it send **true/false** to the system log/timeline when run or send **crazy signs** (✓/⨯) instead?

Many thanks!

---

<div class="post-metadata">

**Author:** ![Peter\_Kawa](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_kawa/32/173848_2.png) [@Peter\_Kawa](https://community.homey.app/u/Peter_Kawa)\
**Post date:** [September 23, 2025, 3:07pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/13 "2025-09-23T15:07:52Z")

</div>

Hi Pat,

I’ve never encountered the issue with the emojis with both Pro 2019’s.  
I guess the Pro 2023 firmware is to blaim;

This tag is from an actual boolean variable;

 ![Screenshot_20250923_170442_Firefox](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/6/3/633e7b713ba63d102791546752ffe7bdb8b85a46.jpeg)

 ![Screenshot_20250923_165546_Firefox](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/d/6/d6ab106f15852f9466463a651840d54ff2ccfc92.jpeg)

---

<div class="post-metadata">

**Author:** ![robertklep](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/robertklep/32/160628_2.png) [@robertklep](https://community.homey.app/u/robertklep)\
**Post date:** [September 23, 2025, 3:13pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/14 "2025-09-23T15:13:41Z")

</div>

That’s what [this thread](https://community.homey.app/t/homey-does-replace-true-with/98850) is all about.

Between HP2019 and HP2023, Athom has changed the value that represents `true` and `false` in Boolean variables from the _strings_ `true/false` to the _symbols_ `✓/⨯`, breaking scripts and flows that depend on these values.

I asked about this inconsistency on Slack in December 2023 and was told it was already mentioned to Athom in August 2023, but since then it hasn’t been fixed and we can probably conclude that Athom simply doesn’t care about this.

---

<div class="post-metadata">

**Author:** ![Ruurd\_van\_der\_Noord](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/ruurd_van_der_noord/32/71093_2.png) [@Ruurd\_van\_der\_Noord](https://community.homey.app/u/Ruurd_van_der_Noord)\
**Post date:** [September 23, 2025, 3:48pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/15 "2025-09-23T15:48:47Z")

</div>

Yes, indeed Robert. However, solving this problem now requires a practical approach, which I believe is best achieved through a script that directly addresses the issue …?

edit#1: And, yes, it is Athom Homey Pro (Early 2023).

---

<div class="post-metadata">

**Author:** ![Pat\_M](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pat_m/32/56295_2.png) [@Pat\_M](https://community.homey.app/u/Pat_M)\
**Post date:** [September 23, 2025, 4:04pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/16 "2025-09-23T16:04:39Z")

</div>

Thanks @Peter_Kawa I assume the screenshot is from a Homey Pro 2019 right?

---

<div class="post-metadata">

**Author:** ![Peter\_Kawa](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_kawa/32/173848_2.png) [@Peter\_Kawa](https://community.homey.app/u/Peter_Kawa)\
**Post date:** [September 23, 2025, 4:56pm UTC](https://community.homey.app/t/device-turned-on-not-available-after-migration-to-homey-pro-2023/143264/17 "2025-09-23T16:56:40Z")

</div>

_Thy shallt not assume_, but your assumption is correct, Pat 🤪😉 It’s good to verify.

> [@Peter\_Kawa](#):
>
> both Pro 2019’s
