Cut this together from a bunch of video i shot on my phone from the festival. thanks to Al for shooting some videos on the Wow Suit in action
“I didn’t think this through”
I learnt some very insightful things last weekend, whilst attending Burning Seed 2015. This was my very 1st “burn” ever!
Many thanks to @fyrefly_nz for capturing the #wowsuit in all its glory at #burningseed #burningmanaustralia #burningseed2015 Thanks to everyone who came up to me and enjoyed the light show. So many hugs,so many wows. If anyone has pics or videos of the suit Pretty Please post them with #burningseed or #wowsuit
Above is an awesome still shot of me wearing the Wow Suit and the V4 LED Mask Hot glue is not the best thing to use when making complicated electronics used in the Australian outback! Who would have thought ? Whilst none of my creations suffered at all, it was the very 1st thought that ran through my head as i opened my car at 5pm after a 30 sunny day. I met some very interesting people, one awesome gent told me about E6000 which is a solvent glue that solidifies hard permanently. I will be trilling this for my future wearable projects
A really nice demo of the #wowsuit in action at #burningseed #burningmanaustralia #burningseed2015 a few more coming up shortly #apa102 #raspberrypi A video posted by Elec Dash Tron Dot Org (@wow_elec_tron) on
The best way to test your power usage is to run it in a real world scenario. The wow suit lasts for exactly 6 hours on 4 x 10ah packs. The 5th power pack, which i use to power the RPiA+, was 70% full after the 2nd night of use. I managed to to swap over the 4 LED power packs at about midnight with the help of my bestest friends.
People LOVE to hug at festivals. Why didn’t i think about this one? about every 3rd person who came up to to check out the suit wanted to hug me. “I want a light hug” …. “bright hug me”….”oh my god woooow…can I please hug you”. This is totally awesome, and an absolutely acceptable way to go WOW in my books! No one was denied a hug…well almost no one, there was that one really smelly naked hippy! The suit stood up to the challenge and didn’t break.
Dancing with Jord in the #wowsuit at #burningseed #burningmanaustralia #burningseed2015 #apa102 #raspberrypi A video posted by Elec Dash Tron Dot Org (@wow_elec_tron) on
Test your code over and over! Whilst standing in front of a small crowd of people, suddenly my whole right side went dark….i immediately freaked out…and then 5 seconds later immediately got a wave of relief when I realised I coded the frame to buffer incorrectly whilst shifting pixels! I then stopped looking down at myself in fear of seeing this dreaded bug every 10 minutes.
If you plan to wear almost 2000 very bright animated LEDs on your body, PLAN your evening accordingly. I found myself unable to enter any small covered areas in fear of freaking out the crowd around me. I also stood helpless as hundreds of very munted people drooled over the animations! This i didn’t mind so much, i just wasn’t prepared for it.
15 x 10Ah @ 5V Battery Modules
All the Battery modules have arrived and all work! Yei!!! I have planned to run the Wow Suit for 3 nights. The suit requires 4 x Modules for the LEDs and 1 module for the Controller. I have recently migrated all my code and control software to a Raspberry Pi Model A+. Im sing the “mraa” NodeJS module to drive the suit via SPI. The A+ only requires 5V!!! Another YEI!
Today I have completed the initial set up of my RPi A+. Wow that took a while. I needed a specific set of tools ready on the device:
- Network connected via WiFi
- Basic Apache install to host the Client interface page
- Basic FTP to simplify uploading code and files
- Node JS to run the Wow Suit software
- Node-SPI module to enable NodeJS to use the SPI port on the device
Installing and configuring Node and the SPI modules was the MOST difficult part. I was initially planning on using the MRAA module, but it has so many prerequisites and build failures that i bailed on it. I may go back to it if the current node module I’m using does not suffice.
This post was by the far the only advise that worked on the A+ board. I initially attempted to compile the latest version of NodeJS directly but the board kept crashing mid way. So I’m copying the instructions here for anyone else and for future reference for myself:
Update apt-get sudo apt-get update Upgrade apt-get sudo apt-get upgrade Download the latest node build wget http://node-arm.herokuapp.com/node_latest_armhf.deb Install the package using dpkg sudo dpkg -i node_latest_armhf.deb Test Node and NPM node -v npm -v
At this point Node works perfectly as well as npm. Now on to the next issue. SPI!
This is the “pi-spi” nodejs module. It is the ONLY one that would compile and run. I have not yet tested that it works as I’m at the office, but its good to know that it compiles and runs!
Rendering a Line in a 2D bitmap…who would have thought that was hard? Here is some code I hacked up from the Rosetta archive lineTest
No pictures as it was a disaster at 1st. There was not enough power being distributed via the power rails that daisy chain along each module. Only about 1/4 of the suit worked, whilst the rest flickered wildly. I ended up soldering in 3 additional power taps into the daisy chain at different spots and that got the suit up and running. I will most likely need to solder in a power tap into each of the 12 modules. Even after reducing the maximum power level to 50 (out of 255) i noticed that when the suit was white, drawing the most current, it began to flicker a little. This was a dead indicator of low power. I may need more than 4 power banks…maybe a whole backpack
I received 4 new 10Ah Battery Modules today from this eBay store. Pretty damn cheap, $110 aud for 4 packs.
I have ordered 4 new battery modules for the suit. They should arrive this week. Wiring for the power system has been completed and will need to be laid out on the suit material and stuck on. Ill start work on the power module carriers this week but this is the last piece of the puzzle to go in.
Memory Instability in Intels MRAA SPI Implementation
I have heard back from Intel, and have been given an updated mraa library build. Its a huge improvement but its not 100% there. They think the problem may be with Nodes engine on the Galileo. As suggested, I will be trying some manual garbage collection in my software.
Intel Galileo replacement
I have ordered an Intel Edison board just in case this memory problem is unsolvable. I am actually hoping on using the Edison instead of the Galileo in the future as its smaller, cheaper, faster, has built in WiFi and uses 5V.
The 10 meters I originally ordered were not enough, so i got another 10 meters.Arrived today, and if I work really hard should be able to have all the modules build by the end of this week.
Here is a nice example of a new visual effect I’m incorporating into the Wow Suit. This one renders small 4px x 4px wide squares like small explosions:
Spreadsheets are super handy for this kind of work. Its a kind of Meta pixel mapping and It saves me a TON of time. I have so far created a full class for the Wow Suits LED matrix. It includes 3 major blocks of data
- pixelGrid: An array containing the pixel map. This is a 40 x 64 item array of 3 byte blocks (7,600 bytes). All rendering and processing is done directly to this block of data. its the bitmap representation of the suits LEDs
- LEDs: An array containing n (number of LEDs in the suit) number of bytes x 4, 1 start frame of 4 bytes, set to 0, and 1 end frame of 4 bytes, set to 255. Each LED block has a start byte, which contains brightness data for that LED, and 3 bytes each representing Red, Green & Blue. This is the data block that is sent out to the suit via SPI (7,688 Bytes)
- rowMap: An array containing a map of physical addresses of each LED relative to its position on the suit. This is a 40 x 64 item array of 1 short Integer (5,120 bytes). This is used to find out the physical ID of an LED in the real LED data block, LEDs that is sent out via SPI to the suit
I have created a full set of functions to set up the data structures, render horizontal and vertical lines of any given length, and a smooth dimmer function for frame blending.
On another note, I have received the MIC IN audio modules I was waiting on from eBay…
|I really hope to utilize this and make the suit and masks audio responsive.|