< BeagleBoard‎ | GSoC
Revision as of 09:15, 10 March 2018 by Pac23 (talk | contribs) (Requirement Analysis)
Jump to: navigation, search


Student: Manas Mangaonkar
Mentors: Stephanie Lockwood-Childs, Steve Arnold


This Proposal for Sonic Anemometer was accepted in Gsoc 2016,but the chosen ADC proved to be inefficient for sampling at high frequency.

In 2017 again the project was accepted and PRUDAQ was used which solved the sampling and creating trigger for ultrasonic pulse problems.

However Since the final idea is to have a working prototype of a basic weather station with every possible thing ranging from Humidity,temperature to air speed and maybe even pressure.

I discuss what all i plan to implement below.


I have completed the tast required as described on the ideas page, and created a pull request, as listed here

About Me

IRC: Pac23 || Pac23xyz
Github: Pac23
School: vesit Which is a campus of and falls under University of Mumbai
Country: India
Primary language: English,Hindi
Typical work hours: 9:30 - 23:00 IST GMT/EST/PST to Ist Adjusted Time
Previous GSoC participation: First GSoc Participation, i am excited to be a part of gsoc,since contributing to open source means a lot to me and gsoc will be an special achievement. I got interested in IoT as a teenager,the fact that i could control things to do stuff for me with a single click of a button remotely over the internet or Lan was fascinating and makes life somewhat comfortable.Remotely controlled Air conditioners are a good example of the later,on a hot summer day by the time one reaches home the room is already cooled to perfection since the user activated it before leaving work/school.

Sonic Anemometer / Basic Weather Station

Project name: BeagleBone Sonic Anemometer / Basic Weather Station


Get the Anemometer/Basic weather station prototype working,by implementing the best methods to counter operational Environment Disturbances.

Sonic AnemoMeter / Basic Weather station

Anemometer's are used world wide by Meterologists,Researchers and Scientists to calculate Three Dimensional Windspeed and turbulence. Sonic Anemometers are however utilised since they aren't affected by their operational environmental Conditions.

I am not going to harp too much on the anemometer part since that was achieved last year with in depth coverage of how it functions Here rather would focus on the whole weather station package.

Sonic Anemometers and other weather station devices cost a lot since majority of them are commercially manufactured. What i plan to implement is on a beagleboard using a single python module to control all of the senors to collect the data from not just the anemometer but also the temperature,pressure,rain and humidity sensor.

From a practical perspective a meteorologist/researcher should be able to deploy the station remotely and get data via the internet,and only access it to change the battery bank/pack maybe even run it on solar(Something that can be done with efficient and large enough panels).

Requirement Analysis

Following hardware could be used to start with:-

  • Beaglebone Black/Green(1)
  • PRUDAQ/ADC having rate higher than 400ksps per channel(1/2)
  • Transducers(40Khz,Waterproof)(4)
  • BMP180 || BMP280(more expensive) Barometric Sensor
  • MQ135 Gas Sensor
  • Magnetometer
  • Si7021 Temperature & Humidity Sensor || More Expensive High precision Bosch sensor

DAQ are the Data Acquisition devices which are used to acquire data from sensors and acts as a bridge between sensors and host computer.

PRUDAQ is a fully open source 40MSPS Data Acquisition (DAQ) cape for the BeagleBone Black or Green designed by Jason Holt and his team at Google Research with a software collaboration from the BeagleLogic creator, Kumar Abhishek(one of the mentors this year).PRUDAQ was created to address a need not currently addressed by the market for a portable and low-cost DAQ system that doesn't compromise on performance.

Since linux is non-preemptive Os it can't be used for realtime measurements,instead the built in PRU would be used for realtime measurements

They are programmed with assembly instructions and hence can be customised as per our Requirements, and can transfer information with User-Space programs and hence we would be using the Two PRU in beagle, one for ADC and I don't have actually any plans for Second PRU, because as far as impression I got by going through various documentation, I understand that only first one is enough and by saying this, I am open to all suggestions. We can probably use second one for calibration and other tasks.


What will you do if you get stuck on your project and your mentor isn’t around?


If successfully completed, what will its impact be on the community? Include quotes from community members who can be found on and


Is there anything else we should have asked you?