Ready for beta testers: Devices in Apilio

Every now and then we build something new that we feel has the potential to have a big impact on the user experience of Apilio… These days we are working on a project of this kind :sunglasses: : It’s the introduction of a “Device” element in Apilio!

Because Apilio was built around variables, “Devices” were not necessary for Apilio to work. Now with Tuya and Philips Hue devices and probably more becoming frequent guests, it’s time to implement a adequate place in Apilio.

It will take a while to implement the new concept and rewire many connections in the background. Furthermore, we want to listen to user feedback and shape the features and roadmap as we are working on it.
Therefore, we are developing and releasing new features around Devices in short iterations. Those of you who are interested to get a sneak peak are welcome to join our beta users group! Keep in mind that this is just a start and many features are yet to be done, but we have lot’s of ideas and can’t wait to see them in Apilio.

Just let us know in the the comments or via chat if you would like the beta tester badge and we will be happy to let you start using devices!


I’ll be happy to join the Beta group for Devices, as long as the rest of Apilio funcionality keeps working as usual! :wink:


Love to help out with this project


Great! @teknofilo and @Drivingforce you both have now the beta tester status and you should see the new menu item for devices.
The device list will be empty until you click the “Sync devices” button on the page. You can re-sync any time you want to reflect device changes in Apilio.

Thanks, I already tried it and it looks good!

1 Like

fully agree with @teknofilo, looking good, appears to work well so far

Hey @teknofilo and @Drivingforce a question for both of you:

I’ve been thinking about having “virtual devices” in Apilio that you can create from your own variables. So you could create for instance a device grouping two of your variables that you are updating via applets on IFTTT.

This would allow you to have a view of a “device” for any brand that is integrated with IFTTT, for example, you could have the temperature of any thermostat that is compatible with IFTTT, and see it as a device in Apilio.

It can also allow the creation of “fake virtual devices” that can group any of your variables. For example, you could create a device that groups all variables related to who is at home. Or you could create a device that provides stats for your social media profiles. Kind of like a LaMetric, but virtual. Anything that can be stored in a variable could then be turned into a device.

I know this might be a big jump in abstraction, but in a way that’s what Apilio variables are: an abstraction on top of devices in the real world, that allow you to store their state changes so you can use this information later.

:grinning_face_with_smiling_eyes: let me know what you think! Thanks


This sounds like a great idea,.
Just so i understood the this only works one way like a sensor. Or are you thinking that you could group switches together and turn them on and off as a device like we do with lights and switches via the Tuya/Hue integration?

1 Like

You are going one step further, my friend!! :slight_smile: For the sake of simplicity, I personally would keep the switches as individual devices. Controlling all of them with one command to one virtual device is an interesting idea, I would model that more like a command to a group of devices instead of one device but I see what you are thinking!


To elaborate a bit more, imagine one of those wireless tags:

For one tag for example, you could have two variables: one that tracks temperature and one that tracks humidity. You could then create a virtual device that combines both variables into that one device, hence grouping them. And that creates your wireless tag device in Apilio.


Yes I see that, like I have light sensors round the house but I only want the lights to come on/off in one room when both light sensors are above or below a certain threshold. So instead of having a logibloc with the individual device feeding information in I will have a virtual device that will true or false depending on the values feeding into it

1 Like

If I understand it right, that would not allow any new functionality in Apilio but just add simplicity in managing all the variables. Is that right? In that case, it is a nice addition for people like me who have dozens of variables…

Something I miss is the ability to create virtual devices in Smart Life that could be read from Apilio. That would allow to use Smart Life devices which have not been coded properly and thus can’t be used in Apilio.

For example, I have a Smart Life button with 3 actions (single, double and long press) but it is not visible in Apilio, so I can only use it in Smart Life. By creating 3 virtual “bulbs” in Smart Life, I could create 3 rules in Smart Life that turn on each virtual bulb depending on the press action, and then use those bulbs in Apìlio to trigger logic blocks.

I know it is something completely different from what you are saying, but I think that would be very useful if that could be created somehow, wouldn’t it?


Thanks @teknofilo !! Could you elaborate a bit more regarding how you wish you could manage your variables? Do you use tags for them? :woman_technologist: (takes more notes)

If I understand your example, you mean that as long as you had three variables mapped to the virtual “bulbs”, then you could group them in a device, then in Apilio you’d see when was the variable last updated, and, since it’s a variable, you can create conditions for them and run logic based on their status.

Can you not do this today, without the grouping? Can you describe in a bit more detail what you would setup in Smart Life? :thinking:

1 Like

I think I did not explain myself very well.

My problem today is the following: I have some SmartLife devices which work fine in Smart Life but do not work with Apilio (e.g. When you try to create a condition with them, you get an error:

This means that I cannot trigger a logicblock upon a single, double or long press of this button.

Now let’s say that you could add 3 virtual bulbs to Smart Life. Those virtual bulbs do not really exist, but are properly seen by Apilio as Tuya bulb devices.

Then I could create 3 automations in Smart Life app:

  • Single press of the button → Turn on virtual bulb A
  • Dobule press of the button → Turn on virtual bulb B
  • Long press of the button → Turn on virtual bulb C

And then I could create a condition in Apilio like this:

This condition would allow me to trigger a logic block when virtual bulb A is turned on, that is, when the button is single pressed.