NarsilM - configurable e-switch firmware for Multi channels, v1.3

How to remove momentary mide in narsil code?

Can I have different stepp downs for
RAMPING (e.g. timed 3min) and MODES (e.g. temperature step down) ?

Or different times for the step down?

Joe

Yes.

If you are in ramping, hold the button for 8 seconds until you get to the settings configuration.

There is going to be this array of options:

1. 2 quick flashes, 1 slow flash = Mode set(1 click), ramping (2 clicks) Do not touch. Wait until it goes to the next mode below.

2. 2 quick flashes, 2 slow flashes = Moonlight levels. Do not touch. Wait until it goes to the next mode below.

3. 2 quick flashes, 3 slow flashes:

- 1 click = Stepdown disabled. Not recommended.

- 2 clicks = Temperature stepdown. Goes to max, and then you click the button when the flashlights is too hot for you to hold it.

- 3 clicks = Timed. Then your press according to the time you want it to step down at:

1 click = 60 seconds.

2 clicks = 90 seconds.

3 clicks = 120 seconds.

4 clicks = 180 seconds.

5 clicks= 5 minutes.

6 clicks = 6 minutes.

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.

Is it possible for dual switch lights to make the side button only switch modes so the light can opnly be turned off with tail switch?

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

Maybe he mixed sth. up

Joe

I’ve never tested it either. I’m not a fan of mode sets and never use them.

I can’t test it right now, so maybe someone will try or maybe TK will know.

(It’s also important to specify which version of Narsil your using as they each have small changes. It looks like he’s talking about NarsilM v 1.0.)

Yes, it should be NarsilM v1.0 . He bought a stock one.
It’s midnight here I don’t test anything tonight, sorry :slight_smile:

No.

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
*
**************************************************************************************/

Yes, but I don’t think the repository has anything like that yet. A new UI would need to be created.

Thank you for your clarification, Toykeeper!

Good night

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

What would an e-switch button click do in the ramping mode?

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

I mean, ideally. How would you want it to work, if you could do it however you like?

in mode sets
Tail switch on/off
Side switch short press next mode
side switch long last mode

So, no ramping UI at all?

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.

No ramping untouched, just the lock timer in Modes removed

For a Forum member I am trying to get NarsilM first time individually set up on Modes
never used modes before myself

But I am stuck due to a bug

He wanted that the light has Mode memory when the light was powered down with tail switch

There is a switch in Setup file named
#define OFFTIME_ENABLE 1
// 1: Do OFF time mode memory for Mode Sets on power switching (tailswitch), 0: disabled

Problem it its bugged when I turn on the light it has Next Mode Memory, so it gets to next mode after a power disconnection

If its meant to do next mode memory good feature if not bug, both would be great

maybe the code is OK but MCU does not like low voltages before shut down and notices a click before its off

I’m only guessing, but it sounds like maybe it’s doing what it’s supposed to do. Maybe the driver needs a way to bleed off power faster while power is disconnected, so it can measure shorter durations of offtime.

Or if the tail button is supposed to act as a momentary switch, maybe it’d be better to leave offtime disabled?

To do a UI where the tail is momentary and the side switch changes modes, it probably wouldn’t take much time. Click to go one level brighter, hold to go dimmer?