Showing posts with label flying. Show all posts
Showing posts with label flying. Show all posts

Thursday, November 15, 2012

Revisiting the METAR Weather Reporter


After a decent number of requests for the source code used on my METAR weather reporter I made in 2010, I've decided to make it more readily available (see below for source).  Shown above is a photo of one individual's version in action.

If you haven't already, you'll need to download the latest versions of Arduino and Processing.  The Processing sketch also requires an appropriate font file to run correctly.  Place the font ".vlw" file in a folder called "data" in the same directory as the Processing sketch and change the font name in the Processing sketch to match the ".vlw" font file name (if you chose to use a different font than the one below).  After this, run the Processing sketch on your computer and load the Arduino sketch onto your board with lcd character display connected according to the pinout noted in the code.  The Arduino will also require a USB serial connection to communicate with the Processing program.  My code is currently set up to report KSAC weather, but it's easy to change the weather reporting location.  Simply edit the airport identifier at the two locations in the Processing sketch to the one you're interested in.  Happy coding and safe flying!

Source Code:
METAR code for Processing
Processing Font Files
METAR code for Arduino

Saturday, June 5, 2010

Arduino METAR Weather Reporter



For those who can't view the video or are looking for a bit more explanation, I'll explain what's going on. The Arduino is wired via breadboard to control the 16x2 LCD character display. The code running on the Arduino scans the incoming data on the (virtual) serial port and when it sees a '#' identifier it loads the subsequent 46 characters into its memory. It then divides the weather data to the two lines of the LCD and discards extra information like the airport identifier and 'remarks' section.

The code running on the computer is written in Processing and controls the data being fed to the Arduino. The program begins by loading Weather Underground and looking for the appropriate airport identifier. Once found, it takes the following text (the current weather information) and sends it to the Arduino through the serial port.

METARs are a good source for uniform weather data. The same METAR standard is used world wide, meaning any weather website (not just Weather Underground) and any airport identifier could be input into the program and used to display current weather.

Monday, August 24, 2009

Adventures in Healdsburg

When we first arrived at the Davis airport, Breanna and I met the instructor who had rented the plane before us. He handed me a paper clip with the keys to the airplane and said, "you might try using this to keep the window shut." Evidently, the window latch had fallen off during taxi and was somewhere in the run-up area. After many unsuccessful attempts to keep the window shut, we took off in our more breezy Cessna 152. We were headed to Healdsburg, a little town north of Santa Rosa, to celebrate Kirstin going to vet school.

Our 40 min. flight took us west over Lake Berryessa, past the vineyards of Napa Valley, and by the highest landmark in the area, Mt. St. Helena. I couldn't help but think of how much time we were saving by cutting the 2 hour drive to less than half the time and how we were able to enjoy a beautiful view of the valleys below.
Above the vineyards and country roads of Healdsburg

More wine country through the window that wouldn't shut (Healdsburg airport can be seen in the distance)

We landed at the Healdsburg airport where Kirstin was waiting to pick us up. We drove to her house and soon after we arrived, toured parts of her family's 80+ acres. Later, we celebrated with her friends, family, and coworkers over barbecued burgers, salsa made fresh from the garden, and cake. Everyone enjoyed the food and company. As the evening progressed, I noticed a layer of clouds slowly approaching from the south. Though I was warned by a few at the party about the fog, I was confident that the weather reports would be accurate and the cloud layer wouldn't reach us till after we left. But as the outside temperature continued to sink, so did my faith in the reports. The drop in temperature hastened the formation of clouds up the valley. Checking the recently updated online weather reports only confirmed what I already suspected, we weren't going to be flying anywhere that night.

I felt bad for not getting Breanna back to Davis when she expected and for imposing myself on my hosts, but at that point there wasn't much I could do. It seemed that flying had increased our transportation time rather than shortening it. However, we were warmly welcomed to stay the night and after Breanna and I made a few phone calls letting people know we would be late in returning to Davis, our adventure continued.

Kirstin, her mom Kathy, Breanna and I then drove to Ed and Jean's house (close friends of Kirstin's) where we stayed up talking into the early hours of the morning. Breanna and I spent the night there and woke to a generous breakfast of omelets made with fresh vegetables from Ed and Jean's garden. Kirstin stopped by in the morning to join us for breakfast before heading off to a short day at work.

Still waiting for the cloud cover to burn off, Breanna, Kathy, and I decided it would be fun to go riding. Just as we were about to leave, Kirstin arrived back from work and we all went to her place together. Having nearly no riding experience, I had to be shown everything. Luckily, I was surrounded by real experts and before long was able to walk and trot around the arena. Now it was time to put my very elementary knowledge of riding to use. Kirstin led Breanna and I on a short ride up Pony Hill. From the top, we had a great view of the valley below, but above us, the clear sky beckoned our return to Davis.

Walking around the arena, being taught by the experts

The view from atop Pony Hill

Life rarely goes according to plan. But sometimes, significant changes can create an adventure better than what we planned for.