{"id":749,"date":"2019-04-01T12:08:45","date_gmt":"2019-04-01T16:08:45","guid":{"rendered":"http:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/?p=749"},"modified":"2019-04-01T13:10:46","modified_gmt":"2019-04-01T17:10:46","slug":"maquette-layered-light-show","status":"publish","type":"post","link":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/nahillman\/maquette-layered-light-show\/","title":{"rendered":"Maquette &#8211; Layered Light Show"},"content":{"rendered":"\n<p>This week I worked on getting some WS2812b addressable LEDs I had laying around functioning with a basic arduino uno. To generate the LED patterns I am using <a href=\"https:\/\/github.com\/kendfrey\/syncstrip\/tree\/master\/syncstrip\">Syncstrip<\/a> which plays back a .png by pixel row real time with a song using a  MS Visual Studio and C#. After messing with the program for a while I found it&#8217;s very easy to make scripts to play different songs, but the long and difficult part is drawing the animations. I&#8217;m using Photoshop for now, but I may have to learn Illistrator since it will probably be easier to make crisper animations. The C# program transmits over serial to the arduino running <a href=\"https:\/\/github.com\/kendfrey\/renderstrip\">Renderstrip<\/a>. I modified the renderstrip library to use the FastLED library instead of NeoPixel for their additional led support and features. I also bought these <a href=\"https:\/\/www.amazon.com\/gp\/product\/B018XAELE4\/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&amp;psc=1\">WS2812b LEDs<\/a> for the final display.<\/p>\n\n\n\n<figure class=\"wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"jetpack-video-wrapper\"><span class=\"embed-youtube\" style=\"text-align:center; display: block;\"><iframe loading=\"lazy\" class=\"youtube-player\" width=\"1000\" height=\"563\" src=\"https:\/\/www.youtube.com\/embed\/lhXISrnlMb0?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=en-US&#038;autohide=2&#038;wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\"><\/iframe><\/span><\/div>\n<\/div><\/figure>\n\n\n\n<p>Drawing the animations is very time consuming both because it takes time to draw them in Photoshop and it&#8217;s difficult to think of aesthetic animations. The first song I&#8217;m using is a <a href=\"https:\/\/www.youtube.com\/watch?v=eyJ8z5BtoTc\">Hard Times Remix<\/a>, however I am open to suggestions for other songs. The program currently renders at 100fps so for that song the final png would be 256&#215;20213 pixels. <\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"416\" height=\"923\" src=\"http:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-content\/uploads\/sites\/9\/2019\/04\/image-1.png\" alt=\"\" class=\"wp-image-755\" srcset=\"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-content\/uploads\/sites\/9\/2019\/04\/image-1.png 416w, https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-content\/uploads\/sites\/9\/2019\/04\/image-1-361x800.png 361w, https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-content\/uploads\/sites\/9\/2019\/04\/image-1-135x300.png 135w\" sizes=\"auto, (max-width: 416px) 100vw, 416px\" \/><figcaption>To animate I am using photoshop layered with a spectograph to match the beat of the song. <\/figcaption><\/figure><\/div>\n\n\n\n<p>For the panels I bought <a href=\"https:\/\/www.amazon.com\/gp\/product\/B006WPXZZO\/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&amp;psc=1\">4 3\/16&#8243; 12&#215;12&#8243; clear acrylic<\/a> and 3D printed corners that screw together to hold the panels the proper spacing for the LEDs. I planned on laser engraving the panels however the laser cutter in Washburn was\/is still down so I focused more on getting the LEDs to work. <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"985\" height=\"841\" src=\"http:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-content\/uploads\/sites\/9\/2019\/04\/image.png\" alt=\"\" class=\"wp-image-750\" srcset=\"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-content\/uploads\/sites\/9\/2019\/04\/image.png 985w, https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-content\/uploads\/sites\/9\/2019\/04\/image-800x683.png 800w, https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-content\/uploads\/sites\/9\/2019\/04\/image-768x656.png 768w, https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-content\/uploads\/sites\/9\/2019\/04\/image-351x300.png 351w\" sizes=\"auto, (max-width: 985px) 100vw, 985px\" \/><figcaption>Solidworks model of layered acrylic sheets with designs.<\/figcaption><\/figure>\n\n\n\n<p>In the next week I plan to engrave the panels and test how the LEDs diffuse into the panels. I plan to use hot glue to attach the LEDs, however if the LEDs get too hot during normal use I may have to use a different method. Additionally, depending on how they diffuse I may need to make make blinders between the LEDs to prevent mixing colors. To power the final assembly I will need to buy a power supply for the leds because it will be using 256 LEDs which uses ~90 watts at max brightness.<\/p>\n\n\n\n<p>I also will need to design a final stand\/case to enclose the edges and potentially hold the arduino. I plan on using black acrylic and assembling with mostly 3D printed parts, however I am waiting to design it until I know the acrylic panels with LEDs function as expected.<\/p>\n\n\n\n<p>Shopping List: <br><a href=\"https:\/\/www.amazon.com\/ALITOVE-Transformer-Converter-5-5x2-1mm-100V-240V\/dp\/B01LXN7MN3\/ref=sr_1_13?crid=2Z99W07P13WJH&amp;keywords=5v+power+supply&amp;qid=1554131668&amp;s=gateway&amp;sprefix=5v+%2Caps%2C133&amp;sr=8-13\">5v 15A power supply<\/a> <br>Black\/Smoked acrylic or similar <\/p>\n\n\n\n<p>Timeline:<br>&#8211; Engrave panels<br>&#8211; Attach and test LED strips<br>&#8211; Buy\/wire LED power supply<br>&#8211; Continue animating song<br>&#8211; Design final enclosure (order materials)<br>&#8211; Cut and assembly enclosure<br>&#8211; Finish final animations<\/p>\n\n\n\n<p>TIME PERMITTING::<br>&#8211; buy additional Acrylic + one way mirror film<br>&#8211; build infinity mirror style enclosure<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This week I worked on getting some WS2812b addressable LEDs I had laying around functioning with a basic arduino uno. To generate the LED patterns I am using Syncstrip which plays back a .png by pixel row real time with a song using a MS Visual Studio and C#. After messing with the program for&#8230; <\/p>\n<div class=\"link-more\"><a href=\"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/nahillman\/maquette-layered-light-show\/\">Read More<\/a><\/div>\n","protected":false},"author":99,"featured_media":756,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"cybocfi_hide_featured_image":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[1],"tags":[],"class_list":["post-749","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-content\/uploads\/sites\/9\/2019\/04\/cad.png","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/paNkLg-c5","_links":{"self":[{"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/posts\/749","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/users\/99"}],"replies":[{"embeddable":true,"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/comments?post=749"}],"version-history":[{"count":2,"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/posts\/749\/revisions"}],"predecessor-version":[{"id":772,"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/posts\/749\/revisions\/772"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/media\/756"}],"wp:attachment":[{"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/media?parent=749"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/categories?post=749"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.joshuarosenstock.com\/teaching\/lightart-d19\/wp-json\/wp\/v2\/tags?post=749"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}