Back online!

After a brief hiatus, Birdcam 2.01 beta is back online.  A bit of soldering to repair the camera cable and installation of a 3″ ABS sleeve to protect the cable over the feeder pole will hopefully do the trick to keep those pesky squirrel-saboteurs from hiding from the all seeing eye of the birdcam.

We’ll give it a go and see how it works.  Enjoy!

Offline Temporarily

Well, I said Birdcam 2.0 was a beta for a reason. Everything has been working out well with the new set up. I even thought we had the squirrel problem beat for about a week until I caught Wally (or Wanda) the Squirrel atop the feeder. So this last weekend, I made some slight adjustments raising the squirrel baffle and all seemed well.

I guess these squirrels mean business, because at some point this morning (around 10 a.m. by the last snapshot) in their frustration they managed to chew through my USB cable to the camera. This was something I was marginally concerned about initially, but I thought they would be so focused on food that they’d probably just leave the wires alone. Obviously these squirrels are professionals and not unfamiliar with revenge attacks. Not only did they chew through the USB cable, but also the zip ties holding the cable connection housing to the feeder pole. I think they’re trying to make this personal.

So, out comes the soldering iron and another trip to the home improvement store awaits so I can harden the set up against rodent assault. Stay tuned!

Birdcam 2.0 Beta

Decent weather and the increase in spring activity finally propelled me to get the new configuration set up. I’ll call it Birdcam 2.0 Beta because, while its working, I’m sure I may be making some adjustments and everything is only in a semi permanent state.

feedercamsetup.jpg

Here, you can see West Seattle’s finest example of birdcam engineering… The set up now consists of a pole mount feeder which has a second feeder mount attached. On it, some pvc pipefittings and an electical conduit box provide the “platform” for the camera. The camera is contained within a weather proof (I hope) housing which is just a modified outdoor lighting fixture. The housing is mounted to the base with a hinge and holes are drilled into the base to accomodate the cabling. The camera’s usb cable connects to a usb active extention cable. These active extension cables can be daisy chained to up to 80 feet I’m told. I’ll need to weather proof the cable connection between extension and camera, but that’s it.

With a very stable platform, motion detection becomes much easier. Since the pole mount feeder doesn’t swing like a pendulum like hanging feeders do, I can use a much lower threshold to detect movement and the post-detection “lock out” period can also be reduced. The net effect is that most of the shots are “keepers” and there are fewer random shots after the birds have left the feeder.

So far, it seems to be working great! Enjoy.

Setting up motion detection

Spent a fair amount of time tweaking settings this weekend and looking to see if there was some software panacea available that would do all I want with the Birdcam.  I initially started out with taking snaps of the feeder at regular intervals, but that adds has a little too much of a slot machine aspect to actually seeing activity on the feeder.  So I thought I’d investigate getting motion set up.  If I got motion detection to work, I then wanted to show a recent history of motion-activated snaps of activty at the feeder.  Hopefully, some notes here may help someone else trying to set up something similar.

I’ve found that part of the challenge in running a site like this is that there are a number of wonderful widgets and interesting javascript bits available that allow you to do interesting things with webcams, slideshows and the like.  Unfortunately, most of those things cannot be imbedded in a blog post.  WordPress, where this blog is hosted, forbids the use of most, if not all, of the fun stuff because of the security threat that malicious code could pose.  I could hardly blame them, but it makes doing somethings more difficult.

After downloading and trying about six or seven different packages, I came back to ConquerCam.  It really is amazing how awkward, annoying and/or buggy so many of these are.  And that’s when their not loaded with adware.  At the end of the day, it looks like ConquerCam is quick, clean, easy and stable.  The documentation is very light (almost non-existent) but there are many helpful posts on their forum.  I discovered a few things which were helpful (and in hindsight should have been obvious but took quite a bit of poking around to confirm):

  • motion detection periods can be scheduled during regular periods;
  • motion detection can be limited to a user defined mask of the camera image;
  • ConquerCam can keep track of and upload a series of recent history files; and
  • ConquerCam will always keep the filename of the current (most recent) snap the same when using iterative file names.

The last point was key for putting these captures on a blog.  Without javascript, the current image must just point at a fixed name jpeg hosted somewhere.  With ConquerCam, I was able to have it save up to five total shots naming each capture{cnt}.jpg where {cnt} is a number between 0-4 which is inserted by the program.  The file with the “0″ in its filename is always the current image.  Mission accomplished.

Motion detection is a bit more of a challenge.  I found a very helpful post on the ConquerCam site that seemed to be key.  Everytime I turned on motion detection, it seemed to slow down or lock up the computer.   The poster suggested setting the framerate down to 1 fps if your only using the webcam to take snapshots rather than streaming video.  This dramatically reduces the load on the CPU to monitor changes to the image.

Likewise, they also suggested setting a mask for the portion of the image to monitor, further reducing the load on the CPU and making sure that extraneous activity doesn’t set off the camera.  The program comes with a few random examples of a mask, but no indication of how to actually make one.  Again, a helpful post on the forum suggested simply taking recent shot from your camera and editing it in your favorite program like Photoshop, Paint Shop Pro, or even MS Paint.  Here’s the trick:

  • paint everything you don’t want to monitor absolute black (0, 0, 0);
  • paint everything you want to monitor absolute white (255, 255, 255); then
  • save it as a .gif file.

When you configure the motion detection, tell ConquerCam to use the mask you created.  In preview you should now see the masked area being monitored.

Detection senstivity is tough.  Two main concepts to consider here.  What’s the right triggering threshold (the amount of motion above which the camera will take a picture) and then what’s the right cooldown period (the time period after detection that the camera should not take a picture).  Just to make it obvious, here was my initial problem:  set the trigger low and when a bird came to the feeder, a picture was taken and uploaded.  Of course, as soon as it left, it detected that motion too and took a picture when the bird left, leaving the current image as a shot of where the bird just left.  Set the cooldown to a reasonable period 15-30 seconds and you can mitigate this a bit.  Its a lot of trial and error.

I’ve run into one potentially fatal flaw with my current set up though which I’ll likely address soon.  The feeder is suspended from the roof by a hook.  When birds land or take off from the feeder, they send it swinging back and forth like a pendulum which continues to set off the motion detection after the birds have left.  Same problem when its windy.  The only solution I can come up with is to pole-mount the feeder so its motion is minimized.  Another weekend project.

In the mean time, I’m experimenting with different thresholds for motion detection and it looks like its working most of the time now with the occasional false positives.  More tweaks to come!

Getting set up and making adjustments

After a day or so live, it looks like running a birdcam will allow me to combine a number of until-recently-unrelated hobbies: birds, computers and pure tinkering.

Getting Started

First of all, a project like this just forces you to become more immersed in the substantive aspect of a hobby like birding. My wife and I have been very casually backyard birding. Mostly consulting our field guides when we notice a new or interesting visitor. The blog effect has focused these energies and actually encourages doing what you’re blogging about! All in all a good thing.

The computer side of this is actually fairly ho-hum. Its very high on the “neat” factor, but its about as technically challenging as assembling bolt-together furniture: follow the instructions, make sure you have all the parts first and do a reality check from time to time.

Installing the webcam went by the book. Downloading and installing ConquerCam went mostly according to plan. I intially installed the 30-day free evaluation version, then quickly upgraded. Doing the upgrade only had one trick which was doable if you actually read the email that came with the software key.

A little trial and error had the camera feed dialed in. I decided to keep the camera feed at 640 x 480 pixels for best resolution and just size down the picture slightly on the blog. Getting the automatic FTP function to work properly took a bit of work. These things are usually one of those “tweener” issues: neither the file help host nor the ftp software help really can bridge the gap to make each work with the other sometimes, so you have to experiment a bit and be methodical. After about 15 minutes, I was able to get it to work reliably and automatically. Its been fine since. I set the software schedule to automatically upload pictures between 8am and 8pm.

Getting the camera set up is probably the part that’s the most fun because I get to tinker. The feeders are in our front yard which offer the birds some respite from our dogs who are in and out of the backyard. In our continuing efforts to vex the local squirrel population, I hung a tube feeder from the rain gutter outside my office window and left the chalet and hummer feeder on a hook in the middle of the lawn. The natural placement for the camera was in the window near my computer and the tube feeder.

If I left the camera inside, I’d never have to worry about weather or running wires outside. My mounting solution was to velcro an angle bracket inside the window frame and set the webcam on the little shelf it created. Duct tape to run the usb cable back to the computer and voila, up and running. The plan was to get set up temporarily and then make adjustments along the way.

Adjustments

The first adjustment I see I’m going to have to make is orientation of the camera. The camera faces southeast which gives it a good view of the feeders and the yard, but its staring a bit too much into the sun in the morning (if its there) and then looking at the shaded backsides of the feeders in the afternoon when the sun goes over the house. You can see the glare on the pic below. I have a few other alternatives inside the house and the feeders are all easily movable, so I may experiment a bit for best results. I’m also getting some reflection off the blinds, so a better spot may solve both problems.

crow.jpg

The resolution on the little cam leaves a bit to be desired, but for a proof of concept, its working much better than I expected. I suspect I’ll be upgrading and hopefully adding another cam soon. Seattle weather seems to be playing havoc with the camera’s exposure control too. Today was a classic 15 minutes of sun followed by 15 minutes of cloudy gray day. As I checked the cam from work, I could see it struggling to keep up.

Lots of little projects and lots of experimentation. Stay tuned.