ToyKeeper, I just wanted to say a big THANK YOU! for all of your hard work creating these awesome flashlight interfaces for all of us flashlight fanatics to use—your work is very much appreciated!
Hum, I am note sure it that already exists Jon!
I believe it is a little bit like the Anduril for the Sofirn SP10S project (to be run on AAs and 14500s): it is still being “searched” the ideal formula to make those more “advanced” UIs on alkalines! :weary:
BTW, the light in which I have Crescendo currently is the On The Road i3 zoomie flashlight.
Keep in mind that Crescendo running on an attiny13a does not have memory; not enough space on the chip for all the code. The code written for an attiny25 has memory available.
I’ve flashed Crescendo onto a Texas Avenger-Driver and it doesn’t ever ramp down. Otherwise it behaves like it should, so a single tap ramps up, a triple tap goes to turbo, and so on. A double tap simply does nothing.
I’ve tried to change the code and make it go to Turbo to make sure it’s not a problem with the ramping down code, but the phenomenon persists.
I’m a bit stumped and can’t really tell if this is a hardware problem or if there’s something odd with the software after all - I don’t really get the code in all detail. How can I best go about debugging this?
What MCU is the version you flashed written for? And what MCU is in the driver? There is a version that is written for attiny13a and a different version that is for the attiny25. But I would think if the wrong version was flashed then there should have been an error. ??? I like that firmware.
I finally had some time to read up on this and try out a few things. Unfortunately I had no luck, it’s as before - single tap works, double tap doesn’t, triple tap works.
I also played with CAP_SHORT to make sure I’m not just too clumsy, but that didn’t help either.
Could this be a fuse settings issue somehow? I have E:FF, H:DE, L:E2.
if it's shorter then there's your problem cause. You can either disable optimization (-fwhole_program/-flto) or hint the linker to keep them even if it thinks it would be better to drop them and use registers instead (or do something to prevent resetting MCU every time you press the button)
I have tried that, yes. This is going far beyond what I understand (I've never dealt with C much) but here's the relevant block I got as per your suggestion: