//MEOW =^.^= kot vor halfmatrix (16x 5mm (withlense) RGB flasher.. //used li-ion flat cells 2x together ~1600mAh >stepup stet to 5.36V >in 3V3 stmminimumsystemboard(removed powerled caused running hot XD) //>gpio>220R>Y2 SMD PNP transistor> all leds same color (dioderesistor for red)>LEDcolor capacitor parralel(~10yF)>led all colors negative>dioderesistor>>GPIO(ground switched) //sine having 48colorchannels(16x RGB leds)by using 19GPIOs :3 //seens to be stm32F103C8T6 3V3 chipvoltage can also be 5.36V withoud damaging if no high drain running to GPIOs =^.^= //measured current bevore casing li-ion>stepup ~130mA have changed kote for more light output should be ~145mA now.. (hole device stmboard,stepup,ledmatrix(leds+transistores)running cute low isn't it? //should working with build in lions >11hours :3 much more effizient than building same with WS2812B hihi (buildet in tp4056 li-ion microusb charger..) /*pics * https://marderchen.lima-city.de/NEU+/16x5mmRGB_halfmatrixtry_wireart.jpg * https://marderchen.lima-city.de/NEU+/16x5mmRGB_halfmatrixtry_wireart2.jpg * https://marderchen.lima-city.de/NEU+/16x5mmRGB_halfmatrixtry_wireart3.jpg * https://marderchen.lima-city.de/NEU+/mini_16x5mmRGB_halfmatrixbeatflashingcolors_1.jpg * https://marderchen.lima-city.de/NEU+/mini_16x5mmRGB_halfmatrixbeatflashingcolors_2.jpg * https://marderchen.lima-city.de/NEU+/mini_16x5mmRGB_halfmatrixbeatflashingcolors_cased.jpg * https://marderchen.lima-city.de/NEU+/mini_16x5mmRGB_halfmatrixbeatflashingcolors_cased2.jpg * currently working on fixing failtures in this * https://marderchen.lima-city.de/NEU+/z0rt_fixing_errorsnneedinghours.jpg * */ #define PNProt PB6 //Y2 #define PNPgrun PB7 #define PNPblau PB8 #define LED1 PA4 //5mm 4pin RGB lense #define LED2 PA5 #define LED3 PA6 #define LED4 PA7 #define LED5 PB0 #define LED6 PB1 #define LED7 PB10 #define LED8 PB11 #define LED9 PB12 #define LED10 PB13 #define LED11 PB14 #define LED12 PB15 #define LED13 PA8 #define LED14 PA9 #define LED15 PA10 #define LED16 PB5 #define Bred PC13 #define Bblue PB14 #define T1 PA12 #define T2 PA15 #define Tfix1 PA0 #define Tfix2 PA1 #define channelz 49 uint8_t leds[18][7]; void setup() { pinMode(T1,INPUT);pinMode(T2,INPUT); pinMode(PNProt, OUTPUT); pinMode(PNPgrun, OUTPUT); pinMode(PNPblau, OUTPUT); pinMode(LED1, OUTPUT); pinMode(LED2, OUTPUT); pinMode(LED3, OUTPUT); pinMode(LED4, OUTPUT); pinMode(LED5, OUTPUT); pinMode(LED6, OUTPUT); pinMode(LED7, OUTPUT); pinMode(LED8, OUTPUT); pinMode(LED9, OUTPUT); pinMode(LED10, OUTPUT); pinMode(LED11, OUTPUT); pinMode(LED12, OUTPUT); pinMode(LED13, OUTPUT); pinMode(LED14, OUTPUT); pinMode(LED15, OUTPUT); pinMode(LED16, OUTPUT); pinMode(Bred, OUTPUT);pinMode(Bblue, OUTPUT); pinMode(T1, INPUT); pinMode(T2, INPUT); pinMode(Tfix1, INPUT); pinMode(Tfix2, INPUT); noLEDs(); delay(300);digitalWrite(Bred,HIGH);ratemal();} uint16_t zeit1; void loop() {zeitreise();} uint8_t beatsplit,strop[channelz+1],helligkeiten[channelz+1],newtrigger,blinkdata[10][channelz+1],isoncount,onpress[4],modi=3,doubleup=1,zufall; uint8_t moden[5]={1,2,4}; uint16_t coolcach; long littletime=micros();long slowtime=micros();long dimmer=micros(); void zeitreise(void){ while ((micros()- slowtime)>(20100/doubleup)){blinkdata[0][31]=69;//something between 19500-20500 raw- beatsplit++;if (beatsplit >(40)){beatsplit=1;newtrigger++;if(newtrigger>16){newtrigger=random(1,4)*3;ratemal();}} for(uint8_t fiz=0;fiz= (20/doubleup)){for(uint8_t fu=0;fu=1){strop[fu]-=1;}}dimmer = micros();}//downfade while ((micros()- littletime) >= 3){if(modi<=2){doubleup=moden[modi];}schaltzeugs();littletime = micros();}//istinput();pulspowder();pulspowder(); } void ratemal(void){ zufall=random(0,25); if(modi==3 && zufall <8){doubleup=moden[0];} if(modi==3 && zufall >=8 && zufall <20){doubleup=moden[1];} if(modi==3 && zufall >=20){doubleup=moden[2];} for(uint8_t tik=0;tik<9;tik++){for(uint8_t tok=0;tok=1){isoncount++;}}}if(isoncount<=3){ratemal();}}//try solong until minimum 3flashes/sequenz void istinput(void){ onpress[2]++; if (onpress[2] >20) { if (digitalRead(T2) == HIGH && onpress[0] ==0 ) { onpress[0] =1;moduswechsel();} if (onpress[0] == 1 ) { onpress[1]++;} if (onpress[1] >= 5) { onpress[1] =0; onpress[0]=0; }onpress[2]=0;}} void moduswechsel(void){modi++; if(modi>3){modi=0;} } uint8_t maxx=70; void schaltzeugs(void) { for (uint8_t welchs=0; welchs <=32; welchs+=16) { if (welchs==0) { digitalWrite(PNProt,LOW);} if (welchs==16) { digitalWrite(PNPgrun,LOW);} if (welchs==32) { digitalWrite(PNPblau,LOW);} for (uint16_t laag=0; laag <=maxx; laag++) { if (laag <= (maxx-1) && laag >=1) { if (laag == (maxx-strop[welchs+0])){digitalWrite(LED1,LOW);} if (laag == (maxx-strop[welchs+1])){digitalWrite(LED2,LOW);} if (laag == (maxx-strop[welchs+2])){digitalWrite(LED3,LOW);} if (laag == (maxx-strop[welchs+3])){digitalWrite(LED4,LOW);} if (laag == (maxx-strop[welchs+4])){digitalWrite(LED5,LOW);} if (laag == (maxx-strop[welchs+5])){digitalWrite(LED6,LOW);} if (laag == (maxx-strop[welchs+6])){digitalWrite(LED7,LOW);} if (laag == (maxx-strop[welchs+7])){digitalWrite(LED8,LOW);} if (laag == (maxx-strop[welchs+8])){digitalWrite(LED9,LOW);} if (laag == (maxx-strop[welchs+9])){digitalWrite(LED10,LOW);} if (laag == (maxx-strop[welchs+10])){digitalWrite(LED11,LOW);} if (laag == (maxx-strop[welchs+11])){digitalWrite(LED12,LOW);} if (laag == (maxx-strop[welchs+12])){digitalWrite(LED13,LOW);} if (laag == (maxx-strop[welchs+13])){digitalWrite(LED14,LOW);} if (laag == (maxx-strop[welchs+14])){digitalWrite(LED15,LOW);} if (laag == (maxx-strop[welchs+15])){digitalWrite(LED16,LOW);}} if (laag ==maxx) {noPNP(); noLEDs();}}}} void noPNP(void) {digitalWrite(PNProt,HIGH); digitalWrite(PNPgrun,HIGH); digitalWrite(PNPblau,HIGH);} void noLEDs(void){digitalWrite(LED1,HIGH);digitalWrite(LED2,HIGH); digitalWrite(LED3,HIGH); digitalWrite(LED4,HIGH); digitalWrite(LED5,HIGH); digitalWrite(LED6,HIGH); digitalWrite(LED7,HIGH);digitalWrite(LED8,HIGH); digitalWrite(LED9,HIGH); digitalWrite(LED10,HIGH); digitalWrite(LED11,HIGH); digitalWrite(LED12,HIGH); digitalWrite(LED13,HIGH);digitalWrite(LED14,HIGH); digitalWrite(LED15,HIGH); digitalWrite(LED16,HIGH); } // [MEOW] more rainbowpower! this RGB matrix is nearly LOW-power (ok not realy caused only low power is yA! (far less then one mA^^) we just having no lowpower devices in this world currently^^) //by marderchen :3 my stuff always free use it in any way you want =^.^= caused this is not code you can buy this is marten kote pushed free in internetz caused best way to making worl more cutepowdercolorfull :3