I have a couple of questions and suggestions.
Questions re current functions/effects:
Does the board currently have a configurable flicker function for the blade? I'd assumed so as a 'standard' function in boards that have been around for a bit, but couldn't find anything to indicate this skimming back through threads and your site. It'd be great to add this if not currently implemented.
No, but it should be easy to implement.
How do you want it to work?
I don't have any other boards myself, so I don't know what is standard and how they work. :)
I imagine that popular choices would be sound-based flickering and random flickering?
I read a 'lockup' effect is something you're considering implementing, and maybe soemthing like the 'tip drag' effect that Hyperdydne showes in his demo of board in development - which would be great. Does the standard setup with the board currently use a second auxilliary switch to trigger effects and navigate options?
No.
I don't have a saber with three buttons yet, so I haven't assigned any functions to aux2.
Also, I've actually tried to stay away from using configuration menues on the saber itself, as I think that seems really difficult to implement *well*. Instead everything is currently done through the "presets" array. Holding aux while tapping power goes to the next preset, holding power and tapping the blade goes to the previous preset. The presets are managed in the source itself.
It'd also be great to have a localised 'blaster bolt deflect' with a tap and release of an aux button and a lockup effect with the aux button held. (Plecter Prizm v5 and NEC Igniter 2 seem to have implemented a nice blaster bolt deflect for neopixels, but not lockup effects that take full advantage of neopixel and similar strips yet).
Right now, blaster and lockup are only partially implemented, they do the sound, but do not have blade effects.
This will be fixed, I just haven't gotten around to it yet.
I've been giving thought to the possibilities that addressable LEDs offer for lockup type effects and how one might configure the actions to control these in a straightforward way.
I guess there are three possible lockup effects that come to mind:
1) A lockup effect with colour change/flashes and flash/shimmer/flicker along the whole blade, similar to what's familiar from in-hilt LEDs.
2) Localised lockup where a central section of the blade displays the effect, fading out somewhat towards top and bottom of the blade.
3) Localised blade tip effect for draging the blade along a surface or stabbing a surface.
I guess it could be configured whether the effect was local or along the whole.
For localised effects, perhaps aux button held down for the mid blade, saber-on-saber type lockup and twist of hilt + aux for the tip effect?
My current plan is this:
Hold aux to activate lockup mode (nothing actually happens)
When a clash occurs, if the blade is pointing mostly up, activate lockup mode and have a flickering effect
in the bottom third of the blade.
If the blade is held downwards when the clash occurs, activate the drag effect where only the last 1-3 LEDs are flickering.
Either mode ends when aux is released.
Another idea that would be pleasing would be to be able to control (2) and (3) with a further twist of the hilt while the ux button is being held - a reasonably sharp twist clockwise to start the area of effect moving up the blade or anti-clockwise to start moving it down the blade, with a twist in the opposite direction to stop the effect moving (e.g. if the contact point between two locked blades moves, or the effect slowly moving down from the tip of the saber as it gradually pushes through something?). I guess this would be fed by info from the change in the gyro values of the motion detector within certain bounds. Maybe also possible/pleasing effect to correlate how hard the hilt's twisted with the speed the effect moves?)
Using hilt twists to control location is an interesting idea.
I've been thinking of ways to have the regular "clash" effect be localized, and if I can't
decduce it from the actual motion detector, maybe twists could work...
Either way, I will definitely implement *some* of this stuff, and since it's open-source, everybody can
change it any which way they want to if they don't like how I do it... :)
Anyway, thought I'd share in case interesting to yourself or other folks. I'll be looking at what I can contribute myself when I have my Teensysaber 2 board wired up and working with the rest of electronics, but I no prior experience of coding, so it may take a bit of time to get a ahndle on this ;-)
If you're serious about contributing, you'll need to learn a *little* coding to do it.
There is no better way to learn how to code than to customize something you love though.