week #8—#11

Solar project: WIP

❋ Group project with Tom Xia ❋

Initially the plan was to go with an analog mechanism that's based on an a-stable multivibrator circuit. The idea was to have this oscillating motion between two different capacitors that are charging and discharging at different rates, one controlling the rotation of a roll of paper, and the other controlling a shutter-like mechanism that controls the paper's exposure to incoming light.

A basic astable circuit using two NPN transistors that turn an LED on and off. We based our initial circuit design on this, but replaced the transistor with 120 tip and used different capacitors and resistors to have a slower, smoother oscillation.

In theory it should have worked but while building the circuit it seemed to be quite unreliable and finicky. After consulting with Jeff, we pivoted to using an Arduino and (for now, at least) two motors: a right-angle DC motor and a small 180 degree Servo motor. The DC motor is used for the rotational movement of a roll of paper, while the servo motor is used for the shutter mechanism.

The work on this project is thus divided into three parts:

  1. Understanding how to expose the paper to light — in what form and for how long, as well as figuring out how different hours, days or exposure duration might affect the print's outcome.
  2. Building a mechanism where there's a roll of paper that is being rotated, with two upper paper-like thin layers: one acting as the silhouette through which light will go through, and another acting as the shutter, allowing the light to go through. All of this should be inside of a weather-proof container that also prevents any "unwanted" light from going in.
  3. The electronics — making the circuit, as well as the code running in the Arduino, in a way that maximizes power usage. Powering two motors off of a solar panel in NY in March might be tricky...

Paper exposure

A quick test of different shapes and patterns under the solar cart's light. The light from the solar cart is incredibly strong, close and isn't angled like the light coming from the actual sun. This is one end of our "worst-case-scenario" spectrum.

Right & left: testing the other end of our "worst-case-scenario" spectrum where we don't get much light at all. One was exposed for about 20 minutes, and the second was exposed for about a day.

From left to right: solar cart + paper stencil for 20 min resulted in a very washed cyanotype, mostly due to light leaking through the stencil layer; the same paper stencil but set on a windowsill with bright indirect light; acrylic stencil + very low light; acrylic stencil + indirect bright light, exposure time of ~20 minutes.

We will still need to run some tests as we progress with the other two parts of this project, but the important things we'll need to keep in mind are: The gap between the stencil layer and the photosensitive paper should be kept to a minimum (the bigger the gap the more the light leaks and creates blurry prints); The exposure time should be for at least a few minutes at a time; The material of the stencil layer and the enclosure of the whole thing should both be as light-proof as possible.

* Finding cyanotype paper in larger sizes proved to be unrealistic, so instead we got some cyanotype solution which we’ll use to dye our own paper with.


The design is similar to a film camera: A roll of paper that is turning, and a shutter that allows for controlled exposure.

The stencil layer is doubled, with the upper layer being moved linearly back and forth to function as a shutter. While the shutter is open, the cyanotype paper underneath gets exposed to the sun's light.

Electronics & energy

With the DC motor continuously rotating the circuit is drawing around 0.04 amps which is manageable. For testing purposes we're activating the servo motor via a switch, which, when activated, reaches up to 0.25 amps.

Seems like on sunny days this shouldn't be an issue but we're looking at ways to tackle that. Worst case scenario we'll add another solar panel and then have one for each motor. 

We're still thinking about when we want the roll of paper to turn — it could just roll continuously, at a specific time, for a specific amount or any combination of those. This is something we still need to test once we have all the moving parts, and it depends heavily on both the power consumption and the sun hours we're able to get.

Next steps

We intend on having a fully working prototype as soon as next week. The finished product should be about twice as large. We’re still conducting tests to figure out what ranges and limitations we should be working within, in terms of exposure duration and power consumption. 

Very quick updates

We continued working on all the parts of this project simultaneously.

Cyanotype paper

We couldn't find cyanotype paper in the dimensions we needed, so we got the chemicals and made our own cyanotype paper.

Cyanotype is made by mixing Potassium Ferricyanide and Ferric Ammonium Citrate each with specific amounts of water, and then mixing the two solution in equal parts.


We improved the design and made it more efficient and compact. We added rubber bands for better traction of the rolling paper because it required a lot of torque power from the motor.

As seen in the video that was taken before any improvements were made, the motor is drawing about 0.2-0.3 Amps, so we're trying to tackle this both from the mechanical aspect and the electrical aspect. We also fabricated and 3d printed connectors for both motors.


Got sucked into a rabbit hole by trying to make what seemed like a simple circuit. The idea was to basically make a battery — have a capacitor that is being charged directly from the solar panel, and whenever the solar panel is not supplying much power anymore, the capacitor will discharge and activate a transistor which will activate a DC motor with a little burst of energy so it can spin a little bit (the motor should not spin while the capacitor charges, only when it discharges). Sounds pretty straightforward but apparently not that simple.

Here are some of the circuits I tried:

These are all BEAM circuits from Solarbotics.net. I mostly tried the Nocturnal Solar Engines, but they didn't really work as expected.

At the time of writing this I'm going with the "Miller" solar engine, which is the schematic on the right, where a voltage detector and a diode are added. This partially works, but we still need to see if it generates enough power for the motor to actually carry its load (and if it requires an additional solar panel, and if so — what size? Using the smaller panel gives us less than a revolution every number of seconds, which is great, but the overall power is also much lower).

Another option is a similar approach but using a photoresistor to control the discharge like so:

But I'm skeptic of the photoresistor's ability to work that well outside in the actual sun, so this might be our fallback plan (and the fallback plan for that one would be to just drive the motor with an Arduino).

Power consumption

⤷ Arduino + servo (with battery):

Max: 0.25 amps * 5 volts = 1.25 wh

Min: 0.04 amps * 5 volts = 0.2 wh

Avg: 0.145 * 5 volts = 0.725 wh

Battery's capacity is 13,400 mAh if full, so:
Min run time = 13.4 / 0.25 = 53.6 hours
Max run time = 13.4 / 0.04 = 335 hours
Avg run time = 13.4 / 0.145 = 92.4 hours

⤷ DC circuit (connected directly to solar panel):

Max: 0.07 amps * 7 volts = 0.49 wh

Min: 0.01 amps * 3.3 volts = 0.033 wh

Avg: 0.04 amps * 5 volts = 0.2 wh

How we measured the DC circuit:

⤷ total:

Max: 1.25 + 0.49 = 1.74 wh

Min: 0.2 + 0.2 = 0.4 wh

Avg: 0.725 + 0.2 = 0.925 wh (so about 1 watt per hour in total!)


We have successfully connected to the class' network and implemented the WatchDog Timer as well as the SleepyDog libraries  so we are able to use less energy and make sure at least part of the project is operational, and reset if it's not. As of now we let it run for about ~7 hours and there were no issues to report.

We don't actually need to send any sensor data, so we're just pinging the server after each sleep cycle to make sure it's operational.
X button icon

Jasmine Nackash is a multidisciplinary designer and developer intereseted in creating unique and innovative experiences.