# LED灯带

Betaflight支持使用可寻址LED灯带。可寻址LED灯带允许灯带中的每个LED被独立编程为互不相同的颜色。这比普通的RGB灯带要先进得多，因为普通RGB灯带中的每个LED都将显示相同的颜色。

## LED灯带模式

LED灯带具有三个子模式：STATUS，RACE和BEACON。分别使用三个独立的与名称对应的LED配置文件来配置。可以从CLI、OSD的LED菜单或拨杆辅助通道（遥控器）更改所选的配置文件。请注意，使用遥控器的辅助通道做出的更改会覆盖其他方式所选择的LED配置文件。

### STATUS模式

该模式用于显示以下所有信息，即警告、指示、左右扫描等。

可寻址的LED的LED灯条可用于显示来自飞控的信息，当前支持以下功能：

* 最高支持32个LED。（可以支持更多的LED，只是需要进一步开发）
* 灯光指示当前Pitch/Roll摇杆位置
* 方向/指向灯
* 某一飞行模式下使用特定的灯光配色方案
* 电池低电压警告
* 辅助通道控制LED开/关
* GPS状态信息
* RSSI强度显示
* 电池电量显示

### RACE模式

该模式将会把所有LED灯带都调成相同颜色，以用于竞赛。例如，根据灯带颜色来辨认飞机。LED灯带所有灯珠颜色都将保持相同且不再变化，不会显示其他信息。

### BEACON模式

该模式用于搜寻坠机的飞机，它每秒使所有LED变白一次。同样，在此模式下，LED灯带上不会显示其他信息。

### LED配置文件设置

#### 选项1：设置一个调整通道，从遥控器来改变LED灯带配置文件

1. 开启专家模式 - 点击配置程序右上方“启用专家模式”按钮。
2. 在“调整”页面内设置一个调整通道，以供切换LED灯带配置文件使用
   * 启用“调整”。（“如果激活”）
   * 选择用于更改LED配置文件的AUX通道。（“当通道”）
   * 设置范围以覆盖所选AUX通道的整个范围。（“在指定范围时”）
   * 对于该操作，选择“RC Rate 调整”。（“执行”）\
     这样操作意味着余下的设置将在CLI中进行配置，因为配置程序10.4.0及更早版本不支持在图形页面内开启LED配置文件选择。仅选择“ RC Rate 调整”是为了使接下来在CLI中的配置更容易一些。
   * 选择“通过通道”以匹配上面选择的AUX通道。（“当通道”）。
   * 保存
3. 打开CLI并键入`adjrange`然后回车。
4. 复制上面步骤2中配置的adjrange，并将其粘贴到命令窗口中。然后将通道范围后的“1”改为“30”，然后回车。键入save，并再次回车。现在将保存已配置的adjrange，并且飞控将重启。
5. 在您的遥控器上配置对应的AUX通道。更改此通道之后，所选的LED灯带配置文件将在STATUS、RACE和BEACON之间切换，这样做时您应该会看到LED功能发生了变化。

#### 选项2：使用CLI来选择LED配置文件（即不通过遥控器来选择LED配置文件）

1. 打开CLI。
2. 键入`get ledstrip_profile`并回车，以显示当前选择的LED配置文件。
3. 键入`set ledstrip_profile = x`，其中x是配置文件的名称，可以是STATUS，RACE或BEACON，然后按回车键。
4. 键入`save`并回车，以保存所选的LED配置文件。

#### 选项3：使用OSD

1. 在遥控器上以偏航向左、俯仰向上的杆位来激活OSD菜单。
2. 使用俯仰杆移动至LED Strip菜单，然后横滚向右以进入菜单。
3. 横滚向左可以用来返回上一页来配置STATUS和RACE配置文件，俯仰向上/向下可以用来更改颜色值。
4. 横滚向左退到顶层菜单，然后选择“Save & Reboot”以完成切换。

#### RACE模式的颜色：可以使用CLI来配置RACE模式的颜色

1. 打开CLI。
2. 键入`get ledstrip_race_color`并回车，以显示当前RACE模式的颜色编号。
3. 键入`set ledstrip_race_color = x`，其中X是颜色编号。
4. 键入`save`并回车，以保存RACE模式的颜色。

## 支持的硬件

当前仅支持有32个WS2811/WS2812灯珠的LED灯带。若灯珠数量超过32个，则仅会使用前32个LED灯珠。

需要使用800KHz信号和精准的时序才能控制WS2812灯珠，因此需要为LED焊盘配置专用的硬件计时器。

注意：并非所有WS2812芯片都使用相同的时序，有些批次使用的时序并不一样。

如果确实有需要的话，可由用户自定义所需的时序。

### WS2811和WS2812

WS2811是一个连接到RGB灯珠上的LED驱动芯片。可以向其输入红-绿-蓝各8位的数据信号。（红、绿、蓝各8位）

WS2812则是5050（或3535）灯珠中集成LED驱动芯片，而不是两者各自作为独立设备。可以向其输入绿-红-蓝各8位的数据信号。

因此，根据LED灯带使用的芯片不同，需要使用红-绿-蓝或绿-红-蓝数据编码。可以通过下列CLI来修改颜色数据编码序列

```
set ledstrip_grb_rgb = RGB
```

或

```
set ledstrip_grb_rgb = GRB
```

然后只需将LED设置为绿色，即可确认设置是否正确。如果LED呈红色，则设置错误。

## 连线

WS2812灯带通常需要一根数据线、5V供电线和GND地线。

WS2812 LED处于全亮状态会消耗大量电流。建议检查电流消耗情况，以确保您的电源足以拖动负载。若多旋翼飞行器的电调均具有BEC，可以尝试用不同的BEC分别为飞控板和LED灯带供电。例如，ESC1/BEC1->FC，ESC2/BEC2->LED灯带。也可以一侧灯带使用一个BEC供电，另一侧使用另一个BEC供电。只需要确保所有的BEC与LED均接有效地即可。

如果您的LED有的亮有的不亮、闪烁或显示错误的颜色，那么可以尝试将输入电压降至4.7v以下。例如，可以在5v供电线上串联二极管。这些问题都是由于数据信号与电源信号之间的电压差而引起的。WS2811要求数据信号（Din）高低电平分别0.7xVin以上，0.3xVin以下，才能完成高低信号的辨识。飞控板上的LED焊盘输出电平为0-3.3V，所以供电电压应该为4.7V（3.3V/0.7 = 4.71V）。部分输入信号容受区间较宽的LED则可忽略此要求。

## 配置

可以在配置程序内的图形界面内配置LED灯带的功能。

使用“LED灯带”选项卡来配置LED。首先设置LED的布局，以告知飞控有多少个LED可用，也便于稍后对LED进行可视化配置。

有关如何使用配置程序来逐步配置LED的功能，请参阅[这里](http://blog.oscarliang.net/setup-rgb-led-cleanflight/)。该指南由Oscar Liang于2015年初发布，在您阅读本文时部分内容可能已不再具有实用意义。

通过CLI命令启用LED灯带功能：

```
feature LED_STRIP
```

如果您启用该功能，但在重启之后该功能仍被关闭，那么您需要检查您的配置是否有与LED灯带功能冲突的其他功能，如上文所示。

您可以使用CLI命令`led`来配置LED。

`led`命令有两个参数：从0开始的LED编号、一个控制序列。该控制序列包含一个坐标、方向标志、模式标志和一种颜色。

每个LED的控制序列可以使用如下模板进行配置：

```
x,y:ddd:mmm:cc
```

`x`和`y`是16x16的网格坐标，从零计数，左上角为0,0，右下角为15,15。

`ddd`用于指定朝向。假定网格为上北下南左西右东，飞机头部在北，尾部在南。因为LED可以面向任何方向，因此有多种方向可供选择：

* `N`-北&#x20;
* `E`-东&#x20;
* `S`-南&#x20;
* `W`-西&#x20;
* `U`-上&#x20;
* `D`-下

例如，向下45°面向东南方向的LED可以配置为`SED`。

注意：可以将LED配置为全向，但`NESWUD`可能没有任何意义。

`mmm`用于设定LED的模式。

每一个LED都可以设置一个基本功能：

* `C`-颜色**C**olor
* `F`-模式和方向**F**light mode & Orientation
* `A`-锁定状态**A**rmed state
* `R`-推力环**R**ing thrust state
* `G`-**G**PS
* `S`-RSSI强度R**S**SI level
* `L`-电池电量Battery **L**ever

并且每个LED都可以有叠加功能：

* `W`-警告**W**arnings
* `I`-指示灯**I**ndicator
* `T`-油门状态**T**hrust state
* `B`-闪烁（两次）模式**B**link mode
* `O`-左右扫描Lars**o**n Scanner
* `N`-降落指示灯（油门低于50%闪烁）Blink on la**n**ding

`cc`用于设置LED颜色编号（编号从0计数）。

例如：

```
led 0 0,15:SD:AWI:0
led 1 15,0:ND:AWI:0
led 2 0,0:ND:AWI:0
led 3 0,15:SD:AWI:0
led 4 7,7::c:1
led 5 8,8::C:2
led 6 8,9::B:1
```

要擦除LED并标记LED灯带尾端，请将第二个参数设置为`0,0:::`，如下所示：

```
led 4 0,0:::
```

最好擦除所有未使用的LED。

### 模式

#### 警告模式

当触发警告时，此模式仅会闪烁LED。

| 警告       | LED闪烁模式   | 注释                            |
| -------- | --------- | ----------------------------- |
| 处于无法解锁状态 | 绿灯闪烁      | 在校准期间或当飞行器因倾角过大而无法解锁时出现       |
| 低电量      | 红灯闪烁      | 必须启用电池监视功能。可能会在高油门下因电压下降而暂时触发 |
| 失控保护     | 浅蓝与黄色交替闪烁 | 必须已设置并启用失控保护                  |

各种模式将按顺序逐次闪烁显示，因此很容易得知到底启用了哪些警告。

#### GPS状态

此模式显示GPS状态和已经搜到的卫星数量。

* 定位未成功/失败=闪烁红色
* 3D定位成功=闪烁绿色

LED的闪烁次数指示当前已搜到的卫星数量。闪烁x次后将暂停闪烁，并重新开始（闪烁）。

#### RSSI级别

此模式将使用LED颜色指示RSSI级别。

| 颜色   | RSSI |
| ---- | ---- |
| 绿色   | 100％ |
| 柠檬绿  | 80％  |
| 黄色   | 60％  |
| 橙子   | 40％  |
| 红    | 20％  |
| 深粉红色 | 0％   |

当RSSI低于50%时，LED将缓慢闪烁；低于20%时，LED将快速闪烁。

#### 电池电量

此模式将使用LED颜色指示电池剩余电量。

| 颜色   | 剩余电量 |
| ---- | ---- |
| 绿色   | 100％ |
| 柠檬绿  | 80％  |
| 黄色   | 60％  |
| 橙子   | 40％  |
| 红    | 20％  |
| 深粉红色 | 0％   |

当达到警告电压或临界电压时，LED将缓慢或快速闪烁。注意：此模式需要启用电流传感器。如果您并没有此设备，则可以设置并使用虚拟电流计（请参阅电池章节）。

#### 纯闪烁（Blink）

此模式将使选定的LED闪烁，或从黑色闪烁到当前的设定颜色下。

#### 着陆时闪烁

当油门低于50%且已解锁时，此模式将使选定的LED闪烁，或从黑色闪烁到当前设定颜色下。

左右闪烁（拉森扫描仪，Cylon特效，来自《霹雳游侠》）

该模式复刻了霹雳游侠中机械Cylons和Kitt的“眼睛”特效。此覆盖层动画会使所有激活此功能的LED在某些时刻变暗，并在某些时刻变亮。不论解锁状态如何，动画都不会静止。

#### 模式和方向

此模式显示飞行模式和方向。

当此功能激活时，LED会根据模式、自身所处的网络位置和方向，显示不同的颜色。

LED的优先级：

* 标记为朝上或者朝下的LED
* 标记为面向西或东且在网格的西或东
* 标记为面向北或南且在网格的北或南

也就是说，朝南的LED优先权最低。

目前，LED模式和颜色之间的映射是固定的，无法更改。

#### 指示符

此模式将使与Pitch和Roll摇杆位置相对应的LED闪烁。即，它们指示飞行器的转向。

| 模式    | 方向 | LED颜色 |
| ----- | -- | ----- |
| 方向    | 北  | 白色    |
| 方向    | 东  | 暗紫    |
| 方向    | 南  | 红     |
| 方向    | 西  | 深粉红色  |
| 方向    | 上  | 蓝色    |
| 方向    | 下  | 橙子    |
|       |    |       |
| 无头模式  | 北  | 柠檬绿   |
| 无头模式  | 东  | 暗紫    |
| 无头模式  | 南  | 橙子    |
| 无头模式  | 西  | 深粉红色  |
| 无头模式  | 上  | 蓝色    |
| 无头模式  | 下  | 橙子    |
|       |    |       |
| 半自稳模式 | 北  | 蓝色    |
| 半自稳模式 | 东  | 暗紫    |
| 半自稳模式 | 南  | 黄色    |
| 半自稳模式 | 西  | 深粉红色  |
| 半自稳模式 | 上  | 蓝色    |
| 半自稳模式 | 下  | 橙子    |
|       |    |       |
| 自稳模式  | 北  | 青色    |
| 自稳模式  | 东  | 暗紫    |
| 自稳模式  | 南  | 黄色    |
| 自稳模式  | 西  | 深粉红色  |
| 自稳模式  | 上  | 蓝色    |
| 自稳模式  | 下  | 橙子    |
|       |    |       |
| 磁力计   | 北  | 薄荷绿   |
| 磁力计   | 东  | 暗紫    |
| 磁力计   | 南  | 橙子    |
| 磁力计   | 西  | 深粉红色  |
| 磁力计   | 上  | 蓝色    |
| 磁力计   | 下  | 橙子    |
|       |    |       |
| 气压计   | 北  | 浅蓝    |
| 气压计   | 东  | 暗紫    |
| 气压计   | 南  | 红     |
| 气压计   | 西  | 深粉红色  |
| 气压计   | 上  | 蓝色    |
| 气压计   | 下  | 橙子    |

#### 解锁状态

此模式将在解锁和上锁时，使LED颜色在绿色和蓝色之间切换。

注意：解锁状态不能与飞行模式一起使用。

#### 推力状态

此模式将会根据油门杆的位置将当前LED逐渐淡入HSB色彩空间的上一个/下一个颜色。当位于中油门时，颜色将不受影响，因此可以将其与方向混合使用用来指示方向和油门。通常来说，推力模式应该与“颜色”或“模式/方向”结合使用。

#### 推力环状态

此模式允许您使用一个或多个LED环（例如NeoPixel灯板）来实现跑马/彩虹灯特效。开启此模式的LED将以指定颜色重复发光。将黑色分配给开启推力环状态模式的LED可以防止LED点亮。

当LED仅仅设置推力环状态而未开启/设置其他功能时，效果最好。

LED方向/XY位置与LED的推力环状态无关。LED的顺序决定了LED的闪烁/跑马方式，而油门值则决定了动画速率的快慢。该动画仅在解锁后播放。

环上的每一个LED的颜色都可以互不相同，可以设置为最多16种颜色。例如，下列设置将使LED0设置为推力环状态，颜色为13。

```
led 0 2,2::R:13
```

LED灯带模式和推力环可以组合使用。

#### 纯色模式

该模式将允许你为LED指定特定颜色并永久亮起。

使用此模式时，X/Y的位置和方向将会被忽略。

其他模式将覆盖此模式或与此模式结合。

例如，要将LED0设置为永久亮起，颜色设置为10号，则请使用如下命令：

```
led 0 0,0::C:10
```

### 颜色

可以使用CLI命令`color`来配置颜色。

`color`命令具有零或两个参数 - 从零开始的色号和指示色相（Hue）、饱和度（Saturation）及色值（Value）。

另请参阅：<http://en.wikipedia.org/wiki/HSL_and_HSV>

如果调用此命令而不使用任何参数，它将打印出颜色配置，可以将其复制保存以供参考。

默认颜色配置如下：

| 编号 | 颜色   |
| -- | ---- |
| 0  | 黑色   |
| 1  | 白色   |
| 2  | 红色   |
| 3  | 橘色   |
| 4  | 黄色   |
| 5  | 柠檬绿  |
| 6  | 绿色   |
| 7  | 薄荷绿  |
| 8  | 青色   |
| 9  | 浅蓝   |
| 10 | 蓝色   |
| 11 | 深紫色  |
| 12 | 品红   |
| 13 | 深粉红色 |
| 14 | 黑色   |
| 15 | 黑色   |

```
color 0 0,0,0
color 1 0,255,255
color 2 0,0,255
color 3 30,0,255
color 4 60,0,255
color 5 90,0,255
color 6 120,0,255
color 7 150,0,255
color 8 180,0,255
color 9 210,0,255
color 10 240,0,255
color 11 270,0,255
color 12 300,0,255
color 13 330,0,255
color 14 0,0,0
color 15 0,0,0
```

### 模式颜色分配

可以使用CLI命令`mode_color`来配置模式的颜色。

* 无参调用时：列出所有模式的颜色
* 参数：`mode`，`function`，`color`

前7组模式（`mode`）序号为：

| 模式 | 名称    |
| -- | ----- |
| 0  | 方向    |
| 1  | 无头    |
| 2  | 半自稳   |
| 3  | 自稳    |
| 4  | 磁力计   |
| 5  | 气压计定高 |
| 6  | 特殊模式  |

其中前6个模式的`function`参数表如下：

| 功能 | 名称 |
| -- | -- |
| 0  | 北  |
| 1  | 东  |
| 2  | 南  |
| 3  | 西  |
| 4  | 向上 |
| 5  | 向下 |

特殊模式（Mode 6）的`function`参数表如下：

| 功能 | 名称         |
| -- | ---------- |
| 0  | 上锁         |
| 1  | 解锁         |
| 2  | 动画         |
| 3  | 背景色        |
| 4  | 闪烁背景色      |
| 5  | GPS：无卫星    |
| 6  | GPS：尚未定位   |
| 7  | GPS：3D定位成功 |

`color`形参的参数可从颜色数组（“调色板”或GUI中的）中选取。

示例（使用默认颜色）：

* 将解锁状态设置为红色：`mode_color 6 1 2`
* 将上锁状态设置为黄色：`mode_color 6 0 4`
* 将无头模式的南设置为青色：`modoe_color 1 2 8`

## LED灯珠定位问题

按照下图将LED切成小段。切割LED灯带之后，请使用电线将下一灯带的输入与上一灯带的输出相连。例如，5V输出接入到5V输入，GND与GND相连接，数据输出连接到数据输入。

默认朝向是飞机的头部（摄像头）背对着您，并且您正在从上方观察。

### 12 LED 配置示例

```
led 0 15,15:SD:IA:0
led 1 8,8:E:FW:0
led 2 8,7:E:FW:0
led 3 15,0:ND:IA:0
led 4 7,7:N:FW:0
led 5 8,7:N:FW:0
led 6 0,0:ND:IA:0
led 7 7,7:W:FW:0
led 8 7,8:W:FW:0
led 9 0,15:SD:IA:0
led 10 7,8:S:FW:0
led 11 8,8:S:FW:0
led 12 7,7:D:FW:0
led 13 8,7:D:FW:0
led 14 7,7:U:FW:0
led 15 8,7:U:FW:0
```

转换为实际位置：

```
     6             3
      \           /
       \   5-4   /
        \ FRONT /
    7,8 | 12-15 | 1,2
        /  BACK \
       /  10,11  \
      /           \
     9             0
       RING 16-27
```

LED0、3、6、9应该朝下放置在飞机下方。\
LED1-2、4-5、7-8和10-11应分别朝向东/北/西/南。\
LED12-13应朝下放置，LED14-15应该朝上放置，均放置在中部。\
尾部的LED环16-27应该朝南放置。

这是默认设置，因此如果您不想将LED上下放置在中间，只需要连接前12个LED。

### 16 LED 配置示例

```
led 0 15,15:SD:IA:0
led 1 8,8:E:FW:0
led 2 8,7:E:FW:0
led 3 15,0:ND:IA:0
led 4 7,7:N:FW:0
led 5 8,7:N:FW:0
led 6 0,0:ND:IA:0
led 7 7,7:W:FW:0
led 8 7,8:W:FW:0
led 9 0,15:SD:IA:0
led 10 7,8:S:FW:0
led 11 8,8:S:FW:0
led 12 7,7:D:FW:0
led 13 8,7:D:FW:0
led 14 7,7:U:FW:0
led 15 8,7:U:FW:0
```

转换为实际位置：

```
     6             3
      \           / 
       \   5-4   / 
      7 \ FRONT / 2
        | 12-15 | 
      8 /  BACK \ 1
       /  10-11  \
      /           \ 
     9             0
```

LED0、3、6、9应该朝下放置在飞机下方。\
LED1-2、4-5、7-8和10-11应分别朝向东/北/西/南。\
LED12-13应朝下放置，LED14-15应该朝上放置，均放置在中部。

### 28 LED 配置示例

```
#right rear cluster
led 0 9,9:S:FWT:0
led 1 10,10:S:FWT:0
led 2 11,11:S:IA:0
led 3 11,11:E:IA:0
led 4 10,10:E:AT:0
led 5 9,9:E:AT:0
# right front cluster
led 6 10,5:S:F:0
led 7 11,4:S:F:0
led 8 12,3:S:IA:0
led 9 12,2:N:IA:0
led 10 11,1:N:F:0
led 11 10,0:N:F:0
# center front cluster
led 12 7,0:N:FW:0
led 13 6,0:N:FW:0
led 14 5,0:N:FW:0
led 15 4,0:N:FW:0
# left front cluster
led 16 2,0:N:F:0
led 17 1,1:N:F:0
led 18 0,2:N:IA:0
led 19 0,3:W:IA:0
led 20 1,4:S:F:0
led 21 2,5:S:F:0
# left rear cluster
led 22 2,9:W:AT:0
led 23 1,10:W:AT:0
led 24 0,11:W:IA:0
led 25 0,11:S:IA:0
led 26 1,10:S:FWT:0
led 27 2,9:S:FWT:0
```

```
       16-18  9-11
19-21 \           / 6-8
       \  12-15  / 
        \ FRONT /
        /  BACK \
       /         \
22-24 /           \ 3-5
       25-27   0-2  
```

在这种情况下，所有LED应该朝外放置。

注意：此配置是专门为[Alien Spider AQ50D PRO 250mm机架](http://www.goodluckbuy.com/alien-spider-aq50d-pro-250mm-mini-quadcopter-carbon-fiber-micro-multicopter-frame.html)设计的。

## 故障排除

初次通电时，灯条上的所有LED灯珠都将被设置为白色。这意味着如果您的测量设备反应速度足够快的话，则可以检测电流消耗情况。大多数5050封装的LED灯珠的功耗为0.3W。这也意味着您可以确保灯条上每个LED的灯珠中的R、G、B都可以正常工作。经过短暂的延迟之后，LED将显示上锁时的颜色序列/电池电量不足警告序列。

您还应检查`LED_STRIP`功能是否已正确启用，并且与其他功能没有冲突


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://pitronic.gitbook.io/betaflight/configuration/led-strip-setup.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
