Is there gonna be any new vids soon? :3
Even if it's just saying what the progress is, and maybe show. Couple animations with the progress of the rainbows!
So... bad news first.
I cooked my test rig. Circuit popcorn. When power cycling the display (very common when messing around) I inadvertently set the power supply to a higher voltage range. High voltage to rainbows, very not good.
So that leaves me with only the main display to work with. And unfortunately it gets (somewhat) worse.
The helmet display is showing its 'age' quite poorly. I really don't handle it very much, but it seems like every time I do (or the cat jumps up on the worktop) it gets worse. Nothing has been show stopping (yet) and I figured I'd just do a final 'tweak and fix' before the helmet went together in it's most permanent form. But it does have problems with cross coloring (insufficient insulation between two colors) and inconsistent color (any number of problems).
Another 'age' related problem is that I can't really buy replacement rainbowduinos anymore. The newer rainbowduinos on sale are substantially upgraded with components and features I really don't need, and probably want even less given that I strip the boards down to minimum.
I faced this problem before, just before I did the strip/soldered wires mod to the helmet. I debated if I should try and spin my own PCB version of the rainbow, carrying over the the parts list from the OSH (open source hardware) rainbow design. I'd try and reduce the footprint and move around the pin-out to better work with my design. A year ago I didn't feel confident enough in my EAGLE skills to pull the trigger.
Another problem that I've been pushing into the back of my head: I may not have made the helmet big enough. I always thought "I'll just make it fit" but I can only defy so many laws of physics cap'n.
So. Yah. Best way to describe what happens next is with copy/paste of my project to do list:
Test Mega(baud) Serial - DONE
I've been messing around with megabaud speed serial. I've been using 400KHz I2C so far for 'talking to' the display, for those playing at home. I've gone as high as 5.25Mbaud, or a little over 13 times faster. This, coupled with RS485 (a more fault preventative version of common RS232 TTL serial, or what I'm using) could be the best option moving forward.
Test Fast-Serial-2-Display - DONE
To apply the megabaud stuff, I wrote some proof of concept code for a Teensy 3.0 to convert the display data to I2C, so that the diagram looks like:
DUE
-> serial -> teensy
-> i2c -> Display
It works, but not flawlessly. That leads to the next item.
Research data integrity improvements/checksums/etc
So far the fast serial stuff is more error prone than I2C, probably in no small part due to the higher speeds I'm focusing on using. I'm aware of some methods of
detecting errors (checksums, packet size, etc) but would love to figure out a method of resisting those errors in the first place. The obvious starting point is cranking down the buad rate, but I'd rather fix everything as much as possible first and then step down the speed as a backup improvement to be assured of the data stability.
Prototype RS485, PARTS - MONEY
Tied into the data integrity is actually finding out where the breakdown is happening. If I can breadboard an RS485 circuit in there and it works better, I'm pretty sure that PCB stuff in the future won't be a big problem and will only make the integrity better (since PCB's typically have shorter 'wires' than the breadboard prototype and you can do things like impedance matching easier). But new parts cost money, a commodity I'm short on currently while I continue to search for a new career.
Prototype WS2811/WS2812 LEDS - MONEY
I mentioned that I'm looking at these. Basically, these are the driver chip (WS2811) and integrated package (WS2812, 5050 LED sized) variants commonly used in LED strips/strands. This is currently my favorite for replacing the rainbowduino in the next generation of display LEDs. Many, many advantages include:
>reduced weight (less complex sub-visor, fewer wires, lighter LEDs, no rainbow boards, etc).
>'simple' wiring (power, ground, and 'daisy chain' of data in/out)
>greater brightness control (calibration correction, more colors, etc)
>'better' brightness/power efficiency (I'll need to know true brightness to really compare, but basic test math says better so far)
Challenges are:
>'dead bug' soldering (not all that different from what I had to do for last display)
>'biblical' power consumption at full brightness (0.06A per led, 5V power, 384 LEDs, 23+ amps, ~120W, I might software limit the max brightness to 1/4 or less)
>finicky control (other people are making libraries for high speed, 32bit controllers like the Teensy 3 and Arduino Due)
I need to buy some to play around with, and to quantify some of the other peripheral changes (higher view angles, brightness consistency, etc) before going whole hog. And even the test hardware will cost money as above.
Try out 123D Catch for 3D head scan
Autodesk is trying very hard to covet the making community, but that doesn't imply a bad thing. Something I became peripherally aware of (again) is 123D Catch, which does images-to-point-cloud conversions. Basically, take lots of pictures at different angles, and software combines the pictures to give you a 3D object by using comparison of points in each image. I've coveted a 3D model of my head since I first started out. I tried a packing tape and cyran wrap concoction a long time ago that gave me a rough copy of my head to take some
very rough measurements that I used for scaling. With an actual 3D scan, I can get (hopefully) fantastic fit checks. This has me rather excited.
Re-scale Helmet
Based on findings from the head scan, I may re-scale or otherwise alter the helmet for a better fit.
Sub-visor Redo
Based on head scan and if I go with the WS2811/2, I'd redo the sub visor. One thing I'm contemplating is changing the LED orientation. In the current design, all the LEDs face a parallel vector, ie they point straight ahead. This made sense with highly directional LEDs, and it was 'easier' to implement in CAD. With a WS2812 5050 sized led, the view angle is about 120deg, so I could instead have the LED face normal (perpendicular to the tangents of the curve) to the sub-visor surface. This may or may not be a more 'natural' appearance the display, especially when you look at it off center. Something else to test with the WS2812s I buy.
VU Eyes Animation
I did just have an idea for a new animation while watching Interstella 5555 while running this evening (try it some time). I'm thinking digitally rendered VU meter 'eyes' that have 'needles' 'hinged' at the outside edge of the display. Still laying this out in my head and I need to figure out how best to sample the audio (probably just using the EQ chips to help protect from the music voltage levels). Once this is up and going that will probably be the next video.
Long winded update. No pictures, no videos. Sorry about that.