changing the 8 to 20 seconds is just one line in the Narsil.c file
CONFIG hold - if it is not locked out or lock-out was just exited on this hold
//———————————————————————————————————————————-
if ((byLockOutSet 0) && !momentaryState)
{
if ((!ramping && (wPressDuration CONFIG_ENTER_DUR) && (fastClicks != 2) && (modeIdx != BATT_CHECK_MODE))
||
(ramping && (wPressDuration == 500))) // 8 secs in ramping mode
same for Modes to extend 2.5 to more in the setup file #define CONFIG_ENTER_DUR 160 // Config mode entry hold time - 160=2.5s, 128=2s
I changed the register and PB port in the register settings but it does not work
It seems I have to change something in the channels.h file as well, but that code does not really make sense to me so I cant change it
I’m almost certain the answer is no. When you set the step down in ramping it automatically carries over to the mode sets and vice versa. So I don’t think there’s any way you can separate them. Besides, I’m not sure why you would want different step-downs between ramping and mode sets in the first place.
The reason I ask is, I found an older entry on the german forum where it should work.
He said he has in one moon aktiv in the other not.
I never tested it and have also doubts, so I asked here
Looking at the code, it has only one value which is shared across both. Tom documented it in the comment for SaveConfig():
/**************************************************************************************
* SaveConfig - save the current mode with config settings
* ==========
* Central method for writing (with wear leveling)
*
* config1 - 1st byte of stored configuration settings:
* bits 0-2: mode index (0..7), for clicky mode switching
* bits 3-6: selected mode set (0..11)
* bit 7: ramping mode
*
* config2 - 2nd byte of stored configuration settings:
* bit 0: mode ordering, 1=hi to lo, 0=lo to hi
* bit 1: mode memory for the e-switch - 1=enabled, 0=disabled
* bit 2-4: moonlight level, 1-7 enabled on the PWM value of 1-7, 0=disabled
* bits 5-7: stepdown: 0=disabled, 1=thermal, 2=60s, 3=90s, 4=2min, 5=3min, 6=5min, 7=7min
*
* config3 - 3rd byte of stored configuration settings:
* bit 0: 1: Do OFF time mode memory on power switching (tailswitch), 0: disabled
* bit 1: On Board LED support - 1=enabled, 0=disabled
* bit 2: Locator LED feature (ON when light is OFF) - 1=enabled, 0=disabled
* bit 3: BVLD LED Only - 1=BVLD only w/onboard LED, 0=both primary and onboard LED's are used
* bit 4: 1: moonlight mode - 1=enabled, 0=disabled
* bit 5-6: blinky mode config: 1=strobe only, 2=all blinkies, 0=disable
*
**************************************************************************************/
I thought about exploiting the lock timing to be infinite or removed
If the firmware does not lock the mode in after 1.2s it would all the time ready to change modes
ramping does not use the 1.2s mode lock timer its only used in modes set
I cant program so I do not know what ecxactly to change to get this timer set to infinite or disable it
so in ramping side switch has normal operation including putting the light in standby
Mostly, I was wondering how you’d want a ramping interface to work when the tail clicky is the only way to turn the light on/off. Like, what would happen when the user clicked the e-switch. But “no ramping” is also an answer to that question.