Re:Positional/physical addressing

Jun 24, 2025 Last reply: 1 year ago 3 Replies


I have a large group (hundreds) of switches and displays.Their state needs to be determined/updated rather slowly(a few hertz). Each has local smarts so it can retainsome state information and processing capability.Their physical arrangement varies from one installation tothe next. So, there is no economy of scale available by"settling" on a specific configuration or physical arrangement.I would like to be able to address them (the entire *set*) -- andpass data to/fro -- with a small, fixed number of conductors /havingbuilt them all identically/. The amount of data exchanged beingtraded off vs. update rate for a given interface bandwidth.The obvious "one wire" scheme would have a gazinta and cumzoutafor each device so the device could modify a serial bit streamto account for its "position" in that stream.I can pipeline processing between devices so the overall accessrate remains high (though latency obviously suffers).But, a single device failure renders all downwind devicesinaccessible (or, possibly ALL devices, depending on implementation)I'm looking at a two wire solution that piggybacks the datastream on power and ground (those "two wires"). But, itadds complexity to the devices (I want to keep them REALLYsmall and dirt cheap)Any existing schemes that allow this without the failure mode cited?


CAN network?

WS2812 LED chips do something like that. The first chip in the chain absorbs the first three bytes and passes on all that come after, and so on down the chain. Wait 50 us and the first chip in the chain is ready again to intercept its three bytes.

It's common for driving LED strips.

Jeroen Belleman

That's not quite how they work. The whole chain is one big shift register, (24 bits per device), with 1's and zero's being shifted along as broad or narrow pulses. When the pulses stop for a while*, the 24 bits sitting in the "shift register" are latched into the "DAC register" and the colour changes.

I think I saw that there was some variant of the WS2812 that went into a bypass mode on failure, to avoid breaking all that follow. Exactly what counted as failure wasn't clear.

  • An intersting / irritating bug had the firmware not waiting long enough (= at all) between sending updates, so although the string was buisily clocking data through it, nothing was happening on the lights. Getting the bit count wrong can produce some pretty patterns, if you like migraines.

Read the datasheet.

Jeroen Belleman

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required