Im wrapping up my code for my ties to start selling them as a way to raise funds for church. So far i have the following patterns
Rainbow
Rainbow with glitter
Silon (like a rainbow knight rider)
Bpm
Pride
And a VU meter effect
Im looking for some opinions on which patterns would look good on a vertical strip of LEDs 25 pixels long. This is running on an Attiny85. Its taken me a while to get my 3D printer to a point where i can print good quality enclosures for everything so now i can finally wrap this up and start making a bunch.
I like twinklefox, if you’ve got space for it 
Where are you going to sell them? I’ve just got my masks on Etsy and they seem to be doing okay…
At church events at first. But im trying to put a website together. Although ill probably start on Etsy as well. Ill post a video of how the progress looks so far
@Jason_Coon would you be willing to help me out with a pattern? its the bouncing balls pattern but the way its written would require me to use up more space in variables and to be honest im not good enough to rewrite it on my own, i tried once and my LEDS were having zeisures
well dang never mind theres not enough room 
Which bouncing ball pattern? In the demoreel there is one called juggler, that one? Both juggler and confetti don’t look like they would take that much RAM.
I see in another post there was a concern about amps. Don’t forget that FastLED has a setMaxPowerInMilliWatts function that will approximate in software and reduce brightness dynamically.
Try sin wave. You can change a bunch of variables and get infinite variations with just that one pattern.
@Eric_Warnke no its a different bouncing ball pattern but it overflows the Attiny by over 500 bytes. I do have juggle in there thou
If you can post the code or a snippet maybe we can suggest an alternative.
this is the pattern im trying to add:
// BouncingBalls2014 is a program that lets you animate an LED strip
// to look like a group of bouncing balls
//
// Daniel Wilson, 2014
//
// With BIG thanks to the FastLED community!
///////////////////////////////////////////////////////////////////////////////////////////
#include “FastLED.h”
#define NUM_LEDS 25
#define DATA_PIN 0
#define COLOR_ORDER GRB
#define CHIPSET WS2812B
#define BRIGHTNESS 255
#define GRAVITY -1 // Downward (negative) acceleration of gravity in m/s^2
#define h0 1 // Starting height, in meters, of the ball (strip length)
#define NUM_BALLS 3 // Number of bouncing balls you want (recommend < 7, but 20 is fun in its own way)
float h[NUM_BALLS] ; // An array of heights
float vImpact0 = sqrt( -2 * GRAVITY * h0 ); // Impact velocity of the ball when it hits the ground if “dropped” from the top of the strip
float vImpact[NUM_BALLS] ; // As time goes on the impact velocity will change, so make an array to store those values
float tCycle[NUM_BALLS] ; // The time since the last time the ball struck the ground
int pos[NUM_BALLS] ; // The integer position of the dot on the strip (LED index)
long tLast[NUM_BALLS] ; // The clock time of the last ground strike
float COR[NUM_BALLS] ; // Coefficient of Restitution (bounce damping)
CRGB leds[NUM_LEDS];
void setup() {
delay(2000); // sanity check delay - allows reprogramming if accidently blowing power w/leds
FastLED.addLeds<CHIPSET, DATA_PIN, COLOR_ORDER>(leds, NUM_LEDS);
LEDS.setBrightness(BRIGHTNESS);
for (int i = 0 ; i < NUM_BALLS ; i++) { // Initialize variables
tLast[i] = millis();
h[i] = h0;
pos[i] = 0; // Balls start on the ground
vImpact[i] = vImpact0; // And “pop” up at vImpact0
tCycle[i] = 0;
COR[i] = 0.90 - float(i)/pow(NUM_BALLS,2);
}
}
void loop() {
for (int i = 0 ; i < NUM_BALLS ; i++) {
tCycle[i] = millis() - tLast[i] ; // Calculate the time since the last time the ball was on the ground
// A little kinematics equation calculates positon as a function of time, acceleration (gravity) and intial velocity
h[i] = 0.5 * GRAVITY * pow( tCycle[i]/1000 , 2.0 ) + vImpact[i] * tCycle[i]/1000;
if ( h[i] < 0 ) {
h[i] = 0; // If the ball crossed the threshold of the "ground," put it back on the ground
vImpact[i] = COR[i] * vImpact[i] ; // and recalculate its new upward velocity as it's old velocity * COR
tLast[i] = millis();
if ( vImpact[i] < 0.01 ) vImpact[i] = vImpact0; // If the ball is barely moving, "pop" it back up at vImpact0
}
pos[i] = round( h[i] * (NUM_LEDS - 1) / h0); // Map "h" to a "pos" integer index position on the LED strip
}
//Choose color of LEDs, then the “pos” LED on
for (int i = 0 ; i < NUM_BALLS ; i++) leds[pos[i]] = CHSV( uint8_t (i * 40) , 255, 255);
FastLED.show();
//Then off for the next loop around
for (int i = 0 ; i < NUM_BALLS ; i++) {
leds[pos[i]] = CRGB::Black;
}
}
Wow, really complicated. the only way that’s getting on the ATtiny is to gut it for something much simpler based on beatsin. It wouldn’t be a full simulation like this but it may be enough.
Nah ill just added to another code im doing for non sound reactive ties
So i keep trying to program my tie but now it wont read the button and itll randomly change modes. Even with the original code i used months back that i know works flawlessly. I havent changed anything in the hardware. What could cause this?
Sounds like a wiring issue, do you have it tied to ground properly with a resistor or the internal?
I have the push button on an internal pull up resistor and its wired to pin 4 and ground
I mean its the same code i used originally. I have 1 tie running it right now because it was one of the original 3 i made. But i tried programming the other 2 and all it seems to have done is kill them and i dont understand why 
Well i feel like an idiot. The button is supposed to be set as an internal pull up. But i originally tested this code on an Adafruit circuit playground which worked fine without having to set the button as an internal pull up. Since i tried using the original code thats where the issue was coming from. I forgot to add that one line… facepalm and i was trying to troubleshoot on the Adafruit circuit playground and ofcourse the code worked flawlessly there but not on my Attiny85 boards. This has not been my best week lol. Then today i woke up to a blob of PETG on my printers heatblock. Im having all the luck.