<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Tags on Ribhu Ratnam</title><link>https://ribhu.in/tags/</link><description>Recent content in Tags on Ribhu Ratnam</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><atom:link href="https://ribhu.in/tags/index.xml" rel="self" type="application/rss+xml"/><item><title>Why Our LED Light is Designed to Be A Garbage</title><link>https://ribhu.in/why-our-led-light-is-designed-to-be-a-garbage/</link><pubDate>Fri, 19 Jun 2026 00:00:00 +0530</pubDate><guid>https://ribhu.in/why-our-led-light-is-designed-to-be-a-garbage/</guid><description>&lt;p&gt;My LED batton started flickering a while ago. So naturally the electrician suggested to get it replaced, and I did exactly that. But I wanted to understand what went wrong in that batton, and what could I learn from it.&lt;/p&gt;
&lt;p&gt;What I found inside was not fun, it was a lesson in why our electronics are designed to become e-waste.&lt;/p&gt;
&lt;h3 id="whats-really-inside"&gt;What&amp;rsquo;s Really Inside?&lt;/h3&gt;
&lt;p&gt;If you look closely at standard consumer electronics, you quickly realize they are designed to fail at their weakest link. In a standard LED batten, that link is almost &lt;em&gt;never&lt;/em&gt; the actual LEDs. It&amp;rsquo;s the cheap AC-to-DC driver circuit that runs everything.&lt;/p&gt;
&lt;p&gt;Here is the perpetrator on my desk:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://ribhu.in/images/ACToDCDriver.jpeg" alt="actodc"&gt;&lt;/p&gt;
&lt;p&gt;I asked a large language model to create a diagram of it as well, for better understanding -&lt;/p&gt;
&lt;p&gt;&lt;img src="https://ribhu.in/images/ACToDCDriverCircuit.png" alt="Autopsy of LED batten driver circuit"&gt;&lt;/p&gt;
&lt;h3 id="why-87v-is-the-anti-reuse-voltage"&gt;Why 87V is the &amp;ldquo;Anti-Reuse&amp;rdquo; Voltage&lt;/h3&gt;
&lt;p&gt;I looked at the long, beautiful rigid strip of perfectly intact surface-mount LEDs inside and thought I should be able to reus eit somehow.&lt;/p&gt;
&lt;p&gt;Standard flexible LED strips we buy for under-cabinet lighting run on a friendly, safe $12\text{V}$ or $24\text{V}$. You can power them with an old router brick. I checked the aluminum backing of my salvaged strip, expecting a simple voltage requirement. Then I saw the markings on the aluminum strip: &lt;code&gt;(29X3)&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;29X3&lt;/code&gt;. That is the engineering recipe.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://ribhu.in/images/LEDStrip.png" alt="LEDStripImage"&gt;&lt;/p&gt;
&lt;p&gt;In the world of LED manufacturing, white surface-mount LEDs have a predictable forward voltage drop of about $3\text{V}$. To maximize efficiency, manufacturers wire them in large, complex groups. The &lt;code&gt;29X3&lt;/code&gt; code means &lt;strong&gt;29 groups wired in series, with each group containing 3 LEDs wired in parallel&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s do the simple, frustrating math:&lt;/p&gt;
&lt;p&gt;$$\text{Total System Voltage} = 29 \text{ groups} \times 3\text{V} \text{ drop/group} = 87\text{V DC}$$&lt;/p&gt;
&lt;p&gt;To light this up, you need a high-voltage, constant-current driver. You cannot use a 12V wall adapter, a USB power bank, or a simple battery. By engineering the light for this niche 87V ecosystem, the manufacturer has made the working strip effectively &amp;ldquo;un-hackable&amp;rdquo; for the average person.&lt;/p&gt;
&lt;p&gt;Another LLM created image to show the parallel configuration:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://ribhu.in/images/SeriesLEDConfig.png" alt="Series-parallel wiring breakdown showing 29x3 configuration"&gt;&lt;/p&gt;
&lt;p&gt;Could they have built this differently? Absolutely.&lt;/p&gt;
&lt;p&gt;If the industry standardized on a modular input (like 12V or 24V), the strip would still be perfectly functional even if the driver died. You could unclip the old driver, buy a new generic power supply, and keep using the light.&lt;/p&gt;
&lt;p&gt;But there is one primary reason they chose this high-voltage design: &lt;strong&gt;Cost Optimization at the Expense of Sustainability.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;When a batten sells for ₹100–150 (about $1.50 USD, or higher depending on how bad INR is performing), every paisa of copper counts.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Feature&lt;/th&gt;
&lt;th&gt;High-Voltage Design (Current)&lt;/th&gt;
&lt;th&gt;Low-Voltage Modular Design&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Current Required&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Very Low&lt;/strong&gt; (~230mA)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Very High&lt;/strong&gt; (~1.67A)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Copper Wire (PCB)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Ultra-Thin (Cheap)&lt;/td&gt;
&lt;td&gt;Thick (Expensive)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Transformer Cost&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Low (Small Step-Down)&lt;/td&gt;
&lt;td&gt;High (Robust Step-Down)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Estimated Factory Cost&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;~₹70&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;~₹120&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;By choosing 87V, the manufacturer minimizes the current ($I=\frac{P}{V}$), allowing them to use razor-thin copper traces and microscopic wires throughout the 4-foot length of the light. Sustainability is deliberately sacrificed to keep the retail price below ₹150.&lt;/p&gt;
&lt;h3 id="my-conclusion-rant"&gt;My Conclusion/ Rant&lt;/h3&gt;
&lt;p&gt;We are living in an era where we can buy a bright, efficient, 20-watt light fixture for lesser than the price of a cup of coffee at Third Wave. But we are paying for that low price with the planet. Because the driver and the strip are locked in a dependency that only makes economic sense at ₹150, the moment the 5-rupee capacitor fails, the entire fixture is sentenced to a landfill.&lt;/p&gt;
&lt;p&gt;We need to push for circular design, where the light panel and the power source are modular. We need to be climate first and we need to design things that can be hacked and reused.&lt;/p&gt;</description></item><item><title>Just How Many USB Devices Can I Attach to My Computer?</title><link>https://ribhu.in/just-how-many-usb-devices-can-i-attach-to-my-computer/</link><pubDate>Sat, 09 Mar 2024 14:40:43 +0530</pubDate><guid>https://ribhu.in/just-how-many-usb-devices-can-i-attach-to-my-computer/</guid><description>&lt;blockquote&gt;
&lt;p&gt;Short Answer - It depends!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Well each one of us at some point have looked at an USB hub and thought, if I keep daisy-chaining these USB-hubs together - Just How Many USB Devices Can I Attach to My Computer?&lt;/p&gt;
&lt;p&gt;To answer that, let&amp;rsquo;s dive into USB specification a bit -&lt;/p&gt;
&lt;p&gt;The USB specification defines two different connectivity types in the USB tree topology: number of layers or tiers and number of endpoints or functions. Please note that endpoints are not the same thing as devices.&lt;/p&gt;
&lt;h3 id="defining-usb-tiers"&gt;Defining USB Tiers&lt;/h3&gt;
&lt;p&gt;USB tiers come from the use of USB hubs, where each USB hub is, in fact, its own USB device as well as the start of a new layer of USB devices. The USB 2.0 specification includes the following diagram to illustrate the USB topology -&lt;/p&gt;
&lt;p&gt;&lt;img src="https://ribhu.in/images/USBTiers.png" alt="image"&gt;&lt;/p&gt;
&lt;p&gt;The host and root hub are on the first tier, and connecting to a hub adds another tier. Any USB device&amp;rsquo;s tier number is equal to the connection chain&amp;rsquo;s total non-root hubs multiplied by two. The USB specification has a maximum of seven tiers. As a result, the number of daisy-chained hubs (excluding the root hub) is strictly limited to &lt;b&gt;five&lt;/b&gt;. Moreover most host systems have just one USB controller that is integrated in the host system chipset itself.&lt;/p&gt;
&lt;p&gt;Here is a typical PC architecture. The USB section is expanded, showing the USB Type A connectors -&lt;/p&gt;
&lt;p&gt;&lt;img src="https://ribhu.in/images/TypicalPCArchitecture.png" alt="image"&gt;&lt;/p&gt;
&lt;p&gt;What is not commonly known is that many host machines use hub chips internally to expand the number of available USB connectors i.e. the USB ports on a host machine are not Tier 1 but Tier 2 at least. So, it is highly possible that the USB connector on our host machines are already one or even two tiers deep in the overall USB tree. So keeping that in mind the above diagram would look more like this instead -&lt;/p&gt;
&lt;p&gt;&lt;img src="https://ribhu.in/images/TypicalPCArchitectureWithHub.png" alt="image"&gt;&lt;/p&gt;
&lt;p&gt;Thus, the ability to daisy-chain external hubs to keep increasing the number of devices we can connect to our provider hosts is reduced because there are already internal hubs.&lt;/p&gt;
&lt;h3 id="defining-usb-endpoints-or-functions"&gt;Defining USB Endpoints or Functions&lt;/h3&gt;
&lt;p&gt;Each USB device can define up to 32 endpoints (16 inputs and 16 outputs), but most devices only define 2 or 3 endpoints. Hubs themselves also define at least a control endpoint. Every USB controller implementation may have its own layer or endpoint limitations and most modern USB 3.0 hosts use XHCI USB controllers.&lt;/p&gt;
&lt;p&gt;The XHCI specification allows for a massive 7,906 endpoints, however common implementations of the XHCI controllers impose their own limit on the total number of endpoints to 96. The most notorious of these being Intel&amp;rsquo;s series 8 architectures. This means that the maximum number of devices (which use 3 endpoints) that can be attached to an Intel series 8 XHCI host controller is actually 32 devices (96 endpoints / 3 endpoints per device).&lt;/p&gt;
&lt;p&gt;To make matters worse, USB 3.0 buses live with USB 2.0 devices i.e they live in the similar yet separate tree architecture in parallel with USB 2.0 devices, but they share the same endpoints on XHCI controllers. USB 3.0 devices may implement endpoints on both the USB 3.0 and 2.0 buses and this further reduces the number of devices which can be attached to a single XHCI host controller.&lt;/p&gt;
&lt;h3 id="workarounds-for-these-limitations"&gt;Workarounds for these limitations&lt;/h3&gt;
&lt;h4 id="use-ehci-instead-of-xhci"&gt;Use EHCI instead of XHCI&lt;/h4&gt;
&lt;p&gt;This assumes that the chipsets in your computer support EHCI. And the BIOS on our computer allows you a method to do this. This is possible by default in older motherboards and chipsets (before Intel’s 8th gen).&lt;/p&gt;
&lt;h4 id="use-a-usb-20-cable-from-your-computer-to-usb-hub"&gt;Use a USB 2.0 cable from your computer to USB Hub&lt;/h4&gt;
&lt;p&gt;To add more than 18 total devices to a XHCI system, the simplest solution is to use a USB 2.0 host cable to connect the computer to a USB Hub. Since the USB Hub is now connected only with USB 2.0, there will not be any enumeration of USB 3.0 devices, including the USB 3.0 hub chips internal to the USB Hub. This will effectively reduce the USB Hub’s footprint in the USB tree by 50%.&lt;/p&gt;
&lt;h4 id="add-a-discrete-usb-controller-to-your-computer"&gt;Add a discrete USB controller to your computer&lt;/h4&gt;
&lt;p&gt;The main limitation in a computer is the integrated Intel XHCI USB host controller, and discrete USB host controllers do not have this limitation. Adding a discrete USB host controller in a PCIe expansion slot will increase the number of devices you can connect to your computer.&lt;/p&gt;
&lt;h3 id="so-in-summary"&gt;So In Summary&lt;/h3&gt;
&lt;p&gt;Let&amp;rsquo;s say you have an Intel computer with 10 USB ports on it. And unlimited supply of USB hubs with 5 USB ports on it. Then this is the long answer -&lt;/p&gt;
&lt;table&gt;
&lt;tr class="canon"&gt;
&lt;th&gt;Configuration&lt;/th&gt;
&lt;th&gt;Reason&lt;/th&gt;
&lt;th&gt;Maximum devices&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="config"&gt;Your Computer&lt;/td&gt;
&lt;td&gt;No. of physical USB ports on it.&lt;/td&gt;
&lt;td&gt;~10&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="config"&gt;Your computer + 1 USB hub&lt;/td&gt;
&lt;td&gt;Limited by port on the hub, will add 5 more ports but take one away from the host where the hub will be connected&lt;/td&gt;
&lt;td&gt;14&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="config"&gt;Your computer + 2 USB hub&lt;/td&gt;
&lt;td&gt;Limited by port on the hub, will add 5 more ports but take one away from the host where the hub will be connected&lt;/td&gt;
&lt;td&gt;18&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="config"&gt;Your computer + more than 2USB hub&lt;/td&gt;
&lt;td&gt;Limited by the USB 3.0 standards&lt;/td&gt;
&lt;td&gt;18&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="config"&gt;Your computer + more than 2 USB hub&lt;/td&gt;
&lt;td&gt;Limited by the USB 3.0 standards&lt;/td&gt;
&lt;td&gt;18&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="config"&gt;Your computer + USB 2.0 cables + more than 2 USB hub&lt;/td&gt;
&lt;td&gt;Limited by the XHCI USB controller on Intel chipsets&lt;/td&gt;
&lt;td&gt;18&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="config"&gt;Your computer + PCIe USB extension cards&lt;/td&gt;
&lt;td&gt;Limited by number of physical PCIe lanes on the motherboard, prebuilt computers don't have more than 2, and one is already occupied by a GPU&lt;/td&gt;
&lt;td&gt; &lt;127 (Realistically somewhere around 64 as the best hubs can not support more than 32 devices) &lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;hr/&gt;
&lt;h4 id="external-references--"&gt;External References -&lt;/h4&gt;
&lt;p&gt;&lt;a href="https://acroname.com/blog/how-many-usb-devices-can-i-connect"&gt;Blog by Acroname&lt;/a&gt;&lt;/p&gt;
&lt;style&gt;
.canon { background: rgb(240, 219, 240); width: 100%; height: auto; color: black;}
.config { background: rgb(213, 246, 213); height: auto; color: black;}
&lt;/style&gt;</description></item></channel></rss>