The goal of this project was to develop intelligent skins for houses. More specifically addressed to the needs of learning environments. We aim to build a window with the ability to automatically detect bright light and shade itself as a result.

We considered using both electrochromic glass or polarizing films for shading the window. The mechanical solution using polarizing films offers the possibility to continuously adjust light transmission and therefore improves usability. Because of this and because of the high cost of electrochromic glass we went for the latter one.

The basic idea is twisting one polarizing film against another. When both films are perpendicular to each other the window is shaded, when both are parallel the window is transparent. We employ a luminosity sensor in order to trigger the rotational mechanism.

For the prototype we used plain film with stripes on it to demonstrate the functionality of our window, this further reduced the cost of the prototype. In reality polarized films should be used in order to assure the desired functionality.

This project was part of Multimodal Media Madness 2014, hosted by the
chair for Computer Aided Architectural Design (CAAD) and the Media Computing Group of RWTH Aachen University. For more Thinking Skins, please check this page: http://hci.rwth-aachen.de/m3_ss14

Step 1: Get Necessary Components

Technical supplies / Electronics

1x Arduino Uno

1x NEMA 8 stepping motor

1x stepper motor driver

1x luminosity sensor

2x photoconductive cells

2x 5mm LED

2x 1k ohm resistor

2x 270 ohm resistor

circa 25 m wire, (1 x 0,14 mm^2)


Other supplies

1x material for the frame

1x MDF, (500 mm x 500 mm x 5 mm)

1x wood, (300 mm x 300 mm x 20 mm)

1x spray paint (e.g. silver)

12x wood screw, 3,5 x 35

3x M8 screw, 55 mm

11x M8 washer, 30 mm

6x washer, suitable for ball bearing (still able to turn, when put between two washers)

3x M8 ball bearing

3x M8 screw nut

4x M2 screw, 20 mm

4x M2 washer

3x felt pads (for furniture), 20-25 mm diameter

1x glow stick connector (inner diameter 5 mm, length ca. 25 mm)

fabric of an adhesive bandage

1x colored card, black (562 mm x 562 mm)

2x plexiglass, (562 mm x 562 mm x 3 mm)

2x polarized film (500 mm x 500 mm)

1x square timber, (45 mm x 15 mm), length 525 mm

2x square timber, (45 mm x 15 mm), 262,5 mm

2x square timber (5 mm x 10 mm), length 100 mm

1x square timber (40 mm x 10 mm), length 100 mm

1 x square timber (5 mm x 40 mm) length 300 mm

4 x wood screws, 2 x 16

2x nails, 1,2 x 20

wood glue/ hot glue

1x plywood, 3 mm (522 mm x 200 mm)

cable holders


heat shrink or insulating tape

hook-and-loop tape



milling machine


folding rule

sand paper

electric drill

drill heads in the sizes 2,5 mm, 3,5 mm, 5 mm, 8 mm and 10 mm drill heads



soldering iron


wire stripper



Step 2: Cut Wooden Elements

First we build the frame. It has a size of 562 mm x 562 mm with a depth of 280 mm. To fix the side elements you can either use cotter pins or ordinary screws.

Saw a circle in the 500 mm x 500 mm wood piece. Into this circle saw another circle leaving a 40 mm margin. This ring will hold one of the two polarizing films. Depending on which material you use a 30 mm margin might also be sufficient to ensure that that the ring does not deform.

Next cut the four mounts to hold the ring in the frame. Three of those mounts have a slit (8 mm wide) to make flexible adjustment of the ring possible. The last mount has a slit (5 mm) for the motor shaft and a pocket (10 mm deep) for the motor itself.

The easiest way to produce the mounts and the ring is by using a milling machine. The attached files include exact measurements for the mounts and the ring.

Step 3: Drill Holes and Spray Parts

Now vertically drill (drill head 3,5 mm) some holes into the side parts of the mounts. These holes will later be used to fix the mounts to the frame.

Take the motor mount and drill (drill head 2,5 mm) 4 holes for the motor attachment into it so that the motor shaft is roughly 65 mm away from the bottom of the mount. Also add a 10 mm hole at the slit at the height of the motor shaft to give the motor more space.

Drill (drill head 10 mm) a hole into the ring. This hole ought to be in the middle of the ring, 20 mm away from both sides.

Grind circle and mounts with sand paper, spray them with spray paint of your desired color and let everything dry completely.

Step 4: Fix Mounts and Ball Bearings

Now screw (woodscrews, 35 mm) two mounts onto one side of the frame and the other ones onto the opposite side. Keep the mount for the motor on the right side of the bottom of your frame. All of the mounts need to be about 30 mm away from the front and about 50 mm from the sides of the frame in order to ensure that you will be able to later adjust the circle into the middle of the frame. You might want to mark the positions for the mounts with a pencil.

For the next step take the M8 screws and put one M8 washer (30 mm) on each of them. Then you sandwich the ball bearings between two suitable washers and put everything onto the screw, too. To keep ball bearing and washer safe, it might now be necessary to put another of the M8 washers on every screw. Next is to put the screws through the slits of the mounts, put another washer on the screw if necessary and fasten everything with a screw nut. Don't set the screw nut too tight, because you might have to adapt the height of the screws.

Step 5: Attach the Motor

Drill a hole into each of the felt pads (drill head 8 mm), suitable to put the glow stick connector through it.

Take one of the last two remaining M8 washers and stick a felt pad directly onto it. Repeat this with the other washer. Now glue the three felt pads against each other so that the washers are sandwiching the pads. This piece will move the ring with our polarizing film in the end.

Take the motor shaft and put some of the adhesive bandage around it. Apply as much of the bandage as necessary in order to ensure tight fit between the glow stick connector and the motor shaft. Separate both parts from each other and repeat the same procedure for the glow stick connector and the felt pad sandwich.

Now the motor has to be attached to its mount. Take the M2 screws, put the M2 washers on them and put the screw through the drilled holes to fasten the motor behind the mount.

Put the glow stick connector with the felt pad sandwich back on the motor shaft.

Step 6: Fix Polarizing Films

Take the ring and the black card and draw a circle with a radius of 18 mm in the center of the card using a compass. Cut it neatly and put the card to the side for further use.

Cut the polarizing films into two circles with a diameter of 24 mm. Continue with adhering one of the films to the card. Now set the other film on top of it and turn it until you reach the position in which both films shade least. (Turning the film now by 90 degrees should result in shaded films.) Fix the film to the ring so that the hole in the ring points downwards.

Cut the foil covering the small drilled hole in the ring away.

Step 7: Built a Coverage for the Electronics

Take the square timbers and apply some spray paint. Spray one side of the plywood.

Glue both of the smaller square timbers onto the bottom of the frame so that the outer edge of the square timbers is 200 mm away from the backside of the frame. Each square timber needs to touch one side of the frame leaving a gap between them. Through this gap we'll lead the wires coming from our components.

The bigger square timber has to be positioned flushed with the backside edge of the frame and also fixed with some glue.

Adhere the 5 mm x 10 mm square timbers in the middle and on opposite sites to the long edges of the plywood leaving 15 mm (width of the bigger square timbers) to the edge. These will keep the plywood from falling off the big square timbers when used as coverage.

Step 8: Adjust and Measure the Ring

Put the ring onto the mounts and position it as central as possible. If your ball bearings haven't got very good quality you might have to leave a gap between the upper ones and the ring. Instead you can let the washers hold the ring in place.

Now measure the distance between the hole in the ring and the middle of the left frame side and the distance between the hole and the middle of the bottom frames side.

After measuring those distances you mustn’t change the height of the ball bearing on the bottom anymore.

Step 9: Create Mounts for Electronics

Saw a 20 mm x 20 mm (13 mm thick) big square out of some wood. This piece will be holding the luminosity sensor.

Now create the two U shaped mounts, which will later each hold a LED and a photoconductive cell. Saw two 30 mm x 40 mm rectangles out of the same piece of wood you used for the square. Then take some thinner wood (5 mm thick) and cut four rectangles out of it. The length of these depends on the distance between the hole of the ring and the frame sides, which has been measured earlier. Keep in mind that the distance to the left and to the bottom might differ. For either side you will need two rectangles, thus four rectangles altogether. Add about 10 mm to these measurements and take this as the length of the rectangle. The width of the rectangle has to be 40 mm, according to the width of the thick rectangle.

Take the thin wood rectangles and drill (drill head 5 mm) a hole in each of them. It should be in one line with the hole in the ring when you hold the wood to the frame sides. You should get this position if you drill the hole centered about 10 mm apart from the narrow side of the wood.

Step 10: Solder and Fix Light Barrier

Spray the parts you saw one step earlier and let them dry.

Screw (wood screws 2 x 16) two of the thin wood pieces on each of the thicker 30 mm x 40 mm wooden rectangles with the holes facing away from the rectangle forming an U.

Through the holes of both pairs of the thinner rectangles put one LED and one photoconductive cell. Make sure that you insulate all the wires from each other to avoid a short circuit.

For the left light barrier solder two wires (1150 mm) onto one wire of the photoconductive cell and another wire (220 mm) onto the other wire of the cell.

Also solder one wire (1150 mm) onto the shorter wire of the LED and another wire (220 mm) to the longer wire of it.

Take both shorter wires and solder those to another wire (1150 mm).

Repeat this procedure with the other rectangle. Here the wires only need to have a length of 500mm.

Insulate everything.

Glue the U with the longer wires to the middle of the left side of the frame and the other one to the middle of the bottom of the frame.

Step 11: Solder and Fix Luminosity Sensor and Motor

Solder four wires (length 1100 mm) to soldering points of the luminosity sensor labeled with GND, SCL, SDA and VCC.

Now screw or nail the luminosity sensor onto the square (nails 1,2 x 20) with the soldering points overlapping the edge of the square.

Glue the square with the sensor to the lower left edge of the frame.

Solder some wires to the wires of the motor and insulate everything.

Step 12: Lead Wires to Coverage

Drill a slit of 20 mm length (drill head 10 mm) into the bottom of the frame to put the USB cable through.

Lead the wires from the components towards the slit in in the square timbers one the bottom of the frame using some cable holders. Try to do this as neat as possible because you won't be able to hide the wires from sight.

Step 13: Fix Wires to the Microcontroller

For the technical aspect of our project connect all parts as displayed in the circuit diagram either by creating a circuit board (as we did) or by using a breadboard. Please notice that we also included a radio module on our board. Further information on this module you will find at https://www.instructables.com/id/Mobile-RFDuino-m3RFM/ .

Either solder or plug the wires from the components with your Arduino in the following way:

Light barrier:

Pin 1 - GND LED 1

Pin 2 – GND LED 2

Pin 3 – GND photoconductive cell 1

Pin 4 – GND photoconductive cell 2

Pin 5 – photoconductive cell 1

Pin 6 – photoconductive cell 2

Pin 7 to 10 – 5V for all components


Connect the wires from the motor with the motor driver. Use the same order for both motor and motor driver.

Luminosity sensor:

Pin 1 – GND

Pin 2 – SCL

Pin 3 – SDA

Pin 4 – VCC (3,3 V)

Step 14: Running and Testing the Code

To make the project run, you need to download and install the Arduino SDK. You can get it from http://arduino.cc/en/main/software.

Take the 'PolarizingWindowLib' folder and insert it in the libraries folder of your Arduino folder (usually C:\Users\Username\Documents\Arduino\libraries). Then go to https://learn.adafruit.com/tsl2561/use, download the 'Adafruit_TSL_2561 V2' and the 'Adafruit Sensor' library and add them also to your library folder.

Open the 'PolarizingWindow.ino' with your arduino sdk.

The program goes through the following procedure:

At first it initializes key values and resets the ring to the starting position so that the window is open when it gets voltage for the first time. Therefore the ring is rotating counterclockwise (front view) until the first light barrier is activated.

Now the program switches into the main loop. The window will now react on the values measured by the luminosity sensor, use the stepper motor to move the ring and check the light barriers to ensure whether the ring has reached the correct position.

The luminosity control works the following way: Using the luminosity sensor the program measures a couple of values and calculates an average to decide whether the ring should be moved to get the window into another state or not. After reaching a new condition the program will wait a set period of time before becoming reactive again. This ensures that the window won't rapidly switch back and fourth between different states when the light intensity is close to some limit value.

Attached is an example how our window works.

Step 15: Hide Electronics and Attach Plexiglass

Put the USB cable through the hole in the bottom of the frame. You can connect this cable with your PC or another suitable power source.

Put the coverage on the square timbers and hide the electronics this way.

Carefully drill a hole into each corner of one plexiglass plate. Drill small holes into the corners of the black card.

Then drill a small hole into the card at the point where the luminosity sensor is attached to the frame when you hold the card in front of it.

Screw plexiglass and black card together onto the front of the frame.

Put some hook-and-loop tape onto the edges of the other plexiglass and the edges at the back of the frame. Stick the plexiglass with the tape onto the frame.

Step 16: Conclusion and Possible Improvements

In summary we have created an intelligent window that automatically reacts to changes of the light intensity over the day and over the year. If the light outside is too bright the window shades down to keep interior temperature and brightness at a tolerable level. We have also integrated a radio module that allows the user to darken and lighten up the window at will.

Nonetheless this project represents an idea not a finished product. It is notable that the production of the whole window has been relatively cheap and the assembly has been done with rather simple tools. Working on this project we have gained a range of insights that we would like to summarize at this point.

As we already discussed in the beginning as an alternative to the mechanical solution using polarized screens you could also use electrochromic glass. This ought to reduce the error susceptibility considerably as it reduced the complexity of the design. It also vastly simplifies the effort involved in assembling the window.

In order to enhance the user experience it might be an interesting suggestion to partially use plexiglas as building material instead of wood. You could make the interior part see-through allowing the user to relate to the technical dimension of the product. The user would be able to track the movement of the mechanical parts and see the technology working live.

Instead of using black cardboard at the front of the window you can also apply paint to the plexiglass and laser away a circle in the middle.

Once you plan on using this module for real building purposes, meaning outdoors over extended periods of time, you will have to think about sufficient waterproofing and insulation. That includes waterproof connection of all relevant part, protection of the electronic elements and integration of insulating materials.

You can turn it by hand as well
<p>This is really interesting project! I'm very curious about different smart skins now...</p>

About This Instructable




More by PolarBullseye:Polarizing Window  
Add instructable to: