Costco Feit Strip Light

Hello,

Anyone tinkered with the Costco Feit Strip Light ?

https://www.costco.com/feit-electric-wi-fi-smart-16’-led-strip-light.product.100692314.html

I saw those as well. Was hoping they’d work with HA somehow.

I didn’t see an integration for it…

I got the FEIT Strip Lights working with Local Tuya.
The light strip is exposed in HA as two entities: switch & light.
The switch turns it on & off (duh!)
The light entity controls the brightness (white only).
This is after about 2 days of exploration.
There are more attributes available for setting colors & scenes, but
I don’t think Local Tuya has some of this implemented yet.

Here’s a brief overview of what I did to get them to work:

Tuya IoT Project to get local_key

1.  Sign up as Tuya IoT developer to obtain the local_key required for local control. There are several
    good write-ups on how to do this. I can dig up some links if you need them
2.  Use SmartLife app to get the device set up in a project you define using your IoT Developer account
3.  Install Local Tuya custom integration using HACS (lots of videos on how to do this)
4.  You will need the local_key & the IP address when you install the integration.
     Choose sw version 3.3
5.  The tricky part is defining the entities and attributes based on the so-called DPs
     (Data Points in the parlance) that Local Tuya exposes

JSON data capture

I found it useful to download the JSON information displayed in the IoT project for the device you set up, because it defines the expected values in the device features.

For example, here is my JSON (some entries obscured):

  "result": {
    "active_time": 1638844555,
    "category": "dd",
    "category_name": "Strip Lights",
    "create_time": 1626904098,
    "gateway_id": "",
    "icon": "smart/icon/ay1517349698958w8yNe/e8cac59162d9a1aff85730378ecfa738.png",
    "id": "abc123abc123abc123abc1",
    "ip": "--.---.---.---",
    "lat": "--.----",
    "local_key": "321xyz321xyz321x",
    "lon": "---.----",
    "model": "LST04-WBR-BK WB智能带灯(feit)",
    "name": "Strip Light",
    "online": true,
    "owner_id": "xxxxxxx",
    "product_id": "ozvljhfjwgachved",
    "product_name": "Strip Light",
    "sub": false,
    "time_zone": "-06:00",
    "update_time": 1638844577,
    "uuid": "xxxxxxxxxxxxxxxx"
  }

When you are in the IoT project, use the API Explorer to get “Device Details”.
Submit the device ID to get this:

  "result": {
    "category": "dd",
    "functions": [
      {
        "code": "switch_led",
        "desc": "{}",
        "name": "开关",
        "type": "Boolean",
        "values": "{}"
      },
      {
        "code": "work_mode",
        "desc": "{\"range\":[\"white\",\"colour\",\"scene\",\"music\"]}",
        "name": "模式",
        "type": "Enum",
        "values": "{\"range\":[\"white\",\"colour\",\"scene\",\"music\"]}"
      },
      {
        "code": "bright_value",
        "desc": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}",
        "name": "亮度值",
        "type": "Integer",
        "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}"
      },
      {
        "code": "colour_data",
        "desc": "{}",
        "name": "彩光",
        "type": "Json",
        "values": "{}"
      },
      {
        "code": "scene_data",
        "desc": "{}",
        "name": "场景",
        "type": "Json",
        "values": "{}"
      },
      {
        "code": "countdown",
        "desc": "{\"min\":0,\"max\":86400,\"scale\":0,\"step\":1}",
        "name": "倒计时剩余时间",
        "type": "Integer",
        "values": "{\"min\":0,\"max\":86400,\"scale\":0,\"step\":1}"
      },
      {
        "code": "music_data",
        "desc": "{}",
        "name": "音乐灯",
        "type": "Json",
        "values": "{}"
      },
      {
        "code": "control_data",
        "desc": "{}",
        "name": "调节",
        "type": "Json",
        "values": "{}"
      }
    ]
  }

Mapping JSON data to Local Tuya Custom Integration

Although these JSON entries aren’t numbered, I found that they map to the Local Tuya DPs.
The Local Tuya rep does a good job of explaining this terminology.
The task becomes one of finding corresponding HA attributes that match these entries.
After some trial & error, here’s what I have mapped for the FEIT strip lights:

DP NAME         ID   DESCRIPTION                     TYPE    VALUES
---------------|--|--------------------------------|-------|--------------------
switch_led      20  null                            boolean TRUE/FALSE
work_mode       21  range|white|colour|scene|music  enum    white/scene/colour
bright_value    22  min:10|max:1000|scale:0|step:1  integer 10...1000
colour_data     24  null                            json    000003E803E8    #also got 015a03e800a8
scene_data      25  null                            json    <null>
countdown       26  min:0|max:86400|scale:0|step:1  integer 0
music_data          null                            json    <null>
control_data        null                            json    <null>

So far, I am only using DP IDs 20, 21 & 22
Based on this information, I defined the FEIT light strip in Local Tuya as follows:

Friendly Name: FEIT Strip Light
Host: 192.168.1.168
Local key: 321xyz321xyz321x
Protocol Version: 3.3
Entities:
      20 Strip Light switch
      21 Strip Light luminance
Entity Configuration:
Editing entity with DPS 20 and platform switch.
    Friendly Name: FEIT Strip Light
    Current: <left blank>
    Current Consumption: <left blank>
    Voltage: <left blank>
Entity Configuration:
Editing entity with DPS 21 and platform light.
    Friendly Name: Strip light luminance
    Brightness (only for white color): 22 (value: 10)   # the value is current strip setting
    Color Temperature <left blank>
    Brightness Lower Value: 10                          # Tuya values usually need to be factored by 0.1
    Brightness Upper Value: 1000
    Color Mode: 21 (value: white)
    Color: <left blank>
    Minimum Color Temperature in K: 2700
    Maximum Color Temperature in K: 6500
    Scene: <left blank>
    Music mode available [left unchecked]

After submitting these settings into the Local Tuya integration,
I obtained 1 HA Device with 2 entities: switch & light.
I set these up in an Entities card in Lovelace.
I can now turn the strip lighs on & off.
I can vary the brightness from 0 (off) to 100 (full brightness).
Note that I only have this working for White (no color) at this point.
It should be possible to set colors, because the color data appears
to be a composite of RGB values, eg: 015a/03e8/00a8 from above.

Sorry if some of this doesn’t make sense. I apologize for the lack of formatting.
You can copy/past into a text editor to see things lined up better.

I’ve tinkered around with Local Tuya & Tuya IoT long enough to overcome some of their quirks &
obscurities. Let me know if you need further direction on any of the above.

1 Like

The DPID to set the color is 24. If I recall correctly, it’s in HSV format and you have to multiply the S and V values by 10 so they range from 0-1000. You can set it with the set_dp service or by turning on SUPPORT_COLOR feature in customizations and doing it from the UI.

1 Like

I also integrated the Costco Feit Led Strip with LocalTuya.

Steps:

  • Link the strip to the Tuya Smart App (follow Feit pairing instructions)
  • Link the app to my iot.tuya developer account (follow tuyapi setup steps 1-4)
  • Run the tuya-cli wizard (install tuya-cli: npm i @tuyapi/cli -g then tuya-cli wizard )
  • Add HA integration using config flow

The picture shows my config flow settings.

Thanks to @svkowalski and @vasqued2 for info

1 Like

Nice job everyone. Following your examples, I got this working for on/off and brightness only. My config flow options are radio buttons, and only show options 20, 21, 22 and 26 for some reason. Any thoughts about why that’s the case? Changing the color, color temperature or built-in scene (which did populate) caused issues with the device not responding.

This was very helpful and works amazing, but I want to warn people you have to go into the smart life app change the color and to the effects dim because sometimes home assistant won’t see the ID number such as 23 or 24 or 25 in the polling. So when you go pick light in configuration of local Tuya you will think you’re crazy because you can’t match be above picture this drove me crazy for a while then I realized . So in my case I learned from my mistake and passing it on, I also have realized if someone could figure out how to do this with their other bulbs you can get their internal effects to work putting it out there.

Just wanted to chime in and say thank you to those who worked on this. Between a YouTube video along with @svkowalski’s directions and @backcountrymountains’s screenshot of the settings - mine works perfectly now. I did discover that if you accidentally fill in a value that’s not needed, like color temperature for example, the only way to clear it is to remove the device and re-add it. But once I did that, I was good to go and the device card functions like any other color changing light.

Thanks again!

Are you able to use the device through HA without using the manufacturer app at all, ie. only through HA, and use all the features including color change ?

I’m considering buying one of those devices as they are on sale at Costco, but the sale ends tomorrow 8/7, so a quick reply would be much appreciated.

Yes! It’s a little clunky at times - takes a second or two to respond, or misses a command. But 9/10 times it works like any other connected device. I know there was some mention of the white being made of RGB instead of the dedicated white LED, but I think that was fixed. If I click/tap in the dead center of the color wheel, it lights the white LEDs only. Worth mentioning - I downloaded the Tuya app instead of the Feit app to do the initial set up.

This was the video I used to get the API steps.

I say go for it! Worst case if it doesn’t work for you, you just return it since their so good about returns.

Good luck!

Thanks for your reply. Yes, you are right about Costco being good about returns. I will head there and try to see if they have any left.

Where is the color wheel you are talking about ? Is that part of HA ? Or some other app ?

I was wondering if it might be possible to program some sort of light show, using HAOS scripts, without using the phone other than to start the script - and even then, I might use a smart switch to trigger it (just got some ZWave switches yesterday) .

My hot tub (not smart ot connected at all) has this feature, where the LEDs will change colors over time. It’s really soothing. This would be something really cool to do for things like parties.

Yeah the color wheel is in Home Assistant when you go to the device. I’m no pro at automations, especially something that changes colors over a long period of time. But the Feit strip has some built in effects that are accessible from within Home Assistant. So if any of those fit your needs, I’m sure there’s a way you can kick it off via a shortcut, voice assistant or some other means.

Thanks, I just grabbed a few. Yes, the effects do what I want, in particular the fading.
Looks like these consume about 0.8W idle, a bit more than what I was hoping. Guess that’s what Wifi chips entail. Going to try to setup the automation in HA now. Thanks !

So, on to the Wifi setup. Wow, is that thing horrible.

I have the same SSID on 2.4 GHz and 5 GHz on my Ubiquiti Unifi access points. This works for every device I have. And it’s a triple digit number. But not for this Feit strip.

  1. The Samsung phone / tablets I have connect to 5 GHz by default. There is no way to force the client to 2.4 GHz - damn you, Samsung. The FEIT app doesn’t blink and doesn’t care that the phone is on 5 GHz. It lets the pairing process start, and keeps the phone on the 2.4 GHz band, even though it can never succeed, because the strip light is on 2.4 and the phone is on 5, and they just cannot communicate. How hard is this to check for FEIT ? Way too hard, apparently.
    Of course, if they detected this situation, they would then have to do something about it, too, and the software “engineers” at FEIT apparently haven’t, the way just about every other repuable makers of 2.4 GHz IoT gear have.

  2. I then disabled the 5 GHz band on my Unifi access points. That forced the client to connect on 2.4 GHz. The damn LED strip light STILL wouldn’t pair. SIGH

  3. I then turned off the SSID on my Unifi altogether, and enabled the SSID and Wifi on my Comcast XB7 router - but only the 2.4 GHz band. Finally, the damn strip light paired, but it still took 2 minutes. I was then able to update the firmware. After that, and turning off the Comcast router Wifi, and re-enabling the Unifi, it connects to the Unifi properly.

  4. Since I’m a masochist, I then factory reset it (which can ONLY be done from the app, SMH), and went through the pairing process again on Unifi with only 2.4 GHz . Guess what, still no good, won’t pair.

I will head to the Unifi forums and see if they have a clue about what settings on the Unifi side might fix this.

Regardless, this is a really poor user experience. Most routers have the option to have 2.4 GHz and 5 GHz bands on the same SSID. This is in fact the recommended way to setup a Wifi network for proper roaming. The FeiT pairing process doesn’t account for that possibility, and that’s just inexcusable.

Weird. I have a UniFi Dream Machine Pro and WiFi 6 access points and it paired up no problem. :man_shrugging:t2:

Interesting, and good to hear !

Maybe it’s because I’m running EA firmware 6.2.33 on my NanoHDs, then.

Looking at this again today. I’m curious about how you got this to work. In the doc at https://github.com/codetheweb/tuyapi/blob/6de75590b379dfec6067cbe60ac9cc72756cbf2c/docs/SETUP.md , did you use the method called " Listing Tuya devices from the Tuya Smart or Smart Life apps" or " Linking a Tuya device with Smart Link" . I’m trying the later. The instructions at step 4 don’t match the site at iot.tuya.com .

  1. I’m prompted to choose one of 5 app types below :

Which one did you pick ? The 5th requires a subscription.
For the first 4 app types, there is no field called “Channel ID”. Has this been renamed ? And if so, which field is it ? App schema ?

  1. Also, I noticed the trial subscription is only for 1 month , also. Is that needed only for setup, or for continued operation ?

  2. the instructions say to run tuya-cli . That’s not an available command in the HAOS terminal, even though the local tuya integration is installed. Neither is npm , so I can’t run " npm i @tuyapi/cli -g" per the instructions, either. I’m confused as to how I’m supposed to run tuya-cli on my HAOS box.
    Are you using HAOS or some other flavor of Home Assistant ?

I’m pretty sure that I chose the former - “Listing Tuya device from the … apps.” I also installed the Tuya integration through HACS and don’t recall doing any command line stuff. I had to set my light strip up in the Tuya smartphone app before I did any of this.

Thanks for your reply ! I finally got it to work. I did have to do a lot of command-line stuff, as described in the doc. I just did it on a different computer, a Raspberry Pi running Ubuntu. I had to switch that Pi to use Wifi instead of Ethernet for tuya-cli to find the devices.

I also had to setup the Tuya Smart app.

I still ran into a major problem with Unifi - just couldn’t get the setup process to work at all when using the NanoHD. I had to revert to using the Comcast router at 2.4 GHz only once again when running tuya-cli, and when setting up the Tuya smart app.