Introduction: Bunk Bed Reading Light Bookshelf (powered by USB-C)

About: Programmer, woodworker, problem solver, problem maker.

This is a bookshelf / reading light that's perfect for the top bunk, with minimal protrusion from the wall, and utilizes the ceiling to reflect soft light downward for shadowless reading.

Powered by USB-C Power Delivery. Because I badly wanted to. And, it provides a low-voltage wire running near the kids beds.

3-way switching (switch on each end) so we can easily reach up and turn off the light if the kids fall asleep before turning it off.

SOFT LIGHT Reflection. The ceiling reflects very nice soft light downward as a perfect reading light.


Main Components:

12V LED Strip (the dual temp ones that I like)

USB-C PD Spoofer ZY12PDN for 5-12V

USB-C Power Supply w/ support for 12V @ 2.5A
(note: the 2-port version of this is only 12V @ 1.5A)

USB-C PD Cable (10ft)

LED Aluminum Angle Channel with Diffuser


Regular 2-way Toggle Switch

2x 3-way (ON ON) Switches

Fuse Holder + Fuse Assortment Kit


Quick-Release Wire Nuts

18GA Copper Wire (black + red)

Female Spade Connectors (blue)

Tools Used

Multimeter w/ Current Clamp (a sweet Kline kit)

Soldering Iron


BTW, I use affiliate links and adamantly refuse to let them dictate the content I create. Read my stance here: Your usage of the links is much appreciated and very tangible.

Step 1: This Is an ITERATIVE Instructable

FIRST, we'll build a primitive, working version of the final(ish) product. THEN we'll do current calculations, add more LEDs, add switches, etc.

This should enable a very tangible learning experience - calculating current based on measuring the actual circuit right in front of us, understanding 3-way-switching by swapping out a working 2-way switch, etc.

At least, that's the way I like to learn.

Step 2: Assumptions Re: Power

Before we go into technical details, let's just set some basic rules to make this easy. I'm assuming:

  • 12V LED Strip (here are some)
  • MAX current draw is 2.5A or less (cut the LED strip to bring it under 2.5A)

We'll get into those details later in the "Power Calculations" step. But since we're doing this iteratively, we start with rules and move towards understanding.

Sorry, Mr Griswold.

Step 3: Double-Check Your USB-C Power Supply for 12V

Not all USB-C power supplies supply 12V. Almost all supply 5V, 9V, 15V, and 20V, but 12V seems to be an option only on some.

To save yourself some headache in the next steps, read the fine print on your USB-C power supply. Make sure it lists 12V as an output capability.

[screenshots show 2 USB-C power supplies. One supports 12V @ 2.5A, the other doesn't.]

Step 4: The Shelf

I'm going deep into the USB-C, 3-way-switching, and other electronics of this build, so I'm going to avoid the specifics of shelf-building and will just define the key attributes related to this Instructable.


Want 1 switch? You only need 1 side box for the electronics (see picture A).

Want 2 switches? You'll need 2 boxes *and* a way to run wires between the two boxes. (see picture B)

But, I did make a video for you. Here's how I built my shelf in case it gives you ideas.

Light Direction

We are shooting the light UP to the ceiling to reflect back down (softly) on the kids' books. This will provide a very nice shadow-less reading experience.

If you read in a chair or on the floor, you may want to fire your lights downward towards your books.

Step 5: Program Your ZY12PDN USB-C Spoofer for 12V

It'll default to 5V, but we want 12. We need to make the light GREEN, because GREEN=12V.

This is for the ZY12PDN that's configurable to 5/9/12V.

Per the instructions in this GITHUB that worked for me, here's my slightly clarified version:

A) Press and hold the button as you insert your USB-PD compatible USB-C cable. The RGB LEDs should flash quickly.

B) Release the button. You are now selecting the default operating mode of this circuit.

C) Press the button to move to the next default mode until you get to your desired voltage..

D) Hold the button to turn off the LED and select the current mode as the default.

You want green. Green is 12V.

Problems? See the step titled "Double-Check your USB-C Power Supply for 12V" as that was my issue.

TL;DR, see the 23-second video:

Step 6: Prepare to Be Spoofing

This will make the next steps easier.

  1. Unplug your ZY12PDN
  2. Solder wires on the ZY12PDN
  3. Attach quick-connectors as in the photo above.

We'll make good use of those quick connectors.

Step 7: Start W/ a Tiny Strip of 12 LEDs

Cut a strip of 12 LEDs out of your LED reel. That'll give us something to tinker with until the "Power" steps.

Solder wires to your LED strip and strip the other ends.

(you may notice I'm using a 2-tone LED strip with warm & cool LEDs. Don't worry about that. I'm combining the negatives and treating it as a regular strip.)

Step 8: First Glow!

Hook it up and plug it in!

Do you see the light? I hope so! Let's start adding stuff.

Step 9: Power: Measuring Tiny Strip Amperage

Let's go through the power steps now. It's the responsible thing to do.

At this point, we're using pretty petty amount of amperage. But our hearts are set on a longer LED strip, right? First, we need to figure out if our other components (power supply, USB-C spoofer, etc) can support our hearts' desires.

We're going to measure our tiny strip, then calculate roughly how much current the longer strip would draw.

Let's measure the amperage drawn by our ...current... setup.

Using Jenfoxbot's guide, and my pic above for reference, see how much current your LEDs are drawing!

My tiny strip drew 0.18 amps.

Your tiny strip drew ________ amps. < write it down...just not on here.

Step 10: Power: Calculating Longer Strip Amperage

We need to keep our LED strip drawing less than 2.5A for now. More on that in the later step "Let's talk Limits."

How long of an LED strip will keep us under 2.5A? Let's do some calcstimation to find out.

Take your Tiny Circuit amperage (mine was 0.18 Amps) and multiply it. Use this method to estimate the length of strip you'd like. Example:

0.18 * 10 = 1.8 amps  

So, if I used a strip 10x as long, that'd be fine (only 1.8 amps). But that was slightly too long for my shelf, so I used a strip 9.5x as long.

0.18 * 9.5 = 1.71 amps

Naturally, that's still under the 2.5A cap.

So think through this a bit and determine a LED strip length that's ideal for your project, and under the 2.5A max.

Step 11: Connect Longer Strip & Measure Amperage

Go ahead and make the long strip and measure the current as you did with Tiny Strip.

  1. Create a LED strip with the number of LEDs you think is proper based on the above calculations
  2. TEST IT using your multimeter
  3. Verify it's within the working range of your power supply and spoofer.

Mine measured 1.56A, a bit less than the 1.71A I calculated. Calculations can be weird like that. There are underlying reasons involving precision and resistance, but we'll blame it on the calculations so we can move on.

Step 12: Power: Let's Talk Limits

The Power Supply I recommended is a 30W power supply andclaims it safely supports 12V @ 2.5A. 2.5 Amps is therefore the most current we can draw without prompting unfortunate events.

The ZY12PDN Spoofer claims 5A max. This is our other primary limiting factor*.

(*Wires, switches, connectors, dimmers, etc all have max current ratings, so check the ratings on those as well, but the ones I linked to are good for at least 2.5A.)

So, with this setup you CAN (dangerously) draw more than 2.5A, and risk damaging the components or burning your house down. If you want to run more than 2.5A of LEDs safely, you can get a bigger power supply (say 12V @ 5A) and plug in more LEDs. I'd advise against running right near max, but assuming you're not insulating your supply or spoofer with a snuggie, you can increase your LED count up to the point that it draws the max listed amperage.

For the purpose of keeping this Instructable straightforward, I'm going to continue assuming that your LED strip length is designed to draw less than 2.5 Amps.

On a positive note,

This means that if your strip draws less than 1.5A, you can go for an 18W power supply that supports 12V @ 1.5A (12V x 1.5A = 18W) and save some money! Just make sure it lists 12V as a supported voltage! Here's one for about $10 that has the proper spec.

Step 13: Add a Fuse

Remove the multimeter leads, and simply swap them out with your fuse wires.

I recommend simply having this fuse holder + fuse assortment kit on hand.

Determine Fuse Amperage:

How many amps does your circuit draw _____? Round up to the next-highest amperage fuse and use that.

My circuit drew 1.7A, so I used a 2A fuse.

Step 14: Add a Dimmer

Add the dimmer directly after the fuse, following the directionality (input/output) labeled on the dimmer.

While these dimmers only interrupt/manipulate the negative wire (in this case), they need both positive and negative connections to operate (so they don't interrupt their own circuit). Therefore, it's easiest to just cut the + and - wires right after the fuse, and wire the dimmer after those.

Step 15: Add a Normal, 2-Way Toggle Switch

Ok fine, most people will want a 2-way switch, so here it is.

Simply place your 2-way switch in-line with your circuit somewhere so it can interrupt your circuit.


Step 16: Add the 3-Way Switches

I realize 3-way switching on a shelf is a fairly specific desire, but 3-way switches are cool. And this is a great time to explain them!

Unplugyour 2-way switch, but leave the wires disconnected!

  • Get your 3-way switches. Take a look at the CENTER pins and say to them "Why I'm gonna connect you..."
  • Connect 1 wire to the CENTER pin of Switch A, and the other wire to the CENTER pin of Switch B. [figure B.]
  • Connect the side pins. Side pins on switch A should connect to side pins on switch B. Which pin doesn't matter, as long as it's a side pin.

Go see Phil B's Instructable for some cool, basic, proper graphics about 3-way switching.

NOTE: In this pic, I'm not using the right switches. But for the visual (without seeing the label) they work. They are, in fact, ON/OFF/ON switches. They technically work in a 3-way switch setup, except each switch has the ability to turn off the lights completely. The proper 3-way switches you need are ON/ON switches. Anyway, I used these because I already installed the ON/ON switches in my shelf. But point is, you want THESE style switches. Not the ones from the pics above.

Step 17: Mount LED Strip in Aluminum Channel

This helps dissipate heat and diffuse the glow.

Stick them. Work slowly from one end to the other, ensuring the LED strip makes good contact the entire way down the channel. This will help with heat dissipation.

Hot Melt the Solder Pads: Take a look at your solder connection to the LED strip. If those contacts/blobs are close to making contact with the aluminum channel, put a dab of hot melt glue behind them.

Step 18: Recreate the Circuit on the Shelf

Now that you have your circuit working, recreate it in its final destination.

Run the wires (replace/extend if necessary) and mount the LED channel on the shelf. Basically, make it official. You're almost done.

Drilling for the...

  • Switches: The Baomain toggles use a 1/2" hole.
  • Dimmer: 1/2" hole (if using the 3D printed knob on next step). Otherwise, I'd just leave it in the plastic housing it came in and use that knob.
  • USB-C Port: 3/4" hole (if using the 3D printed part in next step). Otherwise, you could make something custom with a drill & a file.

Step 19: 3D Printed Bezels & Mounts

If you don't have a 3D printer yet, stop, pause, and go get one using whatever means necessary as long as it's mostly legal.

Ok now that you have that, go get the STL files I designed and put on Thingiverse for the:

Print out those suckers and hot melt glue them into place.

Step 20: That's All!

Hang your light and plug it in!

I hope this helped introduce you to using USB-C Power Delivery for custom devices, circuit amperage calculations, lighting considerations, 3-way switching, and the sort of additive-prototyping-method that I like.

If you end up building something inspired by this, be sure to share it online and leave a link in the comments!


Subscribe to my YouTube channel KeithsTestGarage

Follow me on Instagram @keithstestgarage

Lighting Challenge

Runner Up in the
Lighting Challenge