Fixed transitions and gamma
This commit is contained in:
parent
40aaac5868
commit
6c9d161950
@ -6,7 +6,7 @@
|
|||||||
#define LEDPIN 2 //strip pin. Any for ESP32, gpio2 or 3 is recommended for ESP8266 (gpio2/3 are labeled D4/RX on NodeMCU and Wemos)
|
#define LEDPIN 2 //strip pin. Any for ESP32, gpio2 or 3 is recommended for ESP8266 (gpio2/3 are labeled D4/RX on NodeMCU and Wemos)
|
||||||
//#define USE_APA102 // Uncomment for using APA102 LEDs.
|
//#define USE_APA102 // Uncomment for using APA102 LEDs.
|
||||||
#define BTNPIN 0 //button pin. Needs to have pullup (gpio0 recommended)
|
#define BTNPIN 0 //button pin. Needs to have pullup (gpio0 recommended)
|
||||||
#define IR_PIN -1 //infrared pin (-1 to disable)
|
#define IR_PIN 4 //infrared pin (-1 to disable)
|
||||||
#define RLYPIN 12 //pin for relay, will be set HIGH if LEDs are on (-1 to disable). Also usable for standby leds, triggers,...
|
#define RLYPIN 12 //pin for relay, will be set HIGH if LEDs are on (-1 to disable). Also usable for standby leds, triggers,...
|
||||||
#define AUXPIN -1 //debug auxiliary output pin (-1 to disable)
|
#define AUXPIN -1 //debug auxiliary output pin (-1 to disable)
|
||||||
|
|
||||||
|
@ -350,8 +350,9 @@ void WS2812FX::setColor(uint8_t slot, uint32_t c) {
|
|||||||
|
|
||||||
void WS2812FX::setBrightness(uint8_t b) {
|
void WS2812FX::setBrightness(uint8_t b) {
|
||||||
if (_brightness == b) return;
|
if (_brightness == b) return;
|
||||||
_brightness = gammaCorrectBri ? gamma8(b) : b;
|
_brightness = (gammaCorrectBri) ? gamma8(b) : b;
|
||||||
if (SEGENV.next_time > millis() + 20) show(); //apply brightness change immediately if no refresh soon
|
_segment_index = 0;
|
||||||
|
if (SEGENV.next_time > millis() + 22) show();//apply brightness change immediately if no refresh soon
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t WS2812FX::getMode(void) {
|
uint8_t WS2812FX::getMode(void) {
|
||||||
@ -535,6 +536,7 @@ void WS2812FX::unlockAll()
|
|||||||
|
|
||||||
void WS2812FX::setTransitionMode(bool t)
|
void WS2812FX::setTransitionMode(bool t)
|
||||||
{
|
{
|
||||||
|
_segment_index = 0;
|
||||||
SEGMENT.setOption(7,t);
|
SEGMENT.setOption(7,t);
|
||||||
if (!t) return;
|
if (!t) return;
|
||||||
unsigned long waitMax = millis() + 20; //refresh after 20 ms if transition enabled
|
unsigned long waitMax = millis() + 20; //refresh after 20 ms if transition enabled
|
||||||
@ -779,7 +781,7 @@ void WS2812FX::handle_palette(void)
|
|||||||
|
|
||||||
uint32_t WS2812FX::color_from_palette(uint16_t i, bool mapping, bool wrap, uint8_t mcol, uint8_t pbri)
|
uint32_t WS2812FX::color_from_palette(uint16_t i, bool mapping, bool wrap, uint8_t mcol, uint8_t pbri)
|
||||||
{
|
{
|
||||||
if (SEGMENT.palette == 0 && mcol < 3) return SEGMENT.colors[mcol]; //WS2812FX default
|
if (SEGMENT.palette == 0 && mcol < 3) return SEGCOLOR(mcol); //WS2812FX default
|
||||||
uint8_t paletteIndex = i;
|
uint8_t paletteIndex = i;
|
||||||
if (mapping) paletteIndex = map(i,SEGMENT.start,SEGMENT.stop-1,0,255);
|
if (mapping) paletteIndex = map(i,SEGMENT.start,SEGMENT.stop-1,0,255);
|
||||||
if (!wrap) paletteIndex = scale8(paletteIndex, 240); //cut off blend at palette "end"
|
if (!wrap) paletteIndex = scale8(paletteIndex, 240); //cut off blend at palette "end"
|
||||||
|
@ -17,9 +17,6 @@
|
|||||||
button {
|
button {
|
||||||
outline: none;
|
outline: none;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
|
||||||
|
|
||||||
.btn {
|
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
margin: 10px;
|
margin: 10px;
|
||||||
width: 230px;
|
width: 230px;
|
||||||
@ -49,9 +46,9 @@
|
|||||||
If you encounter a bug or have a question/feature suggestion, feel free to open a GitHub issue!<br><br>
|
If you encounter a bug or have a question/feature suggestion, feel free to open a GitHub issue!<br><br>
|
||||||
<b>Next steps:</b><br><br>
|
<b>Next steps:</b><br><br>
|
||||||
Connect the module to your local WiFi here!<br>
|
Connect the module to your local WiFi here!<br>
|
||||||
<button class="btn" onclick="window.location.href='/settings/wifi'">WiFi settings</button><br>
|
<button onclick="window.location.href='/settings/wifi'">WiFi settings</button><br>
|
||||||
<i>Just trying this out in AP mode?</i><br>
|
<i>Just trying this out in AP mode?</i><br>
|
||||||
<button class="btn" onclick="window.location.href='/sliders'">To the controls!</button>
|
<button onclick="window.location.href='/sliders'">To the controls!</button>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
@ -98,7 +98,7 @@
|
|||||||
|
|
||||||
|
|
||||||
//version code in format yymmddb (b = daily build)
|
//version code in format yymmddb (b = daily build)
|
||||||
#define VERSION 1909122
|
#define VERSION 1909194
|
||||||
char versionString[] = "0.8.5";
|
char versionString[] = "0.8.5";
|
||||||
|
|
||||||
|
|
||||||
|
@ -111,6 +111,7 @@ void handleSettingsSet(AsyncWebServerRequest *request, byte subPage)
|
|||||||
nightlightTargetBri = request->arg("TB").toInt();
|
nightlightTargetBri = request->arg("TB").toInt();
|
||||||
t = request->arg("TL").toInt();
|
t = request->arg("TL").toInt();
|
||||||
if (t > 0) nightlightDelayMinsDefault = t;
|
if (t > 0) nightlightDelayMinsDefault = t;
|
||||||
|
nightlightDelayMins = nightlightDelayMinsDefault;
|
||||||
nightlightFade = request->hasArg("TW");
|
nightlightFade = request->hasArg("TW");
|
||||||
|
|
||||||
t = request->arg("PB").toInt();
|
t = request->arg("PB").toInt();
|
||||||
|
@ -148,8 +148,6 @@ void wledInit()
|
|||||||
void beginStrip()
|
void beginStrip()
|
||||||
{
|
{
|
||||||
// Initialize NeoPixel Strip and button
|
// Initialize NeoPixel Strip and button
|
||||||
strip.setColor(0, 0);
|
|
||||||
strip.setBrightness(255);
|
|
||||||
|
|
||||||
#ifdef BTNPIN
|
#ifdef BTNPIN
|
||||||
pinMode(BTNPIN, INPUT_PULLUP);
|
pinMode(BTNPIN, INPUT_PULLUP);
|
||||||
|
Loading…
Reference in New Issue
Block a user