Public Lab Research note

This is part of a series on diy-wind-sensors.
  • 1

Winds aloft

by cfastie |

Above: This seven foot Rokkaku kite lifted a two pound camera rig with EOS M and SkyPod data logger.

When I report on a KAP session I try to include the wind speed, but I have never measured the speed. Instead I look at the local weather records and interpret how a particular kite flew (or didn't) and compare all that to previous KAP sessions and produce a scientific estimate (AKA wild guess). So I was intrigued when Jeff related that he had been gifted some digital wind sensors, I guess by Paul Badger, the guy who made them (Jeff hangs out with interesting folks). These sensors can be hooked up to an Arduino like lots of other little sensors and the data can be logged. Adding a wind sensor to the SkyPod GPS data logger on a KAP rig seemed to me like a really worthy project, and Jeff apparently agreed because two wind sensors arrived in the mail a week later.

image description
The Modern Device Wind Sensor Rev. C (right) has been around for several years. The Wind Sensor Rev. P (left) is much newer and a smarter design. I put the Rev. P on the SkyPod on a Saturn V Rig and put the Rev. C on a tripod. These are very much awesome little PCBs.

These wind sensors are made by Modern Device and are open hardware. They don't have any moving parts and measure wind speed using the hot wire technique:

  1. Pass a current through a wire until it gets hot.
  2. Measure the current and the temperature of the wire.
  3. When cooler air blows across the wire it will cool down.
  4. Adjust the current so the wire temperature stays constant.
  5. The current required will be proportional to the wind speed and the air temperature.
  6. So measure the air temperature too.

I think the newer Rev. P sensor does a better job measuring air temperature and has a more precise heating element than the Rev. C sensor. They are both sort of picky about the current which powers them and should probably be calibrated for different power supplies. The newer Rev. P sensor is especially picky and must have at least 8 volts (the site also says at least 10v, so I'm not sure), so you can't power it from an Arduino. I tried to power it directly from a 9v battery, but that failed, so I powered the Arduino Nano with a 9v battery and powered the sensor from VIN and GND on the Arduino. That seemed to work. I powered the Rev. C from the 5V pin on an Arduino Nano which was powered by four eneloop AA (4.8v) after it failed to work when the Nano was powered by six eneloop AA (7.2v). This was all very trial-and-error and confusing but I was able to get some preliminary data.

image description
Above: The Wind Sensor Rev. P installed on a SkyPod GPS logger on a Saturn V Rig. The "hot wire" part is on the loop extending above the sensor. The SkyPod was saving GPS coordinates, barometric pressure, temperature, humidity, and wind speed every six seconds during the flight.

While I flew the Rev. P wind sensor, the Rev. C sensor was deployed on the ground as part of a base station logging wind speed, barometric pressure, temperature, and humidity. I used a Nano Logger, which is based on a data logging shield for an Arduino Nano. This logger had a BME280 sensor and a little LCD monitor so I could tell if everything was working.

image description
Above: The base station with a wind speed sensor and BME280 sensor.

Unfortunately, the 4.8 volt battery pack was too weak to make the LCD easily visible outdoors in bright sunshine. So I didn't notice that the BME280 stopped sending data while I was arranging everything and I only got wind speed data from the base station. This logger uses Dupont wires instead of soldered connections, and one of the wires must have wiggled loose.

image description
Above: The base station with Rev. C wind sensor sat in the field while I flew the Rev. P wind sensor. Note how I carefully arranged the BME280 sensor so it was in the shade, a move which wiggled a connection with the result that no pressure, temperature, or humidity data were logged.

image description
Above: The new seven foot Rokkaku lifted the two pound rig well enough to pull out 900 feet of kite line. This was a great result because I think none of my other kites could have lifted that heavy rig in those winds.

image description
Above: The Saturn V Rig carried three battery packs: for the camera, the SkyShield autoKAP controller, and the SkyPod data logger. The Canon is an EOS M mirrorless camera with prime "pancake" lens.

image descriptionimage description
Above: A. Elevation above sea level of the camera rig during the entire flight. From the GPS and from barometric pressure. The sketch running on the SkyPod Nano computed elevation from pressure based on the current sea level barometric pressure which I entered before the flight, so I can't explain the 15-20m difference between the two results. The kite was pulled in 30 minutes into the flight to check on the camera, and then the rig was lofted again for a second excursion. B. Air temperature during the flight from the BME280 sensor on the rig. I don't quite understand why temperature begins to drop before the rig gains altitude at the start of the flight.

image description
Above: Wind speed from the Rev. P sensor on the camera rig. The range of values recorded is reasonable, and the data show lower wind speed near the ground at the beginning, middle, and end of the flight, as expected. But there is more variability than I would have expected. There are a lot of possible causes of this variability:

  1. The wind speed actually varied some.
  2. When the wind speed varied, the kite and the rig climbed or fell through the air which rushed past the sensor.
  3. The Saturn V Rig was making 360° panning rotations every 20 seconds which changed the orientation of the wind sensor to the wind and also periodically put the sensor in the lee of the rig.
  4. I was walking the kite around sometimes which changes the effective wind speed at the rig.
  5. There were other things connected to this circuit (GPS, BME280 sensor, uSD card).
  6. I don't really understand how to calibrate this sensor.

image description
Above: Wind speed from the base station logger with Rev. C wind sensor. These wind speeds are not reasonable results. The wind speeds near the ground were probably between 3 and 8 mph. The regular excursions to values between 20 and 40 mph suggest that the calibration was not done very well.

image description
Above: Scatter plots of the relationship between elevation and air temperature during the two parts of the kite flight. The blue line is the dry adiabatic lapse rate, an approximation of the expected relationship. The first half of the flight (upper) roughly follows the expected rate of cooling during ascent and then warming during the descent. During the second ascent (lower) the sensor cooled more slowly than the lapse rate would predict. That could be due to a lag in the sensor equilibrating with the cooling air temperature, which is likely considering that the second ascent was very fast (see earlier figure).

Above: A 15 second animation of the path of the camera rig during the first (green) and second (yellow) parts of the KAP flight. This uses the GPS coordinates for latitude, longitude, and altitude collected every five seconds during the flight by the SkyPod logger.

image description
Above: Stereographic projection of a spherical panorama stitched from 33 photos taken during a two minute pan/tilt sequence of the Saturn V Rig. During the one hour flight, 907 photos were taken by the EOS M. These are my favorite 33.

So the Modern Device wind sensors were a little harder to figure out than your average Adafruit sensor. I probably have to spend a lot more time calibrating them and probably trying different ways to power everything. Paul Badger posted some results of calibration trials for the Rev. P sensor last month, but I couldn't quite figure out how to implement his new knowledge. Even so, the Rev. P's first trial by flight was fairly promising. I'm glad I got a chance to try it.

Sketch running on the SkyPod

Sketch running on the base station Nano Logger

Sketch running on the SkyShield

Post your attempt to replicate this activity  Browse other activities for "skypod-gps-logger"

Replications (0)

None yet. Be the first to post one!

This is marked this as an activity for others to try.
Try it now   Click here to add some more details.

balloon-mapping kite-mapping kite-aerial-photography sensors wind saturnv skypod nano-data-logger bme280 ublox wind-sensor rokkaku skypod-gps-logger

response:14551 series:diy-wind-sensors activity:skypod-gps-logger


A running mean of the aerial wind speed looks like a very reasonable result. The red line is a running mean of 10 observations (which were six seconds apart), so it is overlapping 60 second averages. It would still be good to figure out what causes the noise.


Hi, Chris - this is so great. I had just been talking with folks at NASA Globe and the AREN project about wanting to test a datalogger with one of these wind sensors, and you've done it!

A few notes that may help -- I believe one of the sensors is for high wind, and one for low. I also wonder if a separate "clean" power source is important or if that's accounted for in the circuit already (guess I've got to read the data sheet...)

I suspect your thought about the sensor moving around in the air locally is probably a good guess. Imagine -- any oscillation, any swinging back and forth, would cause a regular spiking of the signal, even above baseline noise.

A couple follow-ups I'd like to try are:

  1. running this alongside a Kestrel or similar wind sensor for comparison
  2. doing it both at altitude and under a controlled situation like a fan running indoors

I think we might have a Kestrel somewhere. Do you have any interest in these tests and would you like me to send you one? You like getting mysterious gizmos in the mail, right? :-)

Is this a question? Click here to post it to the Questions page.

Yes, the newer Rev. P sensor works better in high wind because it has a strong heater so the wind can't cool it off too fast. But the older Rev C sensor should have worked okay in 8 mph wind. I don't have any good ideas about why the Rev. C sensor gave erroneous results.

I have a test prepared to address the question of clean power for the Rev P sensor which was competing with the GPS receiver and antenna for current during the first test. I made a new SkyPod with a real time clock instead of a GPS. I will mount it on the Picavet cross instead of the rig frame so it won't rotate with the rig and will maintain its orientation to the wind. If those two changes don't produce less noisy results, we will have learned something. I should also deploy the Rev P sensor on a tripod at a windy place to see if it produces less noisy data.

Does the Kestrel you have log data? Some of the $200 to $400 anemometers do, but most cheaper ones don't. It would be really good to have a logging anemometer. Or someone who could hack a cheap one and log its output. Getting an instantaneous reading of wind speed would be good for general calibration, but if it doesn't produce a data file, is it science?

Is this a question? Click here to post it to the Questions page.

You must be logged in to comment.