Wednesday, December 8, 2010

git broken after snow leopard upgrade

I was trying to check in some code after upgrading my MacBook Pro to Snow Leopard and realized git wasn't working.

Here's how I fixed it:

  1. Download MacPorts for Snow Leopard and install it.
  2. Use MacPorts to install it

    $ sudo port selfupdate
    $ sudo port install git-core +svn

For more installing git on OSX see

Tuesday, November 16, 2010

View Sensr Cams with iPhone App

A friend of mine showed me the Live Cams app for iPhone and iPad today. It let's you view live webcams from your iPhone. There are a few other apps out there that let you watch cameras, but Live Cams seems to be unique in that it also lets you view your private IP cameras as well. When I saw this I realized that there should be a way to view Sensr cameras with this app.

Warning: Complicated setup ahead.

Basically Live Cams will view any motion JPEG stream. On the Sensr site we also generate motion JPEG streams for cameras. It's a bit hidden, but we could easily expose this in the future to make this easier. For now, go to the "View Live Stream" link for a camera. This pops up a window and sends a motion JPEG stream. If you right-click on that window and select View Source, you'll be able to find the stream url. In this example it looks like this:

If you grab the stream URL from the source, you can then use that URL to add a private camera in Live Cams, allowing you to get a live view of your Sensr camera on the iPhone. Since the URL is difficult to type, you might want to email it to yourself so you can cut and paste it on the iPhone. (I warned you that it was complicated!)

This is a hack right now, but there are things we can do make this easier in the future.
  • Expose the stream urls in the web page
  • Convince Live Cams to use our API, letting the user add Sensr cameras easily
The advantage of using Sensr is that the user doesn't need to punch holes in their firewall. The user also gets archiving, sharing, and alerting on the Sensr site. Eventually it would be nice to integrate those into an iPhone app as well at some point.

Thursday, October 21, 2010

Thursday, September 16, 2010

Cheap Wireless Network Camera

I've been using this wireless network camera for about a year now. It's a Planex CS-W04G

At about $51 on Amazon, it's the cheapest wireless network camera that I've been able to find. For some reason the tag line is Designed in Japan, which I find cute.

It also works great with via the built in FTP functionality.

Here's a sample image from mine under relatively low light conditions, about an hour before sunset with east facing windows.

Tuesday, September 14, 2010

Recursive Live View

I added a camera at the Sunfire Offices yesterday. One of my enterprising office mates thought it would be fun to feed the live view of the camera back into the camera.


Monday, September 13, 2010

Motion Sensitivity for

When adding a camera to you can adjust the sensitivity of the motion detection on a scale of 1-10, where 10 is most sensitive. This value defaults to 5, which works pretty well for most cameras. If you change the setting to make the motion detection more sensitive, then it you may end up storing a lot of redundant images.

Let's think about this for a second. At first you might think that more sensitive is better. After all, you don't want to miss that motion. However, most cameras have some degree of noise in the image. This means that at even if nothing is going on, the images may still differ significantly from one frame to the next. Most motion detection, including ours, deals with this kind of randomness. However, if you crank up the sensitivity, you'll still run into this issue.

Ideally, you'll want the motion detection to trigger when there is significant motion. In other words, when something interesting is going on. After all, you don't want to spend hours looking to lots of boring images. What you really want is to know when something interesting is happening or has happened.

There is another issue to keep in mind, we do impose quotas on the number of images that we'll store per hour. Right now we limit it to about 600 per hour. (It's a soft limit, so sometimes you'll get more...) This means that if your camera setting is too sensitive, you'll waste your quota on lots of almost identical images, and when that raccoon walks through the office, you might miss it.

If you're getting too many images (also known as false positives) from your camera, click on the edit tab and adjust the senstitivy settings under advanced settings. I've found that for cheap cameras under low light conditions, the setting of 3 works pretty well.

Thursday, September 9, 2010 cameras from 31 timezones

I noticed we got a new camera from Jakarta recently. This made me curious as to where our cameras are located. When a user adds a camera to, they can set the timezone. This allows us to show nice daily views of what's happening on their camera, as shown above.

I ran the following SQL command and you can see that we currently cover 31 time zones, including our new friend in Jakarta. Nice!

mysql> select distinct( time_zone ) from cameras
order by time_zone;
| time_zone |
| Abu Dhabi |
| Alaska |
| Amsterdam |
| Arizona |
| Bangkok |
| Berlin |
| Bern |
| Brasilia |
| Canberra |
| Casablanca |
| Central Time (US & Canada) |
| Chennai |
| Eastern Time (US & Canada) |
| Hanoi |
| Harare |
| Hawaii |
| Jakarta |
| Krasnoyarsk |
| Kuala Lumpur |
| Kyev |
| Lisbon |
| London |
| Minsk |
| Mountain Time (US & Canada) |
| Pacific Time (US & Canada) |
| Paris |
| Riyadh |
| Rome |
| Singapore |
| St. Petersburg |
| UTC |
31 rows in set (0.00 sec)

Tuesday, August 24, 2010

$1 Billion DIY Video Surveillance Camera Market

These guys are predicting a $1 Billion market for DIY network cameras by 2012. That works out to about 10 million cameras per year, if you assume the cameras cost about $100 each.

Gosh, sure would be nice if someone built a cloud based service that would leverage all those cameras. Wait, that's what is about.

Got a network camera? Try We provide sharing, archiving, and alerting for your network camera. We support almost any brand of network camera. As long as the camera has FTP, it will work with our cloud based service.

Monday, August 9, 2010

Configuring the Cisco WVC80N on Sensr

[Note: an updated version of this blog with more details can be found on the blog.]

I recently found the Cisco WVC80N for sale at Best Buy. I was visiting my relatives in the Midwest and hoping to buy a camera that I could configure for them with To use network cameras with Sensr, you need one that supports FTP. I was disappointed to find that FTP was not listed on the side of the box. Since this was the only network camera they had, and the store was closing in 10 minutes, I did a quick search from my iPhone and found this FAQ, indicating that indeed the camera will support FTP.

I went ahead and bought the camera. It was a bit pricey at $150 but I figured that if it didn't work, I could return it the next day. Best Buy has a pretty decent return policy. In this case that worked in their favor, as I'm sure it does many times.

As with many of these network cameras, the setup software only works on Windows. If you have a Mac or Linux, you'll have to forgo the software install, which in my opinion is probably a good thing. There is no reason you should need to install software on your PC to setup or use a network camera.

So a couple of things I learned. First, by default, the camera will grab an IP address over the ethernet using DHCP. This is pretty standard. The trick with these cameras is to find the IP address that your router gives out. The above mentioned FAQ also says the default IP is This is NOT the case if your network has DHCP, which is probably the case. I found the IP address by looking at the clients table on the home network's router.

The second thing I learned was that the camera doesn't support timed FTP. This means you can't simply have the camera FTP images every second, which is the way I like to setup cameras on As a work around, I turned on Motion Detection for the camera and told it to FTP the images to I then set the motion detection level as sensitive as possible. Unfortunately to set the overall sensitivity, you need to use Internet Explorer, since that configuration is set using an Active X control. Yuck!

The advantage of having Sensr, rather than the camera, do the motion detection, is that the live views are much more interesting. If your camera only sends images to Sensr when there is motion, the Live Preview links from the site won't be very interesting.

Sensr does support camera based motion detection. Basically this means motion detection on the site is turned off, and we'll assume every image coming from your camera should be saved. (We still have limits on the number of images we'll save, currently 600 per hour.)

Overall I would not recommend the WVC80N. My main gripes are:
  • Lack of timed FTP uploads
  • Active X is required for the web configuration
  • Too expensive
You would be better off buying the Dlink DCS-920 which works well with Sensr and is considerably cheaper.

Friday, July 30, 2010

Barbie Cam

Looks like you can now get Barbie with a built in camera. The camera isn't connected to the net and it only stores about 30 minutes of web quality video. This means we don't support it on

There is a USB connector so maybe you can hack it to be a live webcam, which we do support. :-)

Tuesday, July 20, 2010

Can't FTP from IP Camera

At we provide free FTP logins for people with network cameras. A common problem is that IP cameras, like the DCS-920, can't always do DNS. This means that the camera can have problems reaching our servers, say, since it can't find the IP address for the FTP server.

The best way to fix this is to set a DNS server in your camera's network settings page. You can either dig out the DNS settings for your ISP, or you can simply use and These servers are the DNS servers from OpenDNS, another favorite startup of mine.

Eventually we'll have better realtime support to help you debug your FTP server settings. In the meantime, check those DNS server settings!

Saturday, July 17, 2010

Wow, 10 years of

Back in 2000 I registered the domain name for 10 years. It expired this month and I had to renew it again. Network Solutions sent me a letter in the mail since the old Yahoo email address they had on file for me didn't work anymore.

A lot has changed in the last 10 years. It almost hurts my brain to think about it. In fact most of it is so personal, I don't feel right blogging about it.

I do remember getting a call back in 2000 from the folks at Henry Beguelin, they wanted to buy the domain. Frankly, I might have been willing to sell it to them. I told them to make me an offer, but they decided to go with instead. I still haven't gotten around to buying a pair of Henry Beguelin shoes. It would be nice to have a pair.

The domain renewal went through, even though I accidentally let it expire. Email that was stuck in limbo has started coming through and the blog is back online. Apparently all is well in domain registration land.

I decided to renew the domain for 20 years this time. I can't even imagine what I'll be blogging about in 2030. Maybe I'll be concerned about social security. Either that or where to park my nuclear powered flying electric car.

Wednesday, July 14, 2010 now supporting kyivstar sms

At we received a request from one of our Ukrainian users asking us to support SMS for his local phone carrier. Luckily we're using a package called sms-fu that makes adding carriers very easy.

Our sms_fu.yml file now has these additional lines, which means our users can select the appropriate Kyivstar email to SMS gateway.
name: Kyivstar (contract)
name: Kyivstar (prepaid)
Of course nothing is as simple as you might expect. We were checking numbers on the user's settings page to make sure the number was legit. Unfortunately, the site was enforcing a US centric format, 212-555-1234. I tried to add a Ukrainian format number and our site rejected it. After changing the model verifier to be more liberal, we then ran our unit tests and found that a few of them failed. We then modified the tests to match the new more liberal phone number format and all is well.

Give a try. You can use us to archive, alert, and share your network cameras. Now even from the Ukraine!

Sunday, July 4, 2010

Quicktime Screen Recording

Quicktime (version 10.0) on Snow Leopard makes it crazy easy to create screencasts. I was playing with the experimental DVR view on this morning and thought it would be cool to be able to screencast it.

If you have a Mac running Snow Leopard (aka 10.6), just run Quicktime and select New Screen Recording from the menu. It will even directly upload the video to YouTube for you.

Here's the screencast I made. It shows the DVR view. You can select a time period and then play all the images from that time period. Go to and try it out for yourself. More on later.

Friday, July 2, 2010

Tahoe Rim Trail

8,791 feet and 4.9 miles south of Spooner Summit. First time ride for

Friday, June 11, 2010

Post Live Views on Facebook

We just released a fun new feature on today. If you have a camera on our site you can now post live views to your Facebook wall. This means your friends can watch your camera live without needing to leave Facebook.

You can post live views from any of our public cameras to your Facebook pages as well. You just need to log in to with your Facebook account and you're good to go.

Sunday, June 6, 2010 street cam experiment

This morning I decided to put a camera on top of our mailbox for the day. I ran an extension cord up to the street and placed a camera there. I then printed out 25 little slips of paper and left them under a stone next to the camera. The slips of paper say:

Find your picture at
I also put a note next to the slips that says: Take an URL

I'm going to leave the camera there for the day and see what happens. You can see the archive for this camera by clicking on the image below.

Saturday, June 5, 2010

MaiTai 2010

Here's the Forbes coverage of the MaiTai 2010 Kitecamp that I went to last week in Maui. It was a great kiting and networking event.

Check out the video.

Friday, May 21, 2010

Cool Gesture Tech with Cheap Webcam

I've been interested in gestures and cameras for a while. These guys are doing some cool stuff with a simple multicolored glove and a cheap webcam.

Saturday, April 24, 2010

Me and My Roadster

From the NorCal Rally a few weeks ago.

Thursday, April 22, 2010

Trying out the Facebook Like Button

Today Facebook announced that you can put the like button on your own web site. I figured I would give it a try.

For more details, see the Like Button documentation.

Wednesday, April 7, 2010

Spycam via to iPad

When you create a camera on you can now use your laptop's built in webcam. (Note that you'll need to login with Facebook Connect to activate the Add Camera link.) This can come in handy when you want to keep an eye on something. For instance, I setup my MacBook pro in the corner of the master bedroom and left it monitoring the room. It took about a minute to setup.

In the shot above you can see me viewing the "Live Preview" of the MacBook's camera on my iPad. Later you can see the cleaning lady come in and tidy up.

While in this example, I'm using the iPad as a viewer and the MacBook as the camera source, anyone can view the camera since it's on the site. I've set this camera to public so it's open to the world. Your cameras can be private or restricted to your Facebook friends.

Setting up cameras on is free for now. Give it a try and let us know what you think. For more details on the Live Previews feature, see this article on our Google Group.

Saturday, April 3, 2010

To Paris with iPad

Watching the movie Paris on the iPad while I pack for Paris!

Google Group for

We recently created a new Google Group for We're posting tips on using the site and hoping to engage our users through this forum. Feel free to join us!

Use for camera sharing, monitoring, alerting, and archiving.

Google Groups

Subscribe to


Visit this group

Friday, April 2, 2010

Tesla Signature 100

Here are some shots of me driving my car at the 2010 Road Rally in Menlo Park. See the entire Flickr gallery here.



Road Rally 2010

Monday, March 22, 2010

Tesla Road Rally

30+ roadsters at Pomponio Beach.

Tuesday, March 2, 2010

Monitor Inspiration

Trying to get inspired so I bought a new monitor and wrote some
graphics code.

I think it's working!

Friday, February 26, 2010

Exploding Flavia

Dang Flavia packets keep exploding on us. Maybe time to try another
brand. Would be nice to have compostable pods. Suggestions?

Wednesday, February 3, 2010

Browser Based Apps for Google Tablet

Google seemed to try to toss a bit of cold water on Apple's iPad announcement with a me too announcement of a Google Tablet.

One thing that caught my attention though was:
Google is taking a different approach with Chrome OS. Instead of programs running straight on the computer's hardware and its underlying Linux operating system, Chrome OS applications run directly in the browser. What's similar to the iPad, though, is that both have somewhat of an applications head start compared with a computing platform that's starting from scratch: the iPad can run existing iPhone apps, and Chrome OS can run existing Web applications such as Google Docs
This reminds me of the Native Client project. It would be interesting to see Google take a web app approach to the tablet. Of course Apple launched the iPhone without an app store and initially pitched the idea that all apps could just be web apps. Of course today no one thinks of web apps as real iPhone apps. (Except maybe the Google Voice folks.)

Maybe the Google tablet could just leverage NaCl apps as a way to jump start a gPad device instead of the more complicated and heavy handed process that is involved in running an app store. After all, this is similar to the way the iPhone got started. Of course NaCl apps could do a lot more than the Javascript web apps of the iPhone 1.0 days.

Monday, January 18, 2010

New Axis Thermal Cameras

Today Axis announced new thermal imaging camera model Q1910. Apparently you can get one for only $3,138 from your favorite reseller. The videos are kind of creepy, I have to admit.