[App][Cloud&Pro] Twinkly

Enter the world of smart lighting

App Store Page: Twinkly App for Homey | Homey
FAQ & Changelog: [App][Cloud&Pro] Twinkly

Description

Twinkly is the new generation connected LED light strings, controllable via smartphone. The most advanced lighting technology at your fingertips, ready to make your decorations truly magical.

Important note for existing users: Versions prior to v3.1.0 used an unsupported method of communication, which kept interfering with the original Twinkly app. From v3.1.0 on, those devices will still work but are now treated as legacy devices. It is highly recommended to pair them anew using the new cloud based driver as soon as possible.

Instructions

  • Make sure you have your Twinkly lights configured using the Twinkly smartphone app and that you have them connected to your home network.
  • Ensure that your devices’ firmware is up to date.
  • Add your Twinkly as device in Homey, it should be discovered by the pairing wizard.

Final Words

I took over the development of this app on 2021-03-02. Thanks a lot to @Phuturist who originally created this app. I will try my best to keep this app alive and stable, and if possible improve it in future.

8 Likes

Legacy Driver

  • Using the legacy driver may disrupt functionality of the original Twinkly App.
    This is a known problem caused by that unofficial api, which is not designed to have multiple clients at the same time. The latest version supports the official cloud api, which also is under continuous improvement. Please migrate your devices to the new driver as soon as possible.

FAQ

  • Q: I have a RGBW device but Homey does not seem to make use of the white channel?
  • A: This is correct. RGBW is currently not support by the Homey app. As a workaround you can create an effect replicating your color setting as a workaround. Proper direct RGBW support might come at a later time.
  • Q: Why am I getting a “499” error?
  • A: This is a known issue occuring randomly. Twinkly is working on a fix for this.
  • Q: Why am I getting a “504” error?
  • A: This is a known issue occuring randomly. But be aware that this most likely means that your device as stopped communicating with the Twinkly servers or is not powered. Usually you can resolve this by power cycling your Twinkly device. You can catch this error with advanced flows as well. Twinkly is working on a solution for this.
  • Q: Why am I getting a “Network request failed” error?
  • A: This is issue with Homey itself. A bug report is open at Athom about this. This error typically would hide a 499 or 504 error in the background but Homey does not properly propagate this error to the user. This behavior is seen in the Homey user interface as well as when testing flows. When running flows normally you will get the correct actual error from the flowcard error output.
  • Q: What does the error message “Could not get OAuth2Client” mean?
    A: If for any reason your authentication becomes invalidated, please go into one of the devices advanced settings and do a “Repair” from there. You might need to restart the app from the settings menu afterwards (“More…” → “Apps” → “Twinkly” → ‘little gear icon’)
  • Q: What is the reason for the device status “Device seems to be offline”?
    A: This message is issued by the Twinkly api itself. You can not do anything in the app or Homey to work around this. It literally means that your Twinkly is not connected to Twinkly’s api servers, for whatever reason this might happen. Doing a power cycle of your Twinkly will enforce an immediate reconnect. Please ensure your Twinkly device has internet access.
  • Q: Why is the select effect flowcard not showing for my device?
  • A: Selecting effects through the Twinkly api is not supported for Gen1 devices. Hence, if you have a Gen1 device or a group containing a Gen1 devices, the flowcard will not be available.

Changelog

v4.3.1 (in public test)

  • Fixed: App crash when Homey Premium Subscription is missing.

v4.3.0

  • Added: Trigger flowcard when the device changes the mode.
  • Added: Mode check condition flowcard.
  • Fixed: Improved app robustness against crashes for some Homey cloud only edge cases.
  • Removed: RGBW white channel support is removed for now as it requires a bigger rework.

v4.2.3 (unreleased)

  • Fixed: Effects flowcard filter is now working as expected.
  • Fixed: A race condition with capabilitiy changes. Gen1 device limitations are now correctly reflected in Homey.
  • Fixed: A connection timeout issue when chaning the brightness, resulting in strange values calucated from the Homey data.
  • Changed: It is now no longer required to explictly turn a device on before running the select effect flowcard.
  • Changed:: The commands api has been tweaked to be more tolerant to networking issues. Errors are reported by flowcards and the UI only if the automatic mitigation attempt failed.
  • Added: Dedicated support for RGBW devices. If a device or device group has RGBW devices only, Homey will now use the white channel to represent kelvin settings. If the device has no RGBW profile or the group does contain at least one device not having the RGBW profile, Homey will emulate kelvin as usual using the RGB spectrum.

v4.2.2 (unreleased)

  • Added: A choose random option to the effects selection flowcard.
  • Changed: The effects selection flowcard is now hidden from Gen1 devices and groups containing Gen1 devices.

v4.2.1 (unreleased)

  • Changed: Internal command processing has changed to mitigate errors when multiple commands are executed for the same device at once.

v4.2.0 (unreleased)

  • Added: Effect selection action flowcard is now available to retail devices as well.
  • Changed: API backend has been upgraded from polling to event based, massively reducing the traffic caused by the app.
  • Changed: Commands api is now using a managed command execution rather than a fire and forget strategy. This should actually populate any commands failing up to the UI and the flowcard system.

v4.1.0 (unreleased)

  • Added: Ability to select on device stored effects, using action flowcard, for Twinkly Pro devices.

v4.0.18

  • Fixed: A potential problem where the app could possibly crash due to the retrieved hue value being slightly out of range.
  • Updated: Athom OAuth library.

v4.0.16

  • Fixed: A potential problem where newly added grouped devices would not turn on.
  • Fixed: A rare race condition during device init could unexpectedly crash the app.
  • Fixed: Device capabilities are now limited to controllable capabilities correctly.
  • Fixed: An issue where the device status polling would not get disabled for devices which have been removed from Homey.
  • Fixed: A bug during status polling which would cause device infos not get updated if the device supports color temperature mode only.
  • Fixed: A potential bug when handling on/off versus dim value changes.
  • Fixed: A status info problem which would cause devices show available even if the API reports them as offline right after Homey device initialization.
  • Fixed: Toggling device back on now restores the last mode known by Homey.
  • Fixed: Device status in Homey should not bounce back to previous status anymore.
  • Fixed: Device on/off commands should be much more responsive now if toggled within a short period of time.
  • Updated: Improved unavailable error messages, now giving more information on what is wrong.
  • Updated: Homey oauth2 library.
  • Updated: The device unavailable status should now indicate when it is unavailable because of it being controlled by another Twinkly in group mode.

v4.0.12

  • Added: Support for the official Twinkly cloud api.
  • Added: Support for Homey Cloud.
  • Deprecation: This version deprecates the old lan protocol. Devices will still work but you should consider migrating to the cloud driver as soon as possible.

v3.0.6

  • Fixed: Dimming not working on SDKv3 version.
  • Fixed: Potential memory leaks when uninstalling/updating the app. Note: This only fixes the issue for upcoming updates/uninstalls. You might want to consider rebooting your Homey after this update.
  • Few minor under the hood changes to improve performance.

App ownership changed


v3.0.5 - 2021-02-22

  • Update to SDK3 (requires Homey firmware 5.x)
  • Added dimming capability
  • Minor improvements

v1.1.1 - 2019-12-18

Added an action card for switching demo mode on or off.

v1.1.0 - 2019-11-18

  • Autodiscovery has been added to make pairing easier
  • An action card for setting your Twinkly lights to a solid color has been added as extra functionality

v1.0.3 - 2019-02-07

  • FIX: improvements to pairing template for firmware 2.x
  • FIX: code refactoring in driver (replace callbacks with promises)

v1.0.2 - 2019-01-21

FIX: small fix to avoid app crashes when reconnecting after a disconnect

v1.0.1 - 2018-12-02

  • FIX: small improvement that might fix issues for some people

v1.0.0 - 2018-11-25

NEW: initial version

Nice! And just when Twinkly is found at the Black Friday sales. Guess I have to buy one (or a few) :slight_smile:

I’ll let everyone in Homey homies know about your app!

Just bought one. Will try when I get home. :slight_smile:

Wich version did you get? And can you tell me where? I’m looking for the smallest Twinkly version, but the only one I can find is at Intratuin at 50 euro’s (wich isnt’t that expensive, but Black friday discount would be nice haha)

Bought the 175 led. In sweden from kjell.com

when do you think this app is available in the appstore as a beta

Someone else that has problems with connecting to a local network. Have tried everything. Only the direct that works.

When Athom approves the app, that sometimes takes a day and sometimes a week. Out of my hands.

Yes, it’s buggy. Took me a while to get it connected as well. On Android you could try to purge the app settings and cache and try again.

Awesome, was thinking of starting an app for the Twinkly lights myself but am lacking time. Will try after Sinterklaas :slight_smile: Thanks!

Version 1.0.0 is published in the app store. It has been tested with firmware version 2.0.22-mqtt but it seems it does not work properly yet with firmware version 2.0.23-mqtt which is currently in beta. When this hits stable the app will need to be updated. So you might want to stick with 2.0.22-mqtt until the Homey app has been updated.

Got Twinkly Strings (225 leds) connected with static IP and firmware 2.0.22-mqtt but for some reason cannot get it to work with the Homey app, on/off doesnt do anything. It works fine through the Twinkly app.

Different LED strings seem to be using different commands. I need to figure out which LED string uses which command.

Anyone experiencing this issue can help me fix this by doing a CLI install of this Homey app version which contains extra debug logging, This should tell me what is going on. Just run this version from command line and first control the Twinkly with the smartphone app than try to control the Twinkly with my Homey app. The logging should show the status your Twinkly is in (something like off, effect or movie).

Please report your findings here.

1 Like

i do also have the 225 string and it works

Update: It seems to be working suddenly now (strings 225). :slight_smile:

Good to hear, would you consider updating your rating in the app store as well.

Done, thank you :slight_smile: !

Cool!
Just bought the 175 version. Need to test this before Christmas I guess :smile_cat:

v1.0.1 - 2018-12-02

  • FIX: small improvement that might fix issues for some people

Seeying the reactions here and on Github this improvement probably wont have much effect. If the Twinkly app is not working for you make sure you select a predefined effect within the Twinkly smartphone app, then close this smartphone app and pair your Twinkly with Homey. That should make sure you are able to turn in on and off.

I’ve used it for turning my lights on and off, but I’ve had problems using the Twinkly app to change effect. Been on support with Twinkly devs all Christmas trying to figure out what’s going on.
Seems to work fine now after deleting it from Homey…
I kept getting “Unauthorized” “NSErrorFailingURLStringKey”, “NSLocalizedDescription = Unauthorized”.

I’d like it to work with Homey, but for now I’m just cutting the power with a power strip instead.

I also have some problems with effects abruptly stopping and restarting when looping (especially the Glow effect and white LED).