Skip to content

Commit 8a2256e

Browse files
committed
0.12 beta
1 parent eee2450 commit 8a2256e

File tree

20 files changed

+2134
-2225
lines changed

20 files changed

+2134
-2225
lines changed

.github/workflows/wled-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: PlatformIO CI
22

3-
on: [push]
3+
on: [push, pull_request]
44

55
jobs:
66
build:

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,17 @@
22

33
### Development versions after 0.11.1 release
44

5+
#### Build 2103200
6+
7+
- Version bump to 0.12.0-b0 "Hikari"
8+
- Added palette preview and search (PR #1637)
9+
- Added Reverse checkbox for PWM busses - reverses logic level for on
10+
- Fixed various problems with the Playlist feature (PR #1724)
11+
- Replaced "Layer" icon with "i" icon for Info button
12+
- Chunchun effect more fitting for various segment lengths (PR #1804)
13+
- Removed global reverse (in favor of individual bus reverse)
14+
- Removed some unused icons from UI icon font
15+
516
#### Build 2103130
617

718
- Added options for Auto Node discovery

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "wled",
3-
"version": "0.12.0-a0",
3+
"version": "0.12.0-b0",
44
"description": "Tools for WLED project",
55
"main": "tools/cdata.js",
66
"directories": {

platformio.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
default_envs = travis_esp8266, travis_esp32
1313

1414
# Release binaries
15-
; default_envs = nodemcuv2, esp01_1m_full, esp32dev
15+
; default_envs = nodemcuv2, esp01_1m_full, esp32dev, esp32_eth
1616

1717
# Single binaries (uncomment your board)
1818
; default_envs = nodemcuv2

wled00/FX.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -609,7 +609,6 @@ class WS2812FX {
609609
setPixelSegment(uint8_t n);
610610

611611
bool
612-
reverseMode = false, //is the entire LED strip reversed?
613612
gammaCorrectBri = false,
614613
gammaCorrectCol = true,
615614
applyToAllSelected = true,

wled00/FX_fcn.cpp

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -145,8 +145,6 @@ void WS2812FX::setPixelColor(uint16_t n, uint32_t c) {
145145
setPixelColor(n, r, g, b, w);
146146
}
147147

148-
#define REV(i) (_length - 1 - (i))
149-
150148
//used to map from segment index to physical pixel, taking into account grouping, offsets, reverse and mirroring
151149
uint16_t WS2812FX::realPixelIndex(uint16_t i) {
152150
int16_t iGroup = i * SEGMENT.groupLength();
@@ -162,8 +160,6 @@ uint16_t WS2812FX::realPixelIndex(uint16_t i) {
162160
}
163161

164162
realIndex += SEGMENT.start;
165-
/* Reverse the whole string */
166-
if (reverseMode) realIndex = REV(realIndex);
167163

168164
return realIndex;
169165
}
@@ -197,27 +193,22 @@ void WS2812FX::setPixelColor(uint16_t i, byte r, byte g, byte b, byte w)
197193
uint32_t col = ((w << 24) | (r << 16) | (g << 8) | (b));
198194

199195
/* Set all the pixels in the group, ensuring _skipFirstMode is honored */
200-
bool reversed = reverseMode ^ IS_REVERSE;
196+
bool reversed = IS_REVERSE;
201197
uint16_t realIndex = realPixelIndex(i);
202198

203199
for (uint16_t j = 0; j < SEGMENT.grouping; j++) {
204200
int16_t indexSet = realIndex + (reversed ? -j : j);
205-
int16_t indexSetRev = indexSet;
206-
if (reverseMode) indexSetRev = REV(indexSet);
207201
if (indexSet < customMappingSize) indexSet = customMappingTable[indexSet];
208-
if (indexSetRev >= SEGMENT.start && indexSetRev < SEGMENT.stop) {
202+
if (indexSet >= SEGMENT.start && indexSet < SEGMENT.stop) {
209203
busses.setPixelColor(indexSet + skip, col);
210204
if (IS_MIRROR) { //set the corresponding mirrored pixel
211-
if (reverseMode) {
212-
busses.setPixelColor(REV(SEGMENT.start) - indexSet + skip + REV(SEGMENT.stop) + 1, col);
213-
} else {
214-
busses.setPixelColor(SEGMENT.stop - indexSet + skip + SEGMENT.start - 1, col);
215-
}
205+
uint16_t indexMir = SEGMENT.stop - indexSet + SEGMENT.start - 1;
206+
if (indexMir < customMappingSize) indexMir = customMappingTable[indexMir];
207+
busses.setPixelColor(indexMir + skip, col);
216208
}
217209
}
218210
}
219211
} else { //live data, etc.
220-
if (reverseMode) i = REV(i);
221212
if (i < customMappingSize) i = customMappingTable[i];
222213

223214
uint32_t col = ((w << 24) | (r << 16) | (g << 8) | (b));

wled00/bus_manager.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,7 @@ class BusPwm : public Bus {
212212
ledcAttachPin(_pins[i], _ledcStart + i);
213213
#endif
214214
}
215+
reversed = bc.reversed;
215216
_valid = true;
216217
};
217218

@@ -245,6 +246,7 @@ class BusPwm : public Bus {
245246
uint8_t numPins = NUM_PWM_PINS(_type);
246247
for (uint8_t i = 0; i < numPins; i++) {
247248
uint8_t scaled = (_data[i] * _bri) / 255;
249+
if (reversed) scaled = 255 - scaled;
248250
#ifdef ESP8266
249251
analogWrite(_pins[i], scaled);
250252
#else

wled00/cfg.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,6 @@ void deserializeConfig() {
9595

9696
CJSON(strip.ablMilliampsMax, hw_led[F("maxpwr")]);
9797
CJSON(strip.milliampsPerLed, hw_led[F("ledma")]);
98-
CJSON(strip.reverseMode, hw_led["rev"]);
9998
CJSON(strip.rgbwMode, hw_led[F("rgbwm")]);
10099

101100
JsonArray ins = hw_led["ins"];
@@ -135,6 +134,7 @@ void deserializeConfig() {
135134
if (mem <= MAX_LED_MEMORY) busses.add(bc);
136135
}
137136
strip.finalizeInit(useRGBW, ledCount, skipFirstLed);
137+
if (hw_led["rev"]) busses.getBus(0)->reversed = true; //set 0.11 global reversed setting for first bus
138138

139139
JsonObject hw_btn_ins_0 = hw[F("btn")][F("ins")][0];
140140
CJSON(buttonEnabled, hw_btn_ins_0["type"]);
@@ -450,7 +450,6 @@ void serializeConfig() {
450450
hw_led[F("total")] = ledCount;
451451
hw_led[F("maxpwr")] = strip.ablMilliampsMax;
452452
hw_led[F("ledma")] = strip.milliampsPerLed;
453-
hw_led["rev"] = strip.reverseMode;
454453
hw_led[F("rgbwm")] = strip.rgbwMode;
455454

456455
JsonArray hw_led_ins = hw_led.createNestedArray("ins");

wled00/data/index.css

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

wled00/data/index.htm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
<button id="buttonNl" onclick="toggleNl()"><i class="icons">&#xe2a2;</i><p class="tab-label">Timer</p></button>
2424
<button id="buttonSync" onclick="toggleSync()"><i class="icons">&#xe116;</i><p class="tab-label">Sync</p></button>
2525
<button id="buttonSr" onclick="toggleLiveview()"><i class="icons">&#xe410;</i><p class="tab-label">Peek</p></button>
26-
<button id="buttonI" onclick="toggleInfo()"><i class="icons">&#xe34b;</i><p class="tab-label">Info</p></button>
26+
<button id="buttonI" onclick="toggleInfo()"><i class="icons">&#xe066;</i><p class="tab-label">Info</p></button>
2727
<button id="buttonNodes" onclick="toggleNodes()"><i class="icons">&#xe22d;</i><p class="tab-label">Nodes</p></button></div>
2828
<button onclick="window.location.href = '/settings';"><i class="icons">&#xe0a2;</i><p class="tab-label">Config</p></button>
2929
<button id="buttonPcm" onclick="togglePcMode(true)"><i class="icons">&#xe23d;</i><p class="tab-label">PC Mode</p></button>

0 commit comments

Comments
 (0)