From 9381be0f35d59cd304df1e69df9e21f982b778ac Mon Sep 17 00:00:00 2001 From: SammysHP Date: Sun, 4 Aug 2024 14:00:41 +0200 Subject: Add Wurkkos TS10 RGB with reduced FET output --- MODELS | 1 + hw/wurkkos/ts10/rgbaux-lowfet/anduril.h | 15 +++++++++++++++ hw/wurkkos/ts10/rgbaux-lowfet/model | 1 + 3 files changed, 17 insertions(+) create mode 100644 hw/wurkkos/ts10/rgbaux-lowfet/anduril.h create mode 100644 hw/wurkkos/ts10/rgbaux-lowfet/model diff --git a/MODELS b/MODELS index 2a6e114..caa4bf5 100644 --- a/MODELS +++ b/MODELS @@ -70,6 +70,7 @@ Model MCU Name 0623 attiny1616 sofirn-lt1s-pro 0631 attiny1616 sofirn-sp10-pro 0632 attiny1616 sofirn-sc21-pro +0712 attiny1616 wurkkos-ts10-rgbaux-lowfet 0713 attiny1616 wurkkos-ts10-rgbaux 0714 attiny1616 wurkkos-ts10 0715 attiny1616 wurkkos-ts25 (may need 0716 / 0717 on some models) diff --git a/hw/wurkkos/ts10/rgbaux-lowfet/anduril.h b/hw/wurkkos/ts10/rgbaux-lowfet/anduril.h new file mode 100644 index 0000000..d4bf1ce --- /dev/null +++ b/hw/wurkkos/ts10/rgbaux-lowfet/anduril.h @@ -0,0 +1,15 @@ +// Wurkkos TS10 (RGB aux version with reduced FET output) config options for Anduril +// Copyright (C) 2024 Selene ToyKeeper +// SPDX-License-Identifier: GPL-3.0-or-later +#pragma once + +// most things are the same as TS10-rgbaux +#include "wurkkos/ts10/rgbaux/anduril.h" + +#undef PWM1_LEVELS +#undef PWM2_LEVELS +#undef PWM_TOPS + +#define PWM1_LEVELS 1, 1, 2, 2, 3, 3, 4, 5, 6, 6, 8, 9, 9, 10, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 23, 23, 24, 25, 26, 26, 27, 27, 28, 28, 29, 29, 30, 30, 31, 31, 32, 32, 33, 33, 34, 35, 36, 37, 38, 40, 41, 43, 45, 47, 50, 53, 56, 60, 63, 67, 71, 75, 79, 84, 89, 94, 99,104,110,116,122,129,136,143,150,158,166,174,183,192,202,211,222,232,243,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255 +#define PWM2_LEVELS 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 17, 19, 20, 22, 24, 26, 27, 29, 31, 33, 35, 37, 39, 42, 44, 46, 48, 51, 53, 55, 58, 60, 63, 65, 68, 70, 73, 75, 78, 81, 84, 86, 89, 92, 95, 98,101,103,106,109,112,116,119,122,125,128 +#define PWM_TOPS 4095,2893,3917,2806,3252,2703,2684,2660,2640,2370,3000,2900,2630,2549,2246,2193,2030,1961,1889,1716,1642,1569,1497,1428,1290,1232,1176,1122,1070,976,932,890,849,779,745,685,656,605,579,536,514,476,457,424,407,379,364,340,327,314,302,291,280,276,266,262,257,253,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255 diff --git a/hw/wurkkos/ts10/rgbaux-lowfet/model b/hw/wurkkos/ts10/rgbaux-lowfet/model new file mode 100644 index 0000000..ef15105 --- /dev/null +++ b/hw/wurkkos/ts10/rgbaux-lowfet/model @@ -0,0 +1 @@ +0712 -- cgit v1.2.3 From 4f7f90df760f1bd215ce1b2ec671d62b332690c6 Mon Sep 17 00:00:00 2001 From: Selene ToyKeeper Date: Sun, 4 Aug 2024 06:03:38 -0600 Subject: removed "Off -> 3H" strobe/mood mode access from Extended Simple UI fixes #85 The Simple UI is meant to be relatively child-safe, and the strobe modes are not. Users who want unsafe features enabled should use the full UI instead... and the strobe + mood modes should also have some safety features added, on drivers which have enough ROM to hold extra code. --- docs/anduril-manual.md | 12 ++++-------- ui/anduril/off-mode.c | 26 +++++++++++++------------- 2 files changed, 17 insertions(+), 21 deletions(-) diff --git a/docs/anduril-manual.md b/docs/anduril-manual.md index 68c577c..cdf0dd1 100644 --- a/docs/anduril-manual.md +++ b/docs/anduril-manual.md @@ -142,17 +142,13 @@ manufacturer's request. This typically includes: - `Ramp -> 3C`: Toggle smooth or stepped ramp shape. - `Ramp -> 5H`: Sunset timer. - - `Off -> 3H`: Access the strobe/mood modes. - `Off -> 7C/7H`: Change the aux LED pattern. - `Lockout -> 7C/7H`: Change the aux LED pattern. -If your light uses Extended Simple UI, *think twice about letting kids use it*, -because the strobe/mood modes were not intended to be used in simple mode, and -can reach full power with no thermal regulation. - -It is likely that strobe/mood modes will be removed from Extended Simple UI in -the future, for safety reasons, or maybe have already been removed. But that -doesn't help with older firmware, so be careful. +Old versions (before 2024-08) also allowed access to strobe/mood modes, which +can be dangerous, so if you have one of those, *think twice about letting kids +use it*. Those modes were never intended to be child-safe, and can reach full +power with no thermal regulation. ### Configuring Simple UI diff --git a/ui/anduril/off-mode.c b/ui/anduril/off-mode.c index 36d771c..f699c89 100644 --- a/ui/anduril/off-mode.c +++ b/ui/anduril/off-mode.c @@ -264,19 +264,6 @@ uint8_t off_state(Event event, uint16_t arg) { #endif // ifndef USE_EXTENDED_SIMPLE_UI #endif // ifdef USE_SIMPLE_UI - // click, click, long-click: strobe mode - #ifdef USE_STROBE_STATE - else if (event == EV_click3_hold) { - set_state(strobe_state, 0); - return EVENT_HANDLED; - } - #elif defined(USE_BORING_STROBE_STATE) - else if (event == EV_click3_hold) { - set_state(boring_strobe_state, 0); - return EVENT_HANDLED; - } - #endif - #ifdef USE_INDICATOR_LED // 7 clicks: change indicator LED mode else if (event == EV_7clicks) { @@ -334,6 +321,19 @@ uint8_t off_state(Event event, uint16_t arg) { } #endif // ifdef USE_EXTENDED_SIMPLE_UI + // click, click, long-click: strobe mode + #ifdef USE_STROBE_STATE + else if (event == EV_click3_hold) { + set_state(strobe_state, 0); + return EVENT_HANDLED; + } + #elif defined(USE_BORING_STROBE_STATE) + else if (event == EV_click3_hold) { + set_state(boring_strobe_state, 0); + return EVENT_HANDLED; + } + #endif + // 10 clicks: enable simple UI else if (event == EV_10clicks) { blink_once(); -- cgit v1.2.3 From 31b8967d728ea0519a135302bd27baaca563665a Mon Sep 17 00:00:00 2001 From: Selene ToyKeeper Date: Tue, 20 Aug 2024 15:34:14 -0600 Subject: wurkkos-ts10-rgbaux: limit max power to 200/255, at Wurkkos's request (because otherwise the light destroys its own LEDs at full power) --- hw/wurkkos/ts10/rgbaux/anduril.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/wurkkos/ts10/rgbaux/anduril.h b/hw/wurkkos/ts10/rgbaux/anduril.h index a9d4f90..c1c1e0c 100644 --- a/hw/wurkkos/ts10/rgbaux/anduril.h +++ b/hw/wurkkos/ts10/rgbaux/anduril.h @@ -31,7 +31,8 @@ // level_calc.py 5.7895 2 150 7135 0 0.1 125.25 FET 1 10 1200 --pwm dyn:61:4096:255:2.5 --clock 5:11:2.0 // (with heavy manual tweaks up to ~15/150) #define PWM1_LEVELS 1, 1, 2, 2, 3, 3, 4, 5, 6, 6, 8, 9, 9, 10, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 23, 23, 24, 25, 26, 26, 27, 27, 28, 28, 29, 29, 30, 30, 31, 31, 32, 32, 33, 33, 34, 35, 36, 37, 38, 40, 41, 43, 45, 47, 50, 53, 56, 60, 63, 67, 71, 75, 79, 84, 89, 94, 99,104,110,116,122,129,136,143,150,158,166,174,183,192,202,211,222,232,243,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0 -#define PWM2_LEVELS 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 5, 7, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 29, 31, 34, 37, 39, 42, 45, 48, 51, 54, 58, 61, 65, 68, 72, 76, 80, 84, 88, 93, 97,102,107,112,117,122,127,133,139,145,151,157,163,170,177,183,191,198,205,213,221,229,238,246,255 +#define PWM2_LEVELS 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 5, 6, 7, 9, 10, 12, 14, 15, 17, 18, 20, 22, 24, 26, 29, 30, 32, 35, 37, 40, 42, 45, 47, 50, 53, 56, 59, 62, 65, 69, 72, 76, 80, 83, 87, 91, 95, 99,104,109,113,118,123,127,133,138,143,149,155,160,167,173,179,186,192,200 +//#define PWM2_LEVELS 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 5, 7, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 29, 31, 34, 37, 39, 42, 45, 48, 51, 54, 58, 61, 65, 68, 72, 76, 80, 84, 88, 93, 97,102,107,112,117,122,127,133,139,145,151,157,163,170,177,183,191,198,205,213,221,229,238,246,255 #define PWM_TOPS 4095,2893,3917,2806,3252,2703,2684,2660,2640,2370,3000,2900,2630,2549,2246,2193,2030,1961,1889,1716,1642,1569,1497,1428,1290,1232,1176,1122,1070,976,932,890,849,779,745,685,656,605,579,536,514,476,457,424,407,379,364,340,327,314,302,291,280,276,266,262,257,253,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255 #define MAX_1x7135 90 #define MIN_THERM_STEPDOWN 60 -- cgit v1.2.3 From 2c6ebc9de013e97c808ce51e6fb044c6bf36f18c Mon Sep 17 00:00:00 2001 From: Selene ToyKeeper Date: Wed, 21 Aug 2024 22:17:19 -0600 Subject: merged SammysHP's fix for TS10 lower-Vf LEDs, reverted my fix (they are now two separate build targets) --- hw/wurkkos/ts10/rgbaux-lowfet/README.md | 12 ++++++++++++ hw/wurkkos/ts10/rgbaux-lowfet/anduril.h | 1 + hw/wurkkos/ts10/rgbaux/anduril.h | 6 ++++-- 3 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 hw/wurkkos/ts10/rgbaux-lowfet/README.md diff --git a/hw/wurkkos/ts10/rgbaux-lowfet/README.md b/hw/wurkkos/ts10/rgbaux-lowfet/README.md new file mode 100644 index 0000000..2173723 --- /dev/null +++ b/hw/wurkkos/ts10/rgbaux-lowfet/README.md @@ -0,0 +1,12 @@ +# Wurkkos TS10 w/ RGB aux + reduced-power FET + +Starting in mid-2024, some TS10 models were built with LEDs with lower Vf, and +they destroy themselves when operated at full power from the direct-drive FET. +This branch runs at half power instead, to avoid hardware damage. + +Regardless, sustained turbo is not recommended on any TS10 models, because they +are overpowered for their size and LED type. + +- https://budgetlightforum.com/t/psa-anyone-with-a-new-ts10-do-not-flash-it-with-tks-ts10-rgbaux-firmware-or-turbo-will-fry-its-leds/225124 +- https://www.reddit.com/r/flashlight/comments/1emyyq9/psa_dont_flash_wurkkosts10rgbauxhex_to_your_new/ + diff --git a/hw/wurkkos/ts10/rgbaux-lowfet/anduril.h b/hw/wurkkos/ts10/rgbaux-lowfet/anduril.h index d4bf1ce..5d012a5 100644 --- a/hw/wurkkos/ts10/rgbaux-lowfet/anduril.h +++ b/hw/wurkkos/ts10/rgbaux-lowfet/anduril.h @@ -11,5 +11,6 @@ #undef PWM_TOPS #define PWM1_LEVELS 1, 1, 2, 2, 3, 3, 4, 5, 6, 6, 8, 9, 9, 10, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 23, 23, 24, 25, 26, 26, 27, 27, 28, 28, 29, 29, 30, 30, 31, 31, 32, 32, 33, 33, 34, 35, 36, 37, 38, 40, 41, 43, 45, 47, 50, 53, 56, 60, 63, 67, 71, 75, 79, 84, 89, 94, 99,104,110,116,122,129,136,143,150,158,166,174,183,192,202,211,222,232,243,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255 +// FET half power: #define PWM2_LEVELS 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 15, 17, 19, 20, 22, 24, 26, 27, 29, 31, 33, 35, 37, 39, 42, 44, 46, 48, 51, 53, 55, 58, 60, 63, 65, 68, 70, 73, 75, 78, 81, 84, 86, 89, 92, 95, 98,101,103,106,109,112,116,119,122,125,128 #define PWM_TOPS 4095,2893,3917,2806,3252,2703,2684,2660,2640,2370,3000,2900,2630,2549,2246,2193,2030,1961,1889,1716,1642,1569,1497,1428,1290,1232,1176,1122,1070,976,932,890,849,779,745,685,656,605,579,536,514,476,457,424,407,379,364,340,327,314,302,291,280,276,266,262,257,253,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255 diff --git a/hw/wurkkos/ts10/rgbaux/anduril.h b/hw/wurkkos/ts10/rgbaux/anduril.h index c1c1e0c..df0935a 100644 --- a/hw/wurkkos/ts10/rgbaux/anduril.h +++ b/hw/wurkkos/ts10/rgbaux/anduril.h @@ -31,8 +31,10 @@ // level_calc.py 5.7895 2 150 7135 0 0.1 125.25 FET 1 10 1200 --pwm dyn:61:4096:255:2.5 --clock 5:11:2.0 // (with heavy manual tweaks up to ~15/150) #define PWM1_LEVELS 1, 1, 2, 2, 3, 3, 4, 5, 6, 6, 8, 9, 9, 10, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 23, 23, 24, 25, 26, 26, 27, 27, 28, 28, 29, 29, 30, 30, 31, 31, 32, 32, 33, 33, 34, 35, 36, 37, 38, 40, 41, 43, 45, 47, 50, 53, 56, 60, 63, 67, 71, 75, 79, 84, 89, 94, 99,104,110,116,122,129,136,143,150,158,166,174,183,192,202,211,222,232,243,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0 -#define PWM2_LEVELS 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 5, 6, 7, 9, 10, 12, 14, 15, 17, 18, 20, 22, 24, 26, 29, 30, 32, 35, 37, 40, 42, 45, 47, 50, 53, 56, 59, 62, 65, 69, 72, 76, 80, 83, 87, 91, 95, 99,104,109,113,118,123,127,133,138,143,149,155,160,167,173,179,186,192,200 -//#define PWM2_LEVELS 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 5, 7, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 29, 31, 34, 37, 39, 42, 45, 48, 51, 54, 58, 61, 65, 68, 72, 76, 80, 84, 88, 93, 97,102,107,112,117,122,127,133,139,145,151,157,163,170,177,183,191,198,205,213,221,229,238,246,255 +// FET full power: +#define PWM2_LEVELS 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 5, 7, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 29, 31, 34, 37, 39, 42, 45, 48, 51, 54, 58, 61, 65, 68, 72, 76, 80, 84, 88, 93, 97,102,107,112,117,122,127,133,139,145,151,157,163,170,177,183,191,198,205,213,221,229,238,246,255 +// FET limited to 200 / 255: +//#define PWM2_LEVELS 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 5, 6, 7, 9, 10, 12, 14, 15, 17, 18, 20, 22, 24, 26, 29, 30, 32, 35, 37, 40, 42, 45, 47, 50, 53, 56, 59, 62, 65, 69, 72, 76, 80, 83, 87, 91, 95, 99,104,109,113,118,123,127,133,138,143,149,155,160,167,173,179,186,192,200 #define PWM_TOPS 4095,2893,3917,2806,3252,2703,2684,2660,2640,2370,3000,2900,2630,2549,2246,2193,2030,1961,1889,1716,1642,1569,1497,1428,1290,1232,1176,1122,1070,976,932,890,849,779,745,685,656,605,579,536,514,476,457,424,407,379,364,340,327,314,302,291,280,276,266,262,257,253,253,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255 #define MAX_1x7135 90 #define MIN_THERM_STEPDOWN 60 -- cgit v1.2.3