Category Archives: LEDs

Using the SCIO in gardening

Ages ago, I funded a kickstarter for a “consumer molecular scanner”.  It’s a pocket spectrometer of sorts that can be used with your smartphone to analyse the chemical composition of just about anything.  It works by spraying an object with photons from an LED on the device.  Different chemicals react differently with different wavelengths of photons.  On the device is a sensor, that analysis which photons bounce back.

The android app that you use with the device, communicates over bluetooth to read data.  Data is then sent to the cloud for analysis.  What comes back is a spectrum that represents the object.  Included in the app are a number of applets for doing things from estimating body fat to estimating the BRIX rating of a fruit product.  You can also create your own “mini-applet” to capture and analyze your own objects.

Tomato leaf deficiency mini-applet

I wanted to create a mini-applet to analyse tomato leaves and perhaps identify any deficiencies.  I started with some healthy leaves and took some scans.  Unfortunately, I need to produce leaves with known deficiencies, scan those leaves and name those scans after the deficiency for this to be really useful.  I did however, notice some strange leaf formation, took some scans and the results were different than the normal “healthy” leaf.  If I can identify this as a nutrient deficiency, I’ll have a good way of identifying it moving forward.

Produce Selector applet

This is a built-in applet that allows you to scan your favorite fruit and get a BRIX rating.  BRIX is basically the sugar content in a solution.  Unfortunately for this applet, it didn’t recognize any tomato I scanned :(.  I scanned my unripe fruit and the store bought roma tomato.  I provided feedback via the app to the developers.  I hope there will be an update soon.

Fruit and Vegetable applet

This applet lets you estimate the carb content in the fruit or vegetable.  I used this on my unripe tomato growing in my greenhouse.  It came up with 5% carbs.

I snapped a picture of the fruit and I’ll be able to check later for changes.  I’m exciting to see what happens over time with these readings.  Here’s the “spectral fingerprint” from my phone (5/10/17):

For comparison purposes, I scanned a store-bought roma tomato.  The readings were identical from what I can tell and I’m not sure exactly what that means yet, but another scan of my greenhouse fruit when its ripe might reveal something.


The SCIO is pretty fun.  I foresee it will be very useful moving forward to help identify plant and fruit quality.

Augmenting greenhouse with blue and far red LEDs

I’ve done a few posts about the benefits of blue and far red lights on plants.  I’ve used them on my seedlings.  Now that I have no seedlings for the moment, I wanted to try them out in the greenhouse.

But the greenhouse is outside, right?  It already has the sun, right?  Yes and yes.  However, exposing plants to a higher concentration of blue light before sunrise, can begin the process of the plant opening its stomata (pours the plant uses to “breath” out water and breath in CO2) to make it more ready for photosynthesis and ultimately carbon fixing and growth.

Far red light benefits at the end of the day are already covered in a different blog.  The higher concentrations should help -especially because trees and other objects shade the setting sun from my plants.

I’m trying to put growth and fruit production into overdrive.  My max expected yield should be somewhere around 1-2lbs of tomatoes per day.  I’m getting close to 1lb every 2-3 days.  The blue light along with CO2 boosting in the morning should help with growth and production.  I expect to see less suckers on my tomatoes and more growth with the far red light as well.

My red and blue lights are enclosed in flood light housings.  It was pretty easy to set them up this way.  I used a carabiner to hang them from the wire over my second bed.  I then pointed the lights at my tomatoes and ran the power cord to the ubiquity mfi mpower strip that I recently installed.  The cool thing about the mpower strip is that you can control it over wifi -so I can tie it into my automation system, but it also supports simple schedules including location-based sunrise/sunset.  I created a schedule that starts the blue light 1hr before sunrise and turns it off 1hr after sunrise.

The blue light looks really cool at night.  This is what a 50 watt LED can do.


The schedule I set up for the far red LED was 30 mins before sunset, and turn back of 1 hr after sunset.  It isn’t visibly as bright as the blue, but my infrared camera sees the difference.


I’ll try to remember to follow up if I notice a difference.  If I forget, comment below and I’ll either respond with my findings or make a new “results” post.

Water cooling grow LEDs

I needed a few more lights for my second greenhouse bed.  I had the bright idea to use water cooling because, well, I already have a water system, why not direct the heat from the LEDs somewhere useful, like the soil bed?

You can take a look at my previous blogs on how I made the LED strips.  This time, instead of using heat sinks, I used water blocks, which were about the same price.

After a long break from lights, I finally got a system put in to water cool several components at the same time from the same pump.  Check it the video explaining that here:

I’ve got everything I want just about hooked up to the water system including a water cooled air intake system and the solar and CO2 generator.  Only thing left is maybe another heat exchanger and maybe another strip of lights.

Initial testing is promising.  After several minutes (long enough for part of the aluminum back to get very hot to the touch), the water blocks and surrounding area remained very cool.

What about cost?  Well, this actually ended up being cheaper than the previous system.  The water blocks where the same cost, but the savings came in the power supply.  I have been using one power supply per 6 LEDs (180W per 6).  Instead of a 350W power supply (that can’t really do two at full power, I’m using a 400W 24V power supply to power 12 LEDs instead of just 6.  This saves me about $50 per 12 LEDs.

Stay tuned, I have something awesome in the works related to LED grow lights.  I think it will take these lights to the next level.

Grow Lights 101: What kind of light matters

If you are following my youtube channel, you’ve probably already seen this.  If not, here it is again.  This is an introduction to grow lights where I cover what are the important aspects of light relevant to plants and compare a couple different types of grow lights (T5 vs LED).

To sum things up, T5’s are cheaper out of the gate.  But LEDs are more bang for the buck in the long run.

I am building LED grow lights for anyone interested.  Head on over to the new store.

10W Far Red LED Grow Floodlight

Far red (740nm) might be very beneficial to tomato production.  Studies have shown that it can help produce longer “hypocotyl” (the seedling shoot that becomes the stem) by just blasting the plant with 12 minutes of light at the end of the day (16hr photoperiod with T5 lights).  Other studies claim that far red can help reduce or eliminate sucker growth.


Total cost: $33


Making Smart Grow LEDs Even Smarter

We know that full sun plants need 6+ hours of direct sunlight per day.  We also know that direct sunlight is about 30,000 to 100,000 lux.  We should be able to say that full sun plants need at least 30k * 6 lux/hrs (180 kilo-lux/hrs) of light energy per day.

I spent the last week automating the redhouse (the geothermal smart greenhouse).  Part of the automation includes giving the grow lights some smarts.  As pointed out in my last post, the grow light controller has a visible light sensor.  At the moment however, it seems my readings are inaccurate.  Full daylight on the sensor reads 1400 while it reads 919 during the night.  This is not ideal, but we can add some crude corrections to see if we are meeting the energy requirements that our plants need.

What we want to do is to make sure that our plants reach the 180klux/hrs (a total of 108megalux) per day using natural light if possible, but using the artificial grow lights if not.  Since we can control the brightness of our grow lights, we can tune the brightness to compensate for any lack of natural light.  If a cloud rolls over, we’ll ramp up our grow lights until we are producing the 30,000lux that we need.

I measured the output of the grow lights using my smart phone’s light sensor.  I don’t know how accurate it is, but at about 12″ away from the lights, it reads about 30,000lux at full brightness.  That’s perfect.

Doing a little math, we can now figure out the difference in natural light to the light we are seeing on the sensor.  We know darkness on the sensor is 919 and full sun is 1400, so we’ll compensate.  All code from this point all will be python, but should be easy enough to convert to any language you want:

directSunlight = 1400 – 919 = 481
growLightMax = 481

correctedCurrentSensorReading = currentSensorReading – 919
energyDelta = directSunlight – correctedCurrentSensorReading
growLightRate = (energyDelta / growLightMax)

growLightRate will give us the percentage of brightness we need to achieve “full sun”.

Another thing we want to do is to not use the artificial light once we reach 100% of our daily needs.  We will save energy (and cost) by turning off the light when we don’t need it.  Here’s how I did it:

totalEnergyNeeds = directSunlight * 3600 * 6

Lux is measured per second, so we will need the equivalent of 108mega-lux per day of energy.  The 3600 * 6 converts 6 hours (full day minimum requirement) to seconds.  We can adjust the number of hours according to the needs of our plants.  We can move it up to 8 for plants that need more light, or down to 4 for part-day plants.

Now that we have computed our daily needs, we need to keep a running total of how much we’ve produced:

totalEnergyProduced = correctedCurrentSensorReading + (growLightMax * growLightRate)

if totalEnergyProduced > totalEnergyNeeds:
growLightRate = 0 #turn off the lights

We should run this code every 1 second.

Using the grow light as a heat source

We will also want to turn off the lights at night time, unless we are below our total energy needs.  But there are reasons to keep the light on at night.

Certain plants not only have different light needs, but also have darkness needs.  This requirement is called “photoperodism“.  Some plants need periods of darkness to “sleep”.  During “sleep”, these plants may initiate flowering among other things.  Tomatoes, cucumbers, roses and melons do not have any darkness requirements.  We could in theory provide light to these plants 24/7 which may help them to grow faster.

I don’t need the plants to grow faster, but the LEDs from the grow light do generate some heat.  This additional heat will help regulate the temperature at night and keep the air temperature warmer than it otherwise might be.  Because these lights are over our tomatoes, we don’t need to worry about causing harm.  I don’t recommend this for plants that require periods of darkness (short-day and long-day plants).  In my greenhouse I know the soil as well as the ambient air temperature.  I’ll use the temperature to determine if it’s cool enough that we will need the extra heat from the lights.  Using a library called “astral” we can also determine if it is night time or not.  Astral doesn’t tell us if it’s night, but it does tell us when solar sunset and sunrise are.

from datetime import datetime
from astral import Location

location = Location()
location.latitude = 45.34342
location.longitude = -122.343426
location.timezone = “US/Pacific”

t =

isNightTime = (t > location.sunset().time() and t < time(23)) or (t > time(0) and t < location.sunrise().time())

if (isNightTime and totalEnergyProduced < totalEnergyNeeds) or airTemp < airSetpoint or soilTemp < soilSetpoint:
growLightRate = 1.0 #full brightness

elif totalEnergyProduced >=totalEnergyNeeds:
growLightRate = 0.0 #completely off


I’ve been fine tuning this logic for about a week.  Everything seems to be working.  I’ve only got one light at the moment over 3 of 9 tomato plants.  The plants under the light have much more growth than plants of a similar age and look healthier.  I’ve also added some variables to track how much natural vs artificial light I’m using and how close I am to my plant’s requirements.  This is my light production for today (from about 10:30am to 7:44pm)

“artificialProduction”: “58%”,
“energyGenerated”: 143407.67,
“nightTime”: true,
“productionCompleted”: “148%”,
“totalEnergyGenerated”: 15344621.17

Today has been overcast for most of the day.  Because of the clouds, 58% of my light has come from the grow lights.  Additionally, I’m 148% of my daily total right now.  My numbers reset at sunrise and the lights will be at 100% brightness for most of the night (it’s already cold enough to have the lights on).  Right before sunrise, I wouldn’t be surprised if I was over 200%.

Smart Grow light

The first law of plant growth is light.  Typically this light comes from the sun at an incredible intensity of up to 100,000 lux (lm per square meter).  Different plants have different sunlight requirements.  Typically these are categorized as “full sun” or “partial sun” plants.  Full sun plants require at least 6 hours of direct sunlight per day (30,000 – 100,000lux).  Partial sun plants need about 3 – 6 hours.

Winters in the Oregon Portland area are dark.  So dark that humans suffer from the lack of light.  This condition is known as Seasonal Affective Disorder.  Most of this period is dominated by overcast clouds which reduces the light to about 1000 lux.  That’s 3% of the minimum  light required for full sun plants.  To grow food all year round, we are going to have to compensate for this lack of light.

There are many different types of artifical lighting.  The most power efficient of which are LEDs.  The problem with LEDs is that they typically have a very narrow range of light.  To make white, LED’s combine 3 diodes with some red, green and blue.  The human eye sees these three as white.  It cannot perceive the gaps in the spectrum that the LEDs do not transmit.
White LED from Cree (TM)

White LED from Cree (TM)

Other light sources cover a lot more of the light spectrum.

Example of a LED spectra

Given that lights light incandescent lights have a wider spectrum, why use anything else?  The answer is, plants don’t need all that light.  Plants use light in the blue and red spectrum and reflect the green and yellow spectra.  That means that any grow light that includes these wavelengths are wasting energy.

LEDs for growing

LEDs for growing do not have the green diodes.  This makes LEDs, which are already the most efficient artificial light source available even more efficient for growing.  While you can purchase may LED-based artificial light solutions, I set out to build my own in such a way that I can control the amount of light my plants get based on sunlight.  If there is full sun, I don’t need to activate the lights.  If there is less than full sun, I can adjust the brightness of the LEDs to compensate.

I found some grow LEDs on ebay for a decent price from the seller sungrowled.  These are 30W but I have also used the 50W variants.


To keep the LEDs cool, I picked up a 36 inch aluminum strip and mounted 6 LEDs evenly spaced on the surface.  I used thermal adhesive to mount them.


On the ends of the strip, I drilled a 3/8″ hole and attached something I could attach to some rope to hang.


I then wired up the LEDs in parallel.


The aluminum strip helps spread the heat, but probably will still get to hot.  To increase the surface area for cooling, I used the thermal adhesive to attach some aluminum heat sinks to the top of the strip opposite of the LEDs.  This unit will be passively cooled.



Six 30 Watt LEDs run at a total of 180W.  Amazon has a bunch of adjustable current/voltage power supplies from Drok.  Oddly, the power supply ratings seem to go from a few watts to 100W  and then jump to 300W and then to 600W.  Really?  No 200W?  Sigh.  I grabbed the 600W power supply version.  To supply the AC power, I picked up a 300W 24V AC to DC converter.

What’s nice about the Drok power supply, is that I can supply constant voltage AND constant current.  LEDs have an upward sloping current draw relative to the forward voltage.  This means if you oversupply voltage, it’ll draw enough current to burn out.

Typical ways to drive LEDs include supplying a constant current, so that you can safely over drive the voltage, a resistor which will also limit the current, or constant voltage.  If you never go over the volts, the current draw will be just fine.  With this Drok boost converter, I have POTs that I can dial both.  I started at 24V and slowly adjusted both the current and volt POTs until I read about 170 Watts on the kill-o-watt.  Waddayaknow!  It worked!  It’s really… really bright too!


To finish off the light power, I put both the Drok buck boost converter, the AC-DC power supply, a couple fans, and  Drok buck 12 power supply in a nice case and mounted it in the redhouse.



Light Controller

At the moment, our lights are dumb.  They turn on and off manually and do not care about sun.  We need a smart controller.  I used the Particle Photon, which is a cheap wifi-enabled MCU that’s only $20.  I’ve been using the photon a lot lately.  This is actually the third unit inside the Redhouse and I plan on using at least one more.  We also need a sensor to measure how much light we are getting from the sun.  I had an SI1145 sensor breakout from adafruit laying around so I used that.

To control the LED brightness, I use a MOSFET.  By modifying the signal’s pulse width on the MOSFET gate, I can control the voltage allowed to pass through the MOSFET.  I wired everything up, wrote a few lines of code using the Particle builder and this is what came out:


The light sensor won’t work without light, so I need a case with a clear lid.  I found a waterproof project case on amazon that had a clear lid.  Perfect.  I installed the board in the case, wired it up, and installed it in the Redhouse.



How much did this cost me?  I try not to think about it, because I’m not building to necessarily save (although, I believe I am).  Here’s a list of components and their costs:

LED Light:

  • 6 x 30W LEDs –  ebay seller sungrowled – $77
  • Aluminum strip and screws – home depot – $15
  • 24V AC-DC 350W converter – – $35
  • Drok 600W buck boost converter – – $21
  • 5 x aluminum heatsinks – – $25
  • Power enclosure – – $30
  • Grow light hanger – – $10


  • Particle Photon Wifi MCU – – $20
  • SI1145 visible light sensor – – $10
  • MOSFET n-channel – – $2

Total: $245

For comparison, you can get a nice (but dumb) 160W grow LED for about $350.  No wifi/internet control.  No smarts.

I think I saved some bucks and get more features.  Here’s the final product growing some nice Roma variety tomatoes:


Do they work?  Early indications suggest they do.  The plants under the light look more lively.  One plant NOT under the light has a livelier branch under the light where the other branches are not as lively.  So, pending future observation, I conclude, it works.  I only have 2 more of these to make :).