We’re currently experiencing some technical difficulties that may result in some difficulty placing orders. Please direct order questions or issues to support@sparkfun.com for us to work with you on resolving. We’ll respond to emails as quickly as we can in the order they were received. We are working on getting everything fixed as quickly as we can. Thank you for your patience.


Member Since: January 6, 2010

Country: United States

  • Re: Wind Speed per closed contact count …
    I think I’ve answered my own question from back on April 27th regarding the Wind Speed per closed contact count. Today I pulled up some info on cup style Anemometers. According to the original inventor of the cup Anemometer, the cup velocity should be ~1/3 that of the wind. That gives an approximate value of 1.6 mph for this Anemometer to close a contact once per second (with two closed contacts per revolution).
    I will be using the datasheet’s value of 1.492 mph per 1 closed contact per second.
    To N1VG – would you please confirm this?

  • In addition, I have modified Steve’s code for the Wind Direction. I used the 10k resistor as suggested from the datasheet. You’ll see I am outputting a float rather than a string for my needs.
    // Find vane direction.
    void calcWindDir() {
    #define NUMDIRS 16
    float adc[NUMDIRS + 1] = {0.0, 0.365, 0.43, 0.535, 0.76, 1.045, 1.295, 1.69,
    2.115, 2.59, 3.005, 3.255, 3.635, 3.94, 4.33, 4.7, 5.0};
    //float expectedVoltages[NUMDIRS] = {0.32, 0.41, 0.45, 0.62, 0.9, 1.19, 1.4, 1.98
    // 2.25, 2.93, 3.08, 3.43, 3.84, 4.04, 4.62, 4.78}
    //char *strVals[NUMDIRS] = {“ESE”,“ENE”, “E”,“SSE”, “SE”,“SSW”, “S”, “NNE”,
    // “NE”,“WSW”,“SW”,“NNW”,“N”,“WNW”, “W”, “NW”};
    float directions[NUMDIRS] = {112.5, 67.5, 90, 157.5, 135, 202.5, 180, 22.5,
    45, 247.5, 225, 337.5, 0, 292.5, 270, 315};
    //byte dirOffset=0;
    unsigned int val;
    float voltage;
    byte x;
    val = analogRead(PIN_WIND_DIR);
    voltage = (float)val / 1024.0 * 5.0;
    for (x=0; x= adc[x]) && (voltage < adc[(x+1)]))
    //x = (x + dirOffset) % NUMDIRS;
    windDir = directions[x];

  • Domos: _ A wind speed of 1.492 MPH (2.4 km/h) causes the switch to close once per second. But I do not understand, I tested the anemometer and I have 2 contacts per revolution. Can you confirm the number of contacts per revolution ?_
    I have the same question as Domos. The values given in the datasheet appear to give wind speeds that are double. I checked my readings against a 10-yr old Kestrel 3000 hand held meter, and the wind speeds were ½. I have adjusted my values to 0.746 mph / count, where the counting is done on the Falling value, or “attachInterrupt(INTERRUPT_ANEMOMETER, countAnemometer, FALLING)”;
    Has anyone else found this to be true???
    To attempt to answer some dimensional questions with the model I received: 1) Tube diameter = 0.795" or 20.4mm. 2) Distances from center of tube to centers of Anemometer and Wind Dir: ~5". 3) Distances from center of tube to max distance out for a) Anemometer: ~8.5", b) Wind Dir: ~9", and c) Rain Gauge: ~9.1".
    Steve, thank you for posting your code!! Very helpful.

  • This board has a voltage regulator for Vin to the chip. Are the logic levels converted down from 5V to the 1.7V to 3.6V required I/O voltage range for the chip?

No public wish lists :(