LED Bars with First Pixel Starting at 1?

Hello!

I am experimenting with buying pre-made LED bars from an overseas manufacturer called ShowJockey. The idea is that it's cheaper to buy these assembled than build my own locally by sourcing parts, soldering, assembly, etc.. The product I ordered is similar to this product.

It's a 1 meter long c-channel construction with 60 LED/m using 12v ws2815 IC LEDs, controlled via SPI. Build quality looks good but upon initial tests with FastLED I am noticing the first LED is referenced at offset 1, instead of offset 0. The last LED is referenced at offset 60, instead of offset 59.

Example code and output would be as follows:
Example 1

#define NUM_LEDS    60

leds[0] = CRGB(255, 255, 255);
leds[59] = CRGB(255, 255, 255);

Output: Only the second last LED lights up.

Example 2

#define NUM_LEDS    61

leds[1] = CRGB(255, 255, 255);
leds[60] = CRGB(255, 255, 255);

Output: The first and the last LED light up.

The manufacturer says their LED addresses start at 1. I have never seen this before in any strings I've ordered (I've worked with 2811, 2812b, 2815 from BTF), but this is an LED tube with a hard board behind the LEDs, it's not a string mounted in a c-channel.

The issue that presents itself is when I put these in sequence there is always going to be a +1 offset for each bar. So if I had 2 of these, I would need to add 122 Pixels, and do a +1 offset for every 60 LEDs for them to map correctly. This seems a little.. odd?

My Question
Is this normal and I am just now being exposed to this? Or is this some odd thing? Do people work with these +1 offsets and account for this with mapping in their code (adding a +1 every 60 pixels)?

Not sure if I should ask the manufacturer if they can change the offset to 0, and not sure why there is even an offset to begin with.

Any insights are appreciated.

What does their sketch look like? Maybe they added a library to shift the range, and hardware (a WS2812) to remove the first 24 bits. Target consumers might not understand using whole numbers as counting numbers.

Yes it does, a little wasteful.

It is. Though DMX channels also start at 1 (where the first byte is used for identification)

Not that i know, even for a VJ it is a bit of a waste.

I think it is not something that can easily be changed, sounds like a hardware thing, also it is easy enough to work around, but it is wasteful in some respects. In many of these cases, it's 'someone presented it to a person that makes decisions' , who made the wrong decision, and now that is what it is.

I actually think that the first chip is there as a sort of fuse, there is the backup, if the first led breaks, it passes the signal on to the next, I always get the numbers mixed up with the ws stuff but check the datasheet out.

I doubt if the manufacturer will say, eh ok, just break the first chip, apply 12v to the data line and bob's your uncle.

@xfpd Thanks for the reply. I don't know that information, I will ask them on a call in the early new year.

@Deva_Rishi These LED bars are generally sold with DMX in mind, they made a swap for me for SPI. So perhaps that is the issue.

You're right, the work-around is simple enough, but the waste and general 'not idealness' of the solution (declaring extra LEDs that cannot be targeted) made me unsure.