Zum Inhalt springen

Blinkenschild: Unterschied zwischen den Versionen

Overflo (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Overflo (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 5: Zeile 5:
* is aportable sign
* is aportable sign
* consists of:
* consists of:
** 15 pcs RGB-123  
** 15 pcs [http://www.hackerspaceshop.com/ledstrips/rgb-123.html RGB-123]
** counts a total of 960 pixels (40x24)
** counts a total of 960 pixels (40x24)
** a teensy 3.1 for control
** a [http://www.hackerspaceshop.com/teensy/teensy-3-1.html teensy 3.1] for control
** a microsdcard reader interface
** a microsdcard reader interface
** a bluetooth module
** a bluetooth module
Zeile 24: Zeile 24:
These information is saved in a single file via a nice hack involving socat to capture the serial data.
These information is saved in a single file via a nice hack involving socat to capture the serial data.


Glediator2 is GREAT software but unfortuneatly it is NOT open source,  just free to use :((
[http://glediator.de Glediator2] is GREAT software but unfortuneatly it is NOT open source,  just free to use :((


The animations are on a microsdcard on a FAT16 filesystem read by the teensy 3.
The animations are on a microsdcard on a FAT16 filesystem read by the teensy 3.
Zeile 30: Zeile 30:
There is an android app that lets you pick the animations over bluetooth and set a text and text colour for overlay and brightness for both animations and text.
There is an android app that lets you pick the animations over bluetooth and set a text and text colour for overlay and brightness for both animations and text.


This is done in realtime and pixelvalues are recalculated in realtime before display.
This is done in realtime and pixelvalues are recalculated before display.


This is still too fast so i had to add 30 ms delay between the frames or we would not perceive it as a fluid animation but rather just blinking bright light.
This is still too fast so i had to add 30 ms delay between the frames or we would not perceive it as a fluid animation but rather just blinking bright light.
Zeile 74: Zeile 74:
And this is the difference int he OctoWS2811 lib that does the trick.
And this is the difference int he OctoWS2811 lib that does the trick.


<pre>
> #ifdef __MK20DX256__
> #ifdef __MK20DX256__
> MCM_CR = MCM_CR_SRAMLAP(1) | MCM_CR_SRAMUAP(0);
> MCM_CR = MCM_CR_SRAMLAP(1) | MCM_CR_SRAMUAP(0);
> AXBS_PRS0 = 0x1032;
> AXBS_PRS0 = 0x1032;
> #endif
> #endif
</pre>
===Software===
===general knowledge===
Animations are generated with Glediator.
Glediator support GIF files, nad thats great for pixel animations .. protip:  you can search on google for animated gifs at a certain size.
To display the gifs correctly each frame needs to have the "dispose" flag set, you can do this in photoshop, i am sure there is a way to do this automatically with image magick, but i really like photoshop for image editiing.
The Glediator output structure looks like this:
0x01 marks the head of frame
It is followed by (<no of pixels> * 3) bytes of data. These bytes describe RGB values but how they are ordered (RGB,RBG,BGR,GRB,GRB,GBR) can be selected in the glediator output configuration.
In OctoWS2811 you can use setPixel(int <no>, int R, int G, int B) to set a pixel.
I output the animations using GRB color encoding and horizontal linewise starting bottom right (HL_BR) order of strips.
I have a lookup table for the 960 leds that show what pixel is at what position.






===Software===


===hacks===
Glediator is GREAT. It can do 12324 things, runs on all the platforms and performs really well.
Glediator is GREAT. It can do 12324 things, runs on all the platforms and performs really well.


Zeile 123: Zeile 150:
|style="vertical-align:top"|[[Bild:blinkenschild1.jpg|thumb|300px|What the horse?]]
|style="vertical-align:top"|[[Bild:blinkenschild1.jpg|thumb|300px|What the horse?]]
|style="vertical-align:top"|[[Bild:blinkenschild2.jpg|thumb|300px|Power to the blinky]]
|style="vertical-align:top"|[[Bild:blinkenschild2.jpg|thumb|300px|Power to the blinky]]
|-
|style="vertical-align:top"|[[Bild:blinkenschild4.jpg|thumb|300px]]
|style="vertical-align:top"|[[Bild:blinkenschild5.jpg|thumb|300px|Wahlk(r)ampf.]]
|}
|}




{{#ev:youtube|VX14pmky07Q}} (in case there is no embedded video look here http://www.youtube.com/watch?v=VX14pmky07Q)
{{#ev:youtube|VX14pmky07Q}}  
 
(in case there is no embedded video look [https://www.youtube.com/watch?v=VX14pmky07Q here])
 
 
[https://www.youtube.com/watch?v=VX14pmky07Q youtube.]
 


==Links==
==Links==