{"product_id":"led-wifi-controller-kit","title":"LED WiFi Controller Kit","description":"\u003csection class=\"spec-page\"\u003e\u003c!-- FULL-WIDTH CAROUSEL (Top) --\u003e\n\u003csection class=\"spec-carousel\"\u003e\n\u003cdiv id=\"cobCarousel\" class=\"spec-carousel-track\"\u003e\n\u003cdiv class=\"spec-carousel-slide\"\u003e\u003cimg loading=\"eager\" alt=\"C\u0026amp;C Lighting LED strip WiFi controller with 4-zone beacon remote RGBW smart control\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0986\/0548\/files\/90acd1cc-573e-42c0-83f2-7aa19518b210.png?v=1785614830\"\u003e\u003c\/div\u003e\n\u003c!-- Add more images like this when you have them --\u003e\n\u003c\/div\u003e\n\u003cbutton type=\"button\" class=\"spec-carousel-btn prev\"\u003e‹\u003c\/button\u003e \u003cbutton type=\"button\" class=\"spec-carousel-btn next\"\u003e›\u003c\/button\u003e\n\u003cdiv class=\"spec-carousel-dots\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cscript\u003e\n(function () {\n  const carousel = document.querySelector(\".spec-carousel\");\n  if (!carousel) return;\n  const track = carousel.querySelector(\".spec-carousel-track\");\n  const slides = Array.from(carousel.querySelectorAll(\".spec-carousel-slide\"));\n  const prevBtn = carousel.querySelector(\"[data-carousel-prev]\");\n  const nextBtn = carousel.querySelector(\"[data-carousel-next]\");\n  const dotsWrap = carousel.querySelector(\"[data-carousel-dots]\");\n  if (!track || slides.length === 0) return;\n  let currentIndex = 0;\n  let autoplayTimer = null;\n  const AUTOPLAY_MS = 5000;\n  function slideWidth() {\n    return track.getBoundingClientRect().width;\n  }\n  function clampIndex(i) {\n    if (i \u003c 0) return 0;\n    if (i \u003e slides.length - 1) return slides.length - 1;\n    return i;\n  }\n  function scrollToIndex(i, opts) {\n    currentIndex = clampIndex(i);\n    track.scrollTo({\n      left: currentIndex * slideWidth(),\n      behavior: (opts \u0026\u0026 opts.instant) ? \"auto\" : \"smooth\"\n    });\n    updateDots();\n    updateButtons();\n  }\n  function updateButtons() {\n    if (!prevBtn || !nextBtn) return;\n    prevBtn.disabled = currentIndex === 0;\n    nextBtn.disabled = currentIndex === slides.length - 1;\n    prevBtn.style.opacity = prevBtn.disabled ? \"0.45\" : \"1\";\n    nextBtn.style.opacity = nextBtn.disabled ? \"0.45\" : \"1\";\n    prevBtn.style.pointerEvents = prevBtn.disabled ? \"none\" : \"auto\";\n    nextBtn.style.pointerEvents = nextBtn.disabled ? \"none\" : \"auto\";\n  }\n  function buildDots() {\n    if (!dotsWrap) return;\n    dotsWrap.innerHTML = \"\";\n    slides.forEach((_, i) =\u003e {\n      const btn = document.createElement(\"button\");\n      btn.type = \"button\";\n      btn.className = \"spec-carousel-dot\";\n      btn.setAttribute(\"aria-label\", \"Go to slide \" + (i + 1));\n      btn.addEventListener(\"click\", () =\u003e scrollToIndex(i));\n      dotsWrap.appendChild(btn);\n    });\n    updateDots();\n  }\n  function updateDots() {\n    if (!dotsWrap) return;\n    const dots = Array.from(dotsWrap.querySelectorAll(\".spec-carousel-dot\"));\n    dots.forEach((d, i) =\u003e {\n      const active = i === currentIndex;\n      d.setAttribute(\"aria-current\", active ? \"true\" : \"false\");\n    });\n  }\n  function syncIndexFromScroll() {\n    const w = slideWidth();\n    const i = Math.round(track.scrollLeft \/ w);\n    const next = clampIndex(i);\n    if (next !== currentIndex) {\n      currentIndex = next;\n      updateDots();\n      updateButtons();\n    }\n  }\n  function startAutoplay() {\n    stopAutoplay();\n    autoplayTimer = window.setInterval(() =\u003e {\n      const next = (currentIndex + 1) % slides.length;\n      scrollToIndex(next);\n    }, AUTOPLAY_MS);\n  }\n  function stopAutoplay() {\n    if (autoplayTimer) window.clearInterval(autoplayTimer);\n    autoplayTimer = null;\n  }\n  if (prevBtn) prevBtn.addEventListener(\"click\", () =\u003e scrollToIndex(currentIndex - 1));\n  if (nextBtn) nextBtn.addEventListener(\"click\", () =\u003e scrollToIndex(currentIndex + 1));\n  track.addEventListener(\"scroll\", () =\u003e {\n    window.requestAnimationFrame(syncIndexFromScroll);\n  });\n  carousel.addEventListener(\"mouseenter\", stopAutoplay);\n  carousel.addEventListener(\"mouseleave\", startAutoplay);\n  carousel.addEventListener(\"focusin\", stopAutoplay);\n  carousel.addEventListener(\"focusout\", startAutoplay);\n  track.addEventListener(\"keydown\", (e) =\u003e {\n    if (e.key === \"ArrowLeft\") scrollToIndex(currentIndex - 1);\n    if (e.key === \"ArrowRight\") scrollToIndex(currentIndex + 1);\n  });\n  window.addEventListener(\"resize\", () =\u003e {\n    scrollToIndex(currentIndex, { instant: true });\n  });\n  buildDots();\n  scrollToIndex(0, { instant: true });\n  startAutoplay();\n})();\n\u003c\/script\u003e \u003c!-- HERO --\u003e\n\u003csection class=\"spec-hero\"\u003e\n\u003cdiv style=\"text-align: start;\" class=\"spec-hero-media\"\u003e\n\u003cbr\u003e\u003cimg alt=\"C\u0026amp;C Lighting Tuya WiFi LED controller RGBW with 4-zone beacon remote DC5-24V\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0986\/0548\/files\/Product_Photo_Dimension_Guide_5_cc79dbf0-ad0e-4c3c-85ec-4d3ee8101c86.png?v=1785614830\"\u003e\u003cbr\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-hero-content\"\u003e\n\u003ch4 class=\"spec-title\"\u003eLED WiFi Controller Kit\u003c\/h4\u003e\n\u003cp class=\"spec-tagline\"\u003eThe LED Strip WiFi Controller Kit is a Tuya-powered smart controller built to operate RGBW LED strip systems over WiFi, with support for 4-zone remote and beacon control. Paired with the Tuya or Smart Life app, it enables scheduling, scene setting, and voice control through Amazon Alexa, Google Assistant, and other major smart home platforms.\u003c\/p\u003e\n\u003cdiv class=\"spec-stats\"\u003e\n\u003cspan\u003eRGBW\u003c\/span\u003e \u003cspan\u003eDC5-24V Input\u003c\/span\u003e \u003cspan\u003e6A\/CH, 15A Max\u003c\/span\u003e \u003cspan\u003e4-Zone Beacon Remote\u003c\/span\u003e \u003cspan\u003eTuya WiFi App Control\u003c\/span\u003e\n\u003c\/div\u003e\n\u003ca href=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0986\/0548\/files\/LED_Wifi_Controller_Kit.pdf?v=1785614830\" class=\"spec-btn\" rel=\"noopener\" title=\"LED WiFi Controller Kit Spec Sheet\" target=\"_blank\"\u003e Download Spec Sheet \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- SUPPORT VISUAL --\u003e\u003c!-- FEATURES --\u003e\n\u003csection class=\"spec-features\"\u003e\n\u003ch2 class=\"spec-section-title\"\u003eHighlighted Features\u003c\/h2\u003e\n\u003cdiv class=\"spec-feature-grid\"\u003e\n\u003cdiv class=\"spec-feature\"\u003e\n\u003cdiv class=\"spec-feature-label\"\u003eControl Type\u003c\/div\u003e\n\u003cdiv class=\"spec-feature-text\"\u003eWiFi smart controller with Tuya app integration and physical beacon remote.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-feature\"\u003e\n\u003cdiv class=\"spec-feature-label\"\u003eSmart Home Compatibility\u003c\/div\u003e\n\u003cdiv class=\"spec-feature-text\"\u003eWorks with Amazon Alexa, Google Assistant, and other Tuya-compatible smart home platforms.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-feature\"\u003e\n\u003cdiv class=\"spec-feature-label\"\u003eZone Control\u003c\/div\u003e\n\u003cdiv class=\"spec-feature-text\"\u003eSupports 4-zone control; one beacon remote can pair with up to 3 controllers.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-feature\"\u003e\n\u003cdiv class=\"spec-feature-label\"\u003eApp Setup\u003c\/div\u003e\n\u003cdiv class=\"spec-feature-text\"\u003eAuto-detected by the Tuya or Smart Life app on power-on, with guided WiFi network setup.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-feature\"\u003e\n\u003cdiv class=\"spec-feature-label\"\u003ePairing\u003c\/div\u003e\n\u003cdiv class=\"spec-feature-text\"\u003eControllers pair to remote zones by holding the zone button for 5 seconds after power-on; de-pairing uses the zone button plus dim-down button.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-feature\"\u003e\n\u003cdiv class=\"spec-feature-label\"\u003eRemote Functions\u003c\/div\u003e\n\u003cdiv class=\"spec-feature-text\"\u003eAll-zone on\/off, dim up, dim down, delay off, and individual zone selection across 4 zones.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-feature\"\u003e\n\u003cdiv class=\"spec-feature-label\"\u003eInstallation\u003c\/div\u003e\n\u003cdiv class=\"spec-feature-text\"\u003eIncludes mounting bracket, screws, double-sided tape, and screwdriver for surface mounting.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/section\u003e\n\u003cstyle\u003e\n  .spec-page{\n    max-width: 1180px;\n    margin: 0 auto;\n    padding: 40px 16px 24px;\n  }\n  \/* HERO *\/\n  .spec-hero{\n    display: grid;\n    grid-template-columns: 1.05fr 0.95fr;\n    gap: 56px;\n    align-items: center;\n  }\n  .spec-hero-media img{\n    width: 100%;\n    height: auto;\n    display: block;\n    border-radius: 14px;\n  }\n  .spec-title{\n    margin: 0 0 10px;\n    font-size: clamp(28px, 3vw, 40px);\n    line-height: 1.15;\n    font-weight: 600;\n    letter-spacing: 0.2px;\n  }\n  .spec-tagline{\n    margin: 0 0 18px;\n    font-size: 16px;\n    line-height: 1.55;\n    font-weight: 400;\n    color: rgba(0,0,0,0.70);\n    max-width: 46ch;\n  }\n  \/* Stat row: minimal pipe-separated *\/\n  .spec-stats{\n    display: flex;\n    flex-wrap: wrap;\n    gap: 10px 14px;\n    margin: 0 0 22px;\n    font-size: 13px;\n    letter-spacing: 0.3px;\n    color: rgba(0,0,0,0.62);\n  }\n  .spec-stats span{\n    position: relative;\n    padding-right: 14px;\n    white-space: nowrap;\n  }\n  .spec-stats span:not(:last-child)::after{\n    content: \"|\";\n    position: absolute;\n    right: 4px;\n    color: rgba(0,0,0,0.28);\n  }\n  \/* CTA button: subtle *\/\n  .spec-btn{\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    padding: 12px 16px;\n    border-radius: 10px;\n    text-decoration: none;\n    font-weight: 600;\n    font-size: 14px;\n    border: 1px solid rgba(0,0,0,0.14);\n    color: rgba(0,0,0,0.86);\n    background: #fff;\n    transition: transform 120ms ease, box-shadow 120ms ease;\n  }\n  .spec-btn:hover{\n    transform: translateY(-1px);\n    box-shadow: 0 10px 24px rgba(0,0,0,0.08);\n  }\n  \/* SUPPORT *\/\n  .spec-support{\n    margin-top: 32px;\n  }\n  .spec-support img{\n    width: 100%;\n    height: auto;\n    display: block;\n    border-radius: 14px;\n  }\n  \/* FEATURES *\/\n  .spec-features{\n    margin-top: 40px;\n    padding-top: 26px;\n    border-top: 1px solid rgba(0,0,0,0.08);\n  }\n  .spec-section-title{\n    margin: 0 0 18px;\n    font-size: 16px;\n    font-weight: 600;\n    letter-spacing: 0.2px;\n    color: rgba(0,0,0,0.88);\n  }\n  .spec-feature-grid{\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 18px 40px;\n    align-items: start;\n  }\n  .spec-feature{\n    display: grid;\n    grid-template-columns: 210px 1fr;\n    gap: 14px;\n  }\n  .spec-feature-label{\n    font-size: 13px;\n    font-weight: 600;\n    color: rgba(0,0,0,0.90);\n    letter-spacing: 0.2px;\n  }\n  .spec-feature-text{\n    font-size: 14px;\n    line-height: 1.6;\n    color: rgba(0,0,0,0.68);\n  }\n  \/* Mobile *\/\n  @media (max-width: 900px){\n    .spec-hero{\n      grid-template-columns: 1fr;\n      gap: 24px;\n      align-items: start;\n    }\n    .spec-stats span{\n      padding-right: 0;\n      white-space: normal;\n    }\n    .spec-stats span:not(:last-child)::after{\n      content: \"\";\n    }\n    .spec-feature-grid{\n      grid-template-columns: 1fr;\n      gap: 14px;\n    }\n    .spec-feature{\n      grid-template-columns: 1fr;\n      gap: 6px;\n    }\n  }\n\n\/* FULL-WIDTH CAROUSEL *\/\n.spec-carousel{\n  position: relative;\n  width: 100vw;\n  left: 50%;\n  right: 50%;\n  margin-left: -50vw;\n  margin-right: -50vw;\n  margin-top: -40px;\n  margin-bottom: 26px;\n  overflow: hidden;\n  background: #0b0b0b;\n}\n.spec-carousel-track{\n  display: flex;\n  overflow-x: auto;\n  scroll-snap-type: x mandatory;\n  scroll-behavior: smooth;\n  -webkit-overflow-scrolling: touch;\n  scrollbar-width: none;\n}\n.spec-carousel-track::-webkit-scrollbar{\n  display: none;\n}\n.spec-carousel-slide{\n  flex: 0 0 100%;\n  scroll-snap-align: center;\n  position: relative;\n  background: #0b0b0b;\n}\n.spec-carousel-slide img{\n  width: 100%;\n  height: auto;\n  display: block;\n}\n.spec-carousel-btn{\n  position: absolute;\n  top: 50%;\n  transform: translateY(-50%);\n  width: 42px;\n  height: 42px;\n  border-radius: 999px;\n  border: 1px solid rgba(255,255,255,0.22);\n  background: rgba(0,0,0,0.38);\n  color: #fff;\n  font-size: 22px;\n  line-height: 1;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  cursor: pointer;\n  transition: transform 120ms ease, background 120ms ease;\n}\n.spec-carousel-btn:hover{\n  background: rgba(0,0,0,0.55);\n  transform: translateY(-50%) scale(1.03);\n}\n.spec-carousel-btn.prev{\n  left: 14px;\n}\n.spec-carousel-btn.next{\n  right: 14px;\n}\n.spec-carousel-dots{\n  position: absolute;\n  left: 50%;\n  bottom: 14px;\n  transform: translateX(-50%);\n  display: flex;\n  gap: 8px;\n  padding: 6px 10px;\n  border-radius: 999px;\n  background: rgba(0,0,0,0.28);\n  border: 1px solid rgba(255,255,255,0.12);\n}\n.spec-carousel-dot{\n  width: 8px;\n  height: 8px;\n  border-radius: 999px;\n  background: rgba(255,255,255,0.35);\n  border: 0;\n  cursor: pointer;\n}\n.spec-carousel-dot[aria-current=\"true\"]{\n  background: rgba(255,255,255,0.92);\n}\n@media (max-width: 900px){\n  .spec-carousel{\n    margin-top: -24px;\n    margin-bottom: 18px;\n  }\n  .spec-carousel-btn{\n    width: 36px;\n    height: 36px;\n    font-size: 18px;\n  }\n  .spec-carousel-btn.prev{\n    left: 10px;\n  }\n  .spec-carousel-btn.next{\n    right: 10px;\n  }\n  .spec-carousel-dots{\n    bottom: 10px;\n  }\n}\n\u003c\/style\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e","brand":"C\u0026C Lighting","offers":[{"title":"Default Title","offer_id":42814653759573,"sku":null,"price":0.0,"currency_code":"CAD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0986\/0548\/files\/ProductPhotoDimensionGuide_5_d83426a2-9cee-44e6-b8b1-d5ca558dec41.png?v=1785615154","url":"https:\/\/candclight.com\/products\/led-wifi-controller-kit","provider":"C\u0026C Lighting","version":"1.0","type":"link"}