Introduction: Chroma - Light in a Box

Picture of Chroma -  Light in a Box

chroma.

light in a box.

chroma is a simple box. It lights up when you want it to. Whatever color you want, whenever you want.

chroma is an app controlled dual edge lit box; made possible by the edge lighting abilities of acrylic.

chroma costs under $25 and weighs just over 200g.

features:

2 types of rainbow effects with speed controllers

manual color control

3 favourite color presets

completely self contained

IOS support

Step 1: Supplies

Picture of Supplies

to build your very own chroma, you will need these materials:

  • 75x12 wood strip
  • 20x8 wood strip
  • 3mm thick A4 acrylic sheet example
  • bluetooth LE (4.0) module (HM10) example
  • 2600mAh portable phone power bank (keep the size in mind) example
  • arduino nano
  • usb cable for arduino
  • 2x 8 LED neopixel sticks example
  • sticky tack
  • pva wood glue
  • hot glue + gun
  • other tools as needed

*all measurements are estimations

Step 2: Disassembling the Power Bank

Picture of Disassembling the Power Bank

First off, why would I be using a power bank instead of a real battery?

The reason I chose to use a power bank was because of the cost. They are just so extremely cheap! The cable, charging circuit and battery was a grand total of $5 including shipping (this wasn't even from china).

But the power bank itself isn't the smallest thing. To make it smaller I just unscrewed the little canister case it came in. And out popped a little lithium charging board with a single cell battery; awesome!

Step 3: Acrylic Enclosures

Picture of Acrylic Enclosures
  1. cut 2 identical pieces of wood in the dimensions: 110x70x12
  2. cut 2 pieces of acrylic that are slightly larger than the pieces you cut before. This will require the use of a grinding cutting disc instead of a wood cutting disc. A grinding blade will stop the acrylic from cracking when cut.
  3. use the wood glue around the edge of the acrylic to glue it to the wood piece, making sure it covers the whole side.
  4. clamp them together until the glue dries
  5. sand down the edges of the acrylic to the wood.

you should now have what is shown in the last picture of this step.

Step 4: Wooden Side Pieces

Picture of Wooden Side Pieces

the wooden side pieces go between the two pieces you made in the previous step. These side pieces then need to be glued down to 1 piece (not both of them) so they resemble the second picture (do not put a piece on the back yet). After the glue had dried you can then sand it back so the bottom piece.

Step 5: The Lights

Picture of The Lights

possibly the best step of all, installing the lights. This involves soldering some short wires from 1 of the neopixel sticks. These connections will need to be made from first stick's the GND and 5V (or VIN) to the second's GND and 5V respectively; then the data OUT to the data IN. Now on the first neopixel stick you need to just solder some male headers to them.

If you know what you are doing then feel free to go ahead and connect the lights up to an Arduino and run some test code to see the lights flash.

After that is done, use hot glue to hold down the first led stick in the middle of the front of the piece you made previously, as close as possible to the front wood divider (see the third picture).

The next part is slightly tricky as it requires a bit of guessing.

What you will be doing is re-creating what you just did but on the other piece of acrylic and wood with the second, unglued neopixel stick. What I did was measure the width of the wood strip and then make a marking line on the second piece of acrylic and wood. I then guessed the middle position of the piece and glued the stick on.

Step 6: Wooden Stoppers

A small addition before the nearing completion is 2 small pieces of wood that act as stoppers for the door on the back chroma. These can be any width, but need to be the the same or less the distance away from the edge as your wood width is.

For example, if you are using 12mm wide wood strips the stoppers will need to be less than 12cm away from the edge so that the piece that is inserted doesn't inset into the box.

Step 7: Circuitry

Picture of Circuitry

This is a really simple circuit. First connect power to the BLE module and the first neopixel stick. Then connect the data IN from that neopixel stick to D9 on the Arduino Nano using a female -> female connector.

Now connect from the BLE module:

RX -> D10

TX -> D11

and that's the entire circuit!

Step 8: A Compact Box

Picture of A Compact Box

To be so compact, chroma has to make use of the space available. This means making the use of all the space available. So this is the step that will show you just that, how to fit all this stuff into such a small space. The first thing that can be optimised is the USB cable.

Mine was 1m at the start but that simply cannot fit in the space provided. It is best to get a small cable to start with or if you are like me then you just cut off the middle and solder the connections together you can get a shorter cable in no time!

Next the challenge was to fit everything into the box. These were the guidelines:

  • The box must be able to be closed on all sides
  • The battery must be accessible and easily taken out for charging
  • everything must fit inside the box (obviously)
  • Nothing should short something else

So taking all this into account I came up with (after much trial and error) the design shown in the 5th picture (sorry for the blurry picture). There needs to be a spot at the front of chroma to allow for the neopixel stick to fit in properly. There is also a piece of card (in this case bubble wrap card) to seperate the Arduino from the neopixel sticks so they don't short each other.

The bluetooth module is hidden inside the Arduino nano's header pins. and when the battery is taken out it pulls the charging circuit out with the usb cable. It is a very cool design if I do say so myself.

Then for transport and times sake, I just put a rubber band around the box to hold the top on while it wasn't glued.

Step 9: Glueing It Together

Picture of Glueing It Together

Finally! the last step in the sticky process of glueing. This is a simple step really, just make sure to align the top to the side pieces as best you can (sanding is always required) and use wood glue to glue it all down.

Make sure to clamp the piece together to allow for a clean stick, or even just use something heavy and put it on top of the box while it dries.

Step 10: The Back Door

Picture of The Back Door

The back door (in this case) is just a wood strip that is slightly smaller (lengthways) than the hole it needs to fit in. Just cut the piece from the same wood as the side strips. It should fit snugly (but not too tightly) in the back hole that has been created.

Step 11: Finishing Touches

Picture of Finishing Touches
  1. To add stability to the back door and secure it in add some sticky tack on the wood pieces holding it from going in.
  2. Sand down the edge until they are all smooth, crisp and sharp.

Thats it for the hardware side of things.

Step 12: The Code and App Configuration

The code for the Arduino is available here:

Pastebin| Pastee

Requires the SoftwareSerial and Neopixel libraries. Both are available for download in the Arduino library manager.

Now for the app configuration: first start by downloading the "Bluetuino" app available on the App Store (no google play, sorry!)

You will be presented with two types of controllers - sliders and buttons. These all send "codes" as text that the Arduino then deciphers and then does something. This is the setup I have (and what the code I provided supports):

The way this list will works is: Title | Type (S/B) | Subtitle | Code | Min | Max (min&max only for sliders)

RED | B | n/a | 876

GREEN | B | n/a | 877

BLUE | B | n/a | 878

RAINBOW | B | Full | 1

RAINBOW | B | Individual | 2

Effect Speed | S | Affects: Rainbow | Slider | 1 | 1000

MANUAL COLORS | B | On/Off | 55

Red | S | Manual | RedSlider | 0 | 255

Green | S | Manual | GreenSlider | 0 | 255

Blue | S | Manual | BlueSlider | 0 | 255

The way you use these controls is this: The first 3 buttons are the master colors. They will be displayed when there is no effect currently being shown; these can be changed in the code to other colors. The rainbow effects are as the name implies; with their speed chosen by the next slider, the effect speed. The 4th last button, manual colors allows for manual color choosing, with the color being affected by the R,G and B sliders below it. Manual colors will override the master color until you tap it again. It is in a sense a toggle switch instead of a momentary switch.

Step 13: All Done

That's it, have fun with your coolest new desk toy, Chroma!

Be sure to leave an "I made it" comment below with a picture of yours and also make sure to vote for this instructable in the contests.

Thanks :D

Comments

JROdden (author)2016-06-11

Great instructable! What kind of wood did you use?

PerfectPixel (author)JROdden2016-06-11

It was just the cheapest pine wood from the hardware store.

JROdden (author)PerfectPixel2016-06-12

OK, thanks! Just one more question before I start on the box: what tool and RPM did you use to cut the acrylic? I've never succeeded in cutting acrylic nicely without it cracking. Maybe you can show a link to a picture of what tool you used?

PerfectPixel (author)JROdden2016-06-12

It's this tool here:

Rotorazer Saw | AMAZON

And I used the diamond grinding disc, not the wood chipper disc. I've found it's the only tool that cuts acrylic without cracking it.

Fezder (author)2016-04-22

Nice! Strange that normal PVAC wood glue worked for acrylic; PVAC glue is intended for materials that can absorb water like wood, paper, cardboard etc.....then again, that much tensile strength Isn't needed for this project so main thing is that it worked. :)

PerfectPixel (author)Fezder2016-04-22

Yeah - thats just what I had lying around.

MarkAsRead (author)2016-04-22

Is it possible to get a simple wire diagram of how to connect the Nano to the LED?

The pictures aren't really clear.

Excellent instructable! I can't wait to build my own.

PerfectPixel (author)MarkAsRead2016-04-22

Just making sure, have you read the text on step 5 and step 7? They were meant to explain the wiring, not the pictures.

MarkAsRead (author)PerfectPixel2016-04-22

I have read the chapters and they kind of make sense, but a simple wire diagram would really clear it up for me. :)

RonM62 (author)2016-04-05

I like it! :D But would it still work if I don't use Arduino? I know Arduino is used for the app control and stuff, but I don't really need it. I just want the box and the colors. Would it still work without Arduino?

PerfectPixel (author)RonM622016-04-05

Are you wanting the box to be a single color? Or do you want it to still be able to have the rainbow effects and such?

antennas (author)PerfectPixel2016-04-21

Just buy colour changing led strip and they come with a remote. Done.

RonM62 (author)PerfectPixel2016-04-05

Yes I want it to have rainbow effects etc.

PerfectPixel (author)RonM622016-04-06

Then it would need some kind of micro controller inside it, and the best bet would be an Arduino. You could just omit the Bluetooth module.

Lee Wilkerson (author)2016-04-06

Cute! You make me wait until I have read all the way to the bottom to say the app is only available from Apple?

It says so on the first page....

RAMEESK (author)2016-04-05

can i have the app ported to support on android?

PerfectPixel (author)RAMEESK2016-04-05

I didn't make the app neither do I own any android devices so it doesn't look like I can, sorry!

RAMEESK (author)PerfectPixel2016-04-05

ok its fine ;)
anyway cool project

TiborÁ (author)2016-04-05

Looks nice, but I thought it's an actual box, that can contain stuff, so it's actually useful. That would be a challange, wouldn't it? :)

PerfectPixel (author)TiborÁ2016-04-05

Im sure if you made it big enough that you could fit actual stuff in it. The design is fully scaleable.

TiborÁ (author)PerfectPixel2016-04-05

As a next project? ;)

I don't have a place and tools to make it.. or time.. or ambition, but I really like these kind of stuff. :)

TomG37 (author)2016-04-04

If someone built a pc in a larger version of this I would be sooo happy.

TomG37 (author)2016-04-03

absolutly amazing gotta make this.

Fathomlis (author)2016-04-02

Well done...it really looks good. Great!

ibenkos (author)2016-04-01

Thank you so much for this! I was going to buy an android tablet so I could use it with the Arduino, but now i know I can use my iPhone :)

PerfectPixel (author)ibenkos2016-04-01

That was exactly my problem too! Just make sure to use a BLE module (like the HM-10) and not an older bluetooth version modules (e.g. HC06, HC07)

onion2 (author)PerfectPixel2016-04-02

Why ? I don't understand why we can't use a HC05 ? :)

PerfectPixel (author)onion22016-04-02

As far as I know, most of the HC xx modules use the bluetooth 3.0 standard. This will work on PCs and Android devices. Apple has chosen not to support bluetooth 3.0 and instead only allow bluetooth 4.0; commonly known as BLE (bluetooth low energy). If you are planning on using an android device you don't need to worry about this; only for IOS users.

onion2 (author)PerfectPixel2016-04-02

Thank you very much for your answer, I use Android so I can use HC-05 :) thank you

mike_skinner (author)2016-04-02

I'm going to build one as part of a Bluetooth speaker build - thanks for sharing!

Good idea! Just make sure to make it big enough :D

Transquesta (author)2016-04-02

Nice design!

Tip: stagger your light guides (drill holes) in rows or put them much closer together. Your light will look much smoother (less pooling) that way.

Antzy Carmasaic (author)2016-04-01

Great instructable! The effect looks very beautiful. It reminded me of the Raspberry PI Slice Media Player on Kickstarter. I'd love to implement this in a future project if possible...

About This Instructable

38,616views

868favorites

License:

Bio: THIS ACCOUNT IS INACTIVE
More by PerfectPixel:Spectrum - Geometric Pyramid of LightBluetooth Fan Speed ControllerPencil Key Holder
Add instructable to: