Crescendo clicky firmware by TK

Bootstrap is a term I don’t quite understand, but I can share my start-up sequence and PWM code for 1634 with you. I’ll see if I can find my old 841 code somewhere too.

Yep. I’ve actually designed a driver that uses all of those pins. I just haven’t got around to building it yet (one of those projects standing in line). It’s a slightly more advanced version of these: Driver giveaway: Constant current 17mm drivers, winners (finally) announced, post #2.

I wouldn’t really recommend Crescendo for tactical use. It does have a shortcut to turbo, but it’s probably not fast enough for tactical purposes. The shortcut is to turn it on three times quickly. So, on a reverse clicky, it would be click-tap-tap. On a forward clicky, it would be tap-tap-click, but Crescendo really doesn’t work well on a forward clicky so I’d probably use something else.

Oh, sorry, bootstrap is a weird English term.

In the 1780s, in the story of Baron Munchausen, there is a scene where he pulls himself out of a swamp by grabbing his own hair and pulling up. The point is to show that Baron Munchausen can do impossible things.

Then in 1834 in the US, there was a cultural conflict between the right-leaning aristocracy and the left-leaning labor unions of the working class. A labor union magazine (the “Working Man’s Advocate”) published a lot of articles making fun of the aristocracy’s policies and beliefs. In one article, it used a metaphor to illustrate how ridiculous their beliefs were, and how they were asking people to do the impossible. The metaphor said that they expected a poor working man to lift himself over a fence by pulling up on the straps of his boots.

The idea continued to be used in this manner for a while, showing up in the 1860s as “lift himself by his own bootstraps”. It still referred to impossible tasks.

However, by the early 1900s, people were starting to promote similar policies again, and some of those people didn’t recognize that the phrase was meant to ridicule those policies. They thought it was a good description of what they thought was a good idea, and they started using the phrase unironically to describe their own policies. By 1916 or so, it had entered common use with a meaning of bettering one’s self through extreme effort with no outside help. This led to the roaring 1920s and the great depression of the 1930s, and then the idea was less popular for a while. But in modern times there has been another resurgence of those ideas and the phrase has become popular again, mostly without realizing that the term was originally created to make fun of exactly that type of idea.

Anyway, moving ahead to the 1950s, thanks to the efforts of snarky computer scientists and their affinity for bad jokes, it gained a third meaning — the startup processes on a computing device which occur between powering on and reaching a steady operational state. And it was shortened to “bootstrapping” or just “booting”. Hence why we now have terminology talking about booting (or rebooting) a computer.

TL;DR: Yes, what I’m looking for is mostly the startup sequence and PWM code. Maybe something about reading voltage and/or temperature too. Basically just accessing the hardware features, not the higher-level application logic.

dohh, i thought it was a circuit that returns the over voltage difference to ground lol, spose its a loose term for a lot of things… unless i confused it with a ‘clamp’ .

hurray, 100 watt iron arrived, one touch soldering with the star in situe, installed Gcharts ramping UI 2nd attempt and it works. (NANJG layout on the red convoy C8 board).
running temperatures are spot on, and the ramp down works on turbo/max ramp, also the battery check is as close as.

draws 1.7 amps with the battery at 3.7v at the battery end on turbo/max ramp, thats that sorted.

thank you everybody, i actually got help on here, nice one. :+1:

edit: and just confirmed the LVP works too. (battery at 3.11v after a few minutes rest. light switched off).

That was an entertaining read, thanks for taking the time :slight_smile:

I’ll put something together. I found some of my old 841 code too, it might be of use.

ToyKeeper

What else is there? I can use either switch (though forward would be best) it’s just that the default needs to start at turbo.

I hear the Olight Warrior X is pretty good for tactical purposes. There are lots of others to choose from in that general category though. I’m probably not the best person to give tactical recommendations, since I don’t really know much about it.

can we have a defined explanation of ‘tactical flash’ light’?

This might help:

I think Bistro FW can be made to always start in turbo.

You know I’m talking about tactical with “ramping”. I already have several tactical lights.

Crescendo could be modified to start in turbo. You could just reverse the ramp table so it starts with 100% FET, and turn off memory. I think this would start in turbo then automatically ramp down? I’ve always used memory so I’m not certain how it behaves with no memory. Is there an additional simple modification to make it just turn on in turbo and stay there?

For that, I’d recommend Anduril with the START_AT_MEMORIZED_LEVEL option turned on, maybe also with the boot code modified a little to do turbo by default instead of memory. This way, the tail clicky switch would work as a tactical momentary button, while a side e-switch provides access to ramping and all the other general-purpose stuff.

Or Crescendo could be modified to start at the top instead of the bottom, but it’ll still be prone to doing odd things when bumped. Even with modifications, I don’t think I’d recommend it for tactical purposes.

ahh yes tactical… but strobes gunna be a dead give away, can you imagine it, out side the cartell, everyone’s in position, shh….shhhhh? whats that noise? i mirrion candle power strobe mode…WITH RAMPING!!..

hmm… inddeadly…

Thanks! I didn’t even see all these options on Mountain Electronics site before this thread.

What kind of fuse I have to use with the Crescendo25?. Moreover, it would be possible to use these same fuses with the Attiny25 and 85?

Thanks.

Some firmware projects have recommended fuse values inside the source file. However, for all of mine, check the bin/flash-tiny*-fuses.sh scripts in the code repository to see the most up-to-date recommended fuse values for each MCU.

Okay, I just updated a bunch of source files to remove any outdated fuse info from the .c file and replace it with a pointer to the flashing scripts. Those scripts are much more actively maintained, and more likely to be correct.

No, it uses some sort of 10-leg chip as the controller. I don’t know what it is, except that it’s not any of the chips Crescendo supports.

In the bin/flash-*-fuses.sh scripts in my firmware repository, it has recommended fuse values for each type of controller chip and usually a link to a calculator which shows what those values mean.

In most cases though, the fuses don’t need to be flashed. Sending a .hex file by itself is typically fine, and less risky.