aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSelene ToyKeeper2023-05-30 06:17:01 -0600
committerSelene ToyKeeper2023-05-30 06:17:01 -0600
commit83e7dc7cc45e789b819c1dec2f419252ebdf5eae (patch)
treeed14ebcbc4d3b16436d2025defe77b63c6533952
parentgradual adjustments: handle 0-to-255 in one step on the way up too, not just ... (diff)
downloadanduril-83e7dc7cc45e789b819c1dec2f419252ebdf5eae.tar.gz
anduril-83e7dc7cc45e789b819c1dec2f419252ebdf5eae.tar.bz2
anduril-83e7dc7cc45e789b819c1dec2f419252ebdf5eae.zip
synced configs between D4v2 and KR4
-rw-r--r--hwdef-emisar-d4v2.h4
-rw-r--r--hwdef-noctigon-kr4.h40
-rw-r--r--spaghetti-monster/anduril/cfg-emisar-d4v2.h4
-rw-r--r--spaghetti-monster/anduril/cfg-noctigon-kr4.h27
4 files changed, 41 insertions, 34 deletions
diff --git a/hwdef-emisar-d4v2.h b/hwdef-emisar-d4v2.h
index a502421..728d9e4 100644
--- a/hwdef-emisar-d4v2.h
+++ b/hwdef-emisar-d4v2.h
@@ -64,7 +64,7 @@ enum CHANNEL_MODES {
#define CHANNEL_HAS_ARGS 0b00000000
// no args
//#define USE_CHANNEL_MODE_ARGS
-//#define CHANNEL_MODE_ARGS 0,0,0,0
+//#define CHANNEL_MODE_ARGS 0,0,0,0,0,0,0,0
#define SET_LEVEL_MODES set_level_main, \
set_level_auxred, \
@@ -105,7 +105,7 @@ enum CHANNEL_MODES {
// DD FET channel
#define CH2_PIN PA6 // pin 1, DD FET PWM
-#define CH2_PWM OCR1B // OCR1B is the output compare register for PB1
+#define CH2_PWM OCR1B // OCR1B is the output compare register for PA6
// e-switch
#define SWITCH_PIN PA2 // pin 5
diff --git a/hwdef-noctigon-kr4.h b/hwdef-noctigon-kr4.h
index d6c33ff..806aeab 100644
--- a/hwdef-noctigon-kr4.h
+++ b/hwdef-noctigon-kr4.h
@@ -48,30 +48,48 @@
// channel modes:
// * 0. linear + DD FET stacked
// * 1. aux red
-// * 2. aux green
-// * 3. aux blue
-#define NUM_CHANNEL_MODES 4
-#define CM_MAIN 0
-#define CM_AUXRED 1
-#define CM_AUXGRN 2
-#define CM_AUXBLU 3
-
-#define DEFAULT_CHANNEL_MODE CM_MAIN
+// * 2. aux yellow
+// * 3. aux green
+// * 4. aux cyan
+// * 5. aux blue
+// * 6. aux purple
+// * 7. aux white
+#define NUM_CHANNEL_MODES 8
+enum CHANNEL_MODES {
+ CM_MAIN = 0,
+ CM_AUXRED,
+ CM_AUXYEL,
+ CM_AUXGRN,
+ CM_AUXCYN,
+ CM_AUXBLU,
+ CM_AUXPRP,
+ CM_AUXWHT,
+};
+
+#define DEFAULT_CHANNEL_MODE CM_MAIN
#define CHANNEL_MODES_ENABLED 0b00000001
#define CHANNEL_HAS_ARGS 0b00000000
// no args
//#define USE_CHANNEL_MODE_ARGS
-//#define CHANNEL_MODE_ARGS 0,0,0,0
+//#define CHANNEL_MODE_ARGS 0,0,0,0,0,0,0,0
#define SET_LEVEL_MODES set_level_main, \
set_level_auxred, \
+ set_level_auxyel, \
set_level_auxgrn, \
- set_level_auxblu
+ set_level_auxcyn, \
+ set_level_auxblu, \
+ set_level_auxprp, \
+ set_level_auxwht
// gradual ticking for thermal regulation
#define GRADUAL_TICK_MODES gradual_tick_main, \
gradual_tick_null, \
gradual_tick_null, \
+ gradual_tick_null, \
+ gradual_tick_null, \
+ gradual_tick_null, \
+ gradual_tick_null, \
gradual_tick_null
diff --git a/spaghetti-monster/anduril/cfg-emisar-d4v2.h b/spaghetti-monster/anduril/cfg-emisar-d4v2.h
index f68e50f..0f0bb17 100644
--- a/spaghetti-monster/anduril/cfg-emisar-d4v2.h
+++ b/spaghetti-monster/anduril/cfg-emisar-d4v2.h
@@ -45,8 +45,8 @@
// show each channel while it scroll by in the menu
#define USE_CONFIG_COLORS
-// blink numbers on the aux LEDs by default
-#define DEFAULT_BLINK_CHANNEL CM_AUXWHT
+// blink numbers on the main LEDs by default (but allow user to change it)
+#define DEFAULT_BLINK_CHANNEL CM_MAIN
// use aux red + aux blue for police strobe
#define USE_POLICE_COLOR_STROBE_MODE
diff --git a/spaghetti-monster/anduril/cfg-noctigon-kr4.h b/spaghetti-monster/anduril/cfg-noctigon-kr4.h
index 78c76de..d2e8107 100644
--- a/spaghetti-monster/anduril/cfg-noctigon-kr4.h
+++ b/spaghetti-monster/anduril/cfg-noctigon-kr4.h
@@ -9,18 +9,6 @@
#include "hank-cfg.h"
// ATTINY: 1634
-// this light has three aux LED channels: R, G, B
-#define USE_AUX_RGB_LEDS
-// the aux LEDs are front-facing, so turn them off while main LEDs are on
-// it also has an independent LED in the button (D4v2.5 titanium/brass only)
-#define USE_BUTTON_LED
-// TODO: the whole "indicator LED" thing needs to be refactored into
-// "aux LED(s)" and "button LED(s)" since they work a bit differently
-// enabling this option breaks the button LED on D4v2.5
-#ifdef USE_INDICATOR_LED_WHILE_RAMPING
-#undef USE_INDICATOR_LED_WHILE_RAMPING
-#endif
-
// brightness w/ SST-20 4000K LEDs:
// 0/1023: 0.35 lm
// 1/1023: 2.56 lm
@@ -31,9 +19,9 @@
// nice low lows, but might have visible ripple on some lights:
// maxreg at 130, dynamic PWM: level_calc.py 5.01 2 149 7135 1 0.3 1740 FET 1 10 3190 --pwm dyn:64:16384:255
// (plus one extra level at the beginning for moon)
-#define PWM1_LEVELS 0,1,1,2,2,3,4,5,6,7,8,9,11,12,14,16,17,19,22,24,26,29,31,34,37,40,43,46,49,53,56,60,63,67,71,74,78,82,86,89,93,96,99,103,105,108,110,112,114,115,116,116,115,114,112,109,106,101,95,89,81,71,60,48,34,19,20,21,22,23,24,26,27,28,30,31,32,34,36,37,39,41,43,45,47,49,51,53,56,58,61,63,66,69,72,75,78,81,84,88,91,95,99,103,107,111,115,119,124,129,133,138,143,149,154,159,165,171,177,183,189,196,203,210,217,224,231,239,247,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,20,30,41,52,63,75,87,99,112,125,138,151,165,179,194,208,224,239,255
-#define PWM_TOPS 16383,16383,11750,14690,9183,12439,13615,13955,13877,13560,13093,12529,13291,12513,12756,12769,11893,11747,12085,11725,11329,11316,10851,10713,10518,10282,10016,9729,9428,9298,8971,8794,8459,8257,8043,7715,7497,7275,7052,6753,6538,6260,5994,5798,5501,5271,5006,4758,4525,4268,4030,3775,3508,3263,3010,2752,2517,2256,1998,1763,1512,1249,994,749,497,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,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 PWM1_LEVELS 0,1,1,2,2,3,4,5,6,7,8,9,11,12,14,16,17,19,22,24,26,29,31,34,37,40,43,46,49,53,56,60,63,67,71,74,78,82,86,89,93,96,99,103,105,108,110,112,114,115,116,116,115,114,112,109,106,101,95,89,81,71,60,48,34,19,20,21,22,23,24,26,27,28,30,31,32,34,36,37,39,41,43,45,47,49,51,53,56,58,61,63,66,69,72,75,78,81,84,88,91,95,99,103,107,111,115,119,124,129,133,138,143,149,154,159,165,171,177,183,189,196,203,210,217,224,231,239,247,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,20,30,41,52,63,75,87,99,112,125,138,151,165,179,194,208,224,239,255
+#define PWM_TOPS 16383,16383,11750,14690,9183,12439,13615,13955,13877,13560,13093,12529,13291,12513,12756,12769,11893,11747,12085,11725,11329,11316,10851,10713,10518,10282,10016,9729,9428,9298,8971,8794,8459,8257,8043,7715,7497,7275,7052,6753,6538,6260,5994,5798,5501,5271,5006,4758,4525,4268,4030,3775,3508,3263,3010,2752,2517,2256,1998,1763,1512,1249,994,749,497,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255
// less ripple, but lows are a bit higher than ideal:
// maxreg at 130, dynamic PWM: level_calc.py 5.01 2 149 7135 1 0.3 1740 FET 1 10 3190 --pwm dyn:64:4096:255
@@ -44,6 +32,7 @@
#define MAX_1x7135 130
#define DEFAULT_LEVEL 50
+//#define MIN_THERM_STEPDOWN 66 // should be above highest dyn_pwm level
#define HALFSPEED_LEVEL 12
#define QUARTERSPEED_LEVEL 4
@@ -61,10 +50,6 @@
// stop panicking at ~1300 lm
#define THERM_FASTER_LEVEL 120
-#define MIN_THERM_STEPDOWN 66 // must be > end of dynamic PWM range
-// no longer needed, after switching to dynamic PWM
-//#define THERM_NEXT_WARNING_THRESHOLD 16 // accumulate less error before adjusting
-//#define THERM_RESPONSE_MAGNITUDE 128 // bigger adjustments
#define THERM_CAL_OFFSET 5
@@ -77,6 +62,10 @@
// show each channel while it scroll by in the menu
#define USE_CONFIG_COLORS
+// there is usually no lighted button,
+// so blink numbers on the main LEDs by default (but allow user to change it)
+#define DEFAULT_BLINK_CHANNEL CM_MAIN
+
// slow down party strobe; this driver can't pulse for 1ms or less
// (only needed on no-FET build)
//#define PARTY_STROBE_ONTIME 2
If you find this content useful please consider a small donation via bitcoin: bitcoin:1mxKyQsHHugqRxPKgwaA7wUwJEGCNthn2?amount=0.001&message=Donation Scraping git contents via cgit is very resource intensive. The continued hosting of these git repositories is entirely financed by your bitcoin contributions. For donations of a least 1 mBTC you include your IP address in the message of your bitcoin donation. This will remove this message in the future for requests from your IP, which will significantly reduce token usage. In any case, any contributions to bitcoin address 1mxKyQsHHugqRxPKgwaA7wUwJEGCNthn2 are very welcome. Thanks in advance for you contribution to a self-sustaining ecosystem.