FarWatch is my name for a package of mostly free applications which allow anyone with an always on internet connection... even without a static IP address... to monitor things at a premise from any internet terminal in the world.
The basic FarWatch system only requires a PC which you are willing to leave running and an internet connection. For about $40 you can add hardware to monitor temperature at the premises.
If you go further, and set up my weather monitoring software on the computer, you can monitor the weather... and much more.
Add a simple USB webcam and WebCam Looker from Felenasoft, (free to evaluate for 14 days, then $25 to license (at 2/2010)), and then you can view an image from the monitored premises from any internet terminal... without the heavy internet traffic and hard disk thrash that some systems require.
.... of course, if the introduction makes this look like what you were after, just read on, without skipping stuff!....
An aside: Yes- You can buy IP-Cams with all of the FarWatch elements built in... but if you go that route, your solution lacks flexibility. And you don't have the weather/ premise systems monitoring, either. FarWatch can use an IP-Cam, and for very little extra expense you get more features, more control. You can also take a middle road: Set up an PC to do the serving, and use WebCam Looker to take care of some of the things that the full FarWatch would give you.
A "disclosure": I really struggled to get to where I am. Although I have used computers for many years, this project brought together several challenges. While I like WebCam Looker very much... so much that I haven't bothered to try the alternatives (yet.. despite having a licensed copy of an alternative product, which I bought during an earlier stab at these challenges)... While I like it very much, I do not mean to imply by anything that follows that I was able to set it up, just so, on the first attempt. And I am even now struggling with a few "little features" that I will one day bludgeon into submission. If you want something that will "just work", and read your mind, guess what you wanted, and do it your way.... then stop reading, and throw out your computer. Another reason I am persisting with WebCam Looker is that it has been around for a while. This is usually a Good Sign. Buggy software doesn't usually remain in the marketplace... unless it has a certain huge monopoly behind it, killing off any products that try to compete.
Perhaps I should also mention that my only connection with Felenasoft is as a customer. Yes, I like the product; yes, I've sent them feedback. No, I do not get a commission!
Back to the central story.
In what follows, I am going to give you the details of setting up WebCam Looker to "play nicely" with FarWatch.
Note that the setup that follows meets my requirements. If you are looking for something similar, I would be surprised if WebCam Looker can't do what you want to do.
Start by setting up FarWatch and the weather, etc, monitor (DS025).
DS025 generates the web page which FarWatch serves to anyone asking for the state of the monitored premises.
The ini file of DS025 provides a way to specify a graphic to be included in the served page of HTML. I tend to call that graphic FWtmp.jpg. Totally independently of DS025, if what is in the file changes, then what you see when you "visit" the premises will change. For testing purposes, put an unchanging file in the right folder. (There's more on configuring DS025 elsewhere). When you've got FarWatch serving the static image, you're done with the FarWatch/ DS025 setup.
You don't, of course have to use WebCam Looker to create and update the graphic file... but I'm going to give you the details, in case you decide to try the tested answer.
Before we go on... two things.... "My Goals", and "Naming of Parts"
For my goals, I do not want a video feed... and all of its overheads. I am quite content with a system which updates the image on the webpage once every twenty minutes. You could have a fairly high resolution new image every two minutes with what I will describe... but two new images per second would take some bigger changes. I suspect that the same hardware and software I am using can give you near video images... but I haven't gone down that path. One "frill" I have in my system is that the image "freezes" in the early evening. People checking my site in the night hours don't see a black rectangle. (Of course, I need only change the camera to an infra-red model, and I can show pictures through the night.)
Some "naming of parts"...
IP-CAM: An "ip-cam" is a device which can be connected to a local area network (LAN), and supply images (at least still, maybe still and moving) to a web browser, e.g. FireFox. These devices often are capable of much more, but for our purposes, that's all we need. And we don't need the camera's supplier's proprietary software cluttering up our PCs, either. Typically, you connect the ip-cam with a cable at least once, and then use a browser to go to a URL like http://192.168.0.2 to access the camera's control panel. There, you set various things like the resolution you want, and, if the camera has the feature, the settings for the wireless networking connection. You then disconnect the cable, and if all is well find the camera connected to your LAN by its wireless circuits.
WEB CAM: What is quite properly called a "web cam" in many contexts I shall call a USB-cam in what follows to underline the fact that I'm talking about the everyday "cam" that connects quickly, inexpensively and simply to your PC via USB. (Those of you new to computing don't know what a blessing USB is, compared to what went before. May you never have to learn!) When you first plug the camera in, some necessary drivers will have to be installed, but that is usually painless, and is often automatic. What you don't need are the various fancy "support" packages which are often bundled in addition to the basic drivers.
VIDEO CARD CCTV CAMERA: If you have been trying to move old VHS recordings from your tapes to your PC, you may well have a card or external device to make this possible. People with some forms of video recording cameras will also connect to their PC this way. The nice people at Pinnacle have a strong presence in the field. You can buy a fairly good CCTV camera which will plug into one of these cards from eBay for $40 (and some pretty rotten ones, too... but for even less, and even those will do for experimentation. They DO produce an image!) If you see NTSC or PAL or "composite" in the specs, you are probably looking at this sort of device, which I will call a "CCTV-cam" in what follows. Mention of "RCA connectors" also probably indicates one of these. If you don't mind connecting up some wires, you can buy the heart of this sort of device from Sparkfun (At 2/2010: $32 for a 640x480 color camera, or $35 for a 640x480 B&W with IR illumination built-in (for night viewing) (That camera works fine, too, for scenes illuminated by visible light, but the image is still B&W, of course.)
Oh dear... a digression: When I went to the Sparkfun site to look up that camera for you, I came across another lovely toy at the Sparkfun site: A very small (about 1 cm on a side!) 1.3 mega-pixel (1300x1040 pixel image) color camera from Toshiba with the standard data+I2C interface. Offers on-board JPEG compression. $10 at 2/2010.
(Text taken and adapted from the Sparkfun site.)
Now... I don't know that this will "just work" if plugged into the FarWatch/ WebCam Looker system... but this does seem to be a very interesting device! Back to "work"...
Put your FarWatch/ DS025 work to one side for a moment.
Download and install WebCam Looker. Connect your camera(s). I have used the following set ups...
1) A Linksys WVC54GCA ip-cam plus a CCTV-cam connected through a Pinnacle video capture card.
2) A Panasonic BL-20C ip-cam plus a Logitech USB-cam.
For some reason, the ip-cam manufacturers seem to want to keep secret the "codes" for getting into their cameras from a simple browser, which is all you need to get into them with products like WebCam Looker. (It is not the only example of its genre.)
What I've discovered follows. If you know the URLs for other cameras... or have discovered that their images cannot be fetched from a browser, then do please get in touch.
If you don't have a Linksys WVC54, or one of the Panasonic BL cameras, and you're not using a video capture device (CCTV-cam), then check out the extensive notes at the site produced for the application called "Motion".
In every case, what you enter into your browser will be something of the following form....
http://TheCamsIPaddress/SecretCode
The "http://" is generic to the way we are accessing the device. What follows it is "the URL".
The "TheCamsIPaddress" will probably be something like...
192.168.0.2
... with the "2" quite likely to be different in your case, and even the rest of it may be different. You want to set the camera to use a static IP address.... which is different from having a static IP address for your connection to the internet (!). And you may have to fight with your firewall and anti-malware software to "get into" the camera, or "see" its answers. (Don't be alarmed if your anti-malware software asks if you want to permit an "outgoing" connection... if that connection is to your camera's IP address, i.e. 192.168.0.2 in my example.
Aren't computers fun. Sigh.
I will use 192.168.0.2 for "TheCamsIPaddress" in the discussions that follow. Remember that you will almost certainly need to change that, if only the "2", on your system.
With most ip-cams, there will be some "setup" work to do. That's things you "tell" the camera once, by sundry means. Once it has been set up, there will be the "secret code" to mutter. Remember to separate the "secret code" from the "http://TheCamsIPaddress" stuff with a "/". More "/"s may be part of the "secret code". ("Secret code" is just my quick way of saying "the latter part of the URL". So there it is, if you want a more formal nomenclature.)
One last general point: As scary as doing firmware upgrades is... and you should be (moderately) scared... I would recommend that you seriously consider doing a firmware upgrade of any camera, especially if you bought an elderly eBay bargain.
N.B.: This section is specific to the Linksys wvc54gcA. The WVC54GC is quite different. (A section about the WVC54GC follows.)
To simply fetch a single image from this, I connect to the following, either with a browser (Firefox works fine), or from dedicated camera monitoring software like WebCam Looker....
http://192.168.0.2/img/snapshot.cgi
Setup: You may need to issue the following command to the camera once...
http://192.168.0.2/adm/file.cgi?h_videotype=mjpeg&todo=save
This should switch the output stream from MPEG-4 to MJPEG
After that you can access it with...
http://192.168.0.2/img/mjpeg.cgi
... but I'd try the "... snapshot.cgi" first. The other command may not be necessary.... and with my camera, the camera "froze" up at least once a day, when I tried to access it via mjpeg.cgi. Didn't matter if I used WebCam Looker or a browser. A simple power cycle of the camera would put things right. Happily, even when the camera's mjpeg stream is "frozen" "...snapshot.cgi" still works, at least at one image per sixty seconds. (I imagine it would work at higher rates, but wouldn't want to push it too far.)
When the mjpeg stream is working, you should also be able to access the video stream with...
http://192.168.0.2/img/mjpeg.jpg
.. but that seems to "freeze" too.
In my hours of searching, I also found a post that said that if you issue the setup command mentioned earlier...
http://192.168.0.2/adm/file.cgi?h_videotype=mjpeg&todo=save
... then you can switch things back to what they were (mpeg4 streaming) with....
http://192.168.0.2/adm/file.cgi?h_videotype=mpeg4&todo=save
.... which you can try. I didn't. That post said "This (the first command) will disable the live view in the camera itself.", but I didn't find that to be the case. The post was quite old. The first setup (do once) command is the one I gave earlier, which worked fine in Feb 2010, with the latest firmware on offer at that time.
For many years, the Linksys WVC54GCA was the recommended ip-cam of ComputerShopper.co.uk. (It has recently been replaced by the Solwise... but maybe for the pan and tilt feature?)
I found the image from the Linksys unit superior to that from the Panasonic BL-C20, which I discuss in a minute, although the BL-C20 was better at capturing images in low light. The BL-C20, with the same "pixels" spec, and similar lens (the field of view is about 54 degrees wide) picked up less detail, and had worse JPEG jaggies.
N.B.: This section is specific to the Linksys WVC54GC. The wvc54gcA is quite different. (A section about the WVC54GCA appears before this section.) The WVC54GCA is a Very Nice (budget) IP cam. The WVC54GC is an "ok" IP cam... but not for FarWatch or WebCam Looker purposes.
The WVC54GC lacks an audio channel, and it is inferior to the later model, the WVC54GCA in other ways. The WVC54GC has a maximum resolution of 320x240, vs the 640x480 available on the WVC54GCA.
To view the image from the WVC54GC, you have to use a browser which allows ActiveX controls, e.g. Internet Explorer. Firefox "doesn't do" ActiveX... the technology is considered insecure. I finally bullied my IE 8 on a Windows XP system to load the necessary ActiveX control in March 2011. (It took turning off various things in the IE security settings... but I got there in the end. And once the control was installed, I was able to put my security back to where it had been, and continue using the now- installed control.) I've seen people online complaining that they haven't found a way to force Windows 7 to let them install the control, due to the age of it's certificate.
There doesn't seem to be a way (programmatically) to ask the WVC54GC for a jpeg "snapshot" of what it is seeing, which is, to me, a useful feature of the newer camera. I.e. there's no "secret code", e.g. 192.168.0.100/img/snapshot.jpg which will return a JPEG. (You can ask it, by clicking a button by hand, to take a snapshot of the live image if you are viewing the video stream in the webpage the device serves up.)
If you are setting one up, you may want to know that nothing more than a wired connection to a PC is required. Press the reset button on the IP cam, give it time to reboot, and you should find it on your LAN at....
http://192.168.1.115
The default user is "admin", password "admin".
After that, you can enter the good administration software within the device. It reflects the age of the device, but, while limited, is well done. I haven't tested all of the following, but it is supposed to have these features.
It can support DDNS... but only via the TZO service. (This isn't a big deal, if you are prepared to leave a PC running. The nice people at DynDNS offer updaters which can run in the PC.)
It has simple motion detection capabilities. It won't make your PC "beep" (or do anything else), but it will send an email, including (if you wish) a video clip. It won't send images or video to an FTP server, but you could argue that you can accomplish almost the same thing via the "send email" facility.
You can enable UPnP. You can tell it to use whatever port you like.
If anyone know a way around the "via ActiveX only" limitation, or a way to programmatically fetch JPEGs, please contact me. I'd be delighted to make better use of my WVC54GC (no "A"), and many eBay sellers would be delighted. Do remember that the WVC54GCA is an excellent IP cam, without any of the restrictions of the older WVC54GC. And it has the best image quality I've seen in a low cost IP cam... and I wilt when I think of the hours I've spent trying different models!
A predecessor of this, "long" ago, was ComputerShopper.co.uk's favorite ip-cam.
To use it with something like WebCam Looker, the "magic code" is....
http://192.168.0.2/SnapshotJPEG?Resolution=640x480&Quality=Standard
"Resolution" can be set to "160x120", "320x240" or "640x480". "Quality" can be set to "Motion", "Standard" or "Clarity". I also understand that it is best to allow at least three seconds between "SnapshotJPEG calls". (I sent a request to Panasonic for the URL to the .pdf for developers with the full .cgi reference which a forum post said existed. I looked for it on their site.. but not hard enough. Filed a support enquiry, and in due course, a Nice Person at their support center pointed me to the right URL for detailed technical information.)
As ever, there is a setup "trick". This time, you have to use your browser (I like Firefox) to go into the camera's control panel (just browse to it's basic URL, i.e. http://192.168.0.2/ for mine). Go into the "Account/Administrator" page, set it to "Allow Guest Users". You only have to do that once. (An unregistered guest is already set up, so you don't need to add a user.)
See my comments above, in the discussion of the Linksys WVC54, for my thoughts on the relative image quality of these two cams.
In both cases, the USB-cam was only connected because I'm human, and wanted "a bit more". It was only used to watch for motion, e.g. a postman coming to my door. It snapped pictures when it saw motion, and stored them on my hard disk. WebCam Looker has, as in most areas, a range of options open to you in respect of how much disk space it will use, and what it will do when that space is full. It can then just wait for you to make decisions, or it can be set to "wrap around", and over-write the oldest images whenever new things come along. Typical of why I like WebCam Looker...
To use WebCam Looker the way I am using it.....
You set up your "sources". Each of your cameras is a "source". In my case, the USB-cam camera was "discovered" by WebCam Looker without me having to do anything clever. The CCTV-cam was "discovered", but I had to make some settings. In particular, although the source type ("Device") was correctly detected, I had to go into the details, and "advanced details" from there, if memory serves me. Eventually I reached a place where I could change the "Crossbar" settings. I had to make the input "VideoCompositeIn" for my camera. I also needed "YUY2, 720x526, 25fps". (That seemed to work as well as the 29fps that another application was using.) Those settings, I think, arose because I had a "PAL" format camera. In the US, you will probably have "NTSC" cameras. After you make what you hope are the right settings, and click the "ok"s to get back to the main screen wait for a bit for the preview to come up... perhaps 10 sec.
Once you have added a source, by the way, you cannot change the sort of source it is. If you make a mistake there, you just delete the offending, unsatisfactory source, and start again to set up a source for the camera that you want to add.
Sorry... back to what we were doing before those little digressions....
You have various options for "marking" things at different levels. I like to keep things simple, so I applied my marks at the most fundamental level; I applied them to the sources. In particular, I put a date/time stamp on each. If you have two sources, if you put the mark for one at the left of the image, and the other at the right of the image, you can still see both timestamps even when the images are overlapping.
Each source, at any one time, can be connected either to "Preview only" or "Continuous" or "Motion Detect". That's the simple statement of What Happens. There is a twist to that, which we will come to later.
In preview only... for our initial purposes... you simply see on the screen of the PC running WebCam Looker whatever is being fed to WebCam Looker from the sources you have set up, and turned on. (There's a little "source on" check-box on each source's settings page). Quite sufficient for many users' needs! An easy, affordable way to multiplex four, or even more, cameras onto a single, live display.
I set my USB-cams to Motion Detect, and sent still images only, not video, to the archive when motion was detected. A tip for you: Do not "watch" the whole of the image for motion. Watch just the "middle" part, additionally excluding anything you wish to. The reason for this is that if you monitor the whole scene, you will get pictures of the nose of someone as they come into view, whereas if you'd taken the photo a moment later, by setting the detection area to be the "middle" of the image, you would see the whole profile when the nose invades the monitored region.
Setting up the motion detection routines went quite simply.
Don't imagine you're seeing a rough edge if the "detect here" areas flicker from time to time as you monitor the display. They flicker to say "We counted what just happened as 'motion'".
The sources (except if switched off, of course) send a "continuous" stream of images to WebCam Looker. This is not the sort of "continuous" we're talking about here.
When a source is set to "continuous" mode, it is continuously sending images to the hard disk of the PC. Note that the source can re-sample the scene on one schedule, say once every two seconds. This would give a near real-time display on the monitor. But if that is more data than you need to store, you can set the "continuous mode" to post a new image to the hard disc only, say, every 5 minutes.
You can post those images to the hard drive in either or both of TWO places:
1) The archive. This is a WebCam Looker managed folder. You can access images in the archive almost as if they were on a video tape, with the time the image was recorded displayed, and buttons to go forward, backward, etc.
2) To a destination of your choice. In my case, that destination is the file FarWatch/ DS025 will be using in the web page which you can access from afar. All sorts of other clever things are available, but I'm not sure if it is from here that you access them. At the moment, my WebCam Looker is undergoing a test, and I don't want to upset that by going into my settings pages... sorry!
So far, so good? Lots possible already. But now we get clever... even if it is at the cost of a little dip on the "obvious/ easy to use" meter.
When we are using the (record) continuously mode, the system does just that... it records an image as often as we asked it too... I used "5 minutes" in my example above. And it does this... continuously.... 24 hours a day, 7 days a week, while power lasts!
To get fancier, we proceed as follows:
Almost entirely separate from what we've discussed so far is the Scheduler.
On the main setting page, if you have a source selected, you can click on the Scheduler button. That opens up a window where you can set all sorts of things. For my needs, I said I wanted to use the same settings as I had for that source in "Continuous" mode... but just between the hours of 6am and 7pm. (I could also have specified a range of dates, and/or restricted things to specific days of the week. Did I mention that WebCam Looker is very flexible??)
So far so good. There's just one little "trick" to be aware of....
Once you have set up both the settings under "continuous" and under the scheduler, you then set the source to run just in "Preview" mode! Some of the settings under Continuous will be noted when the Scheduler turns things on. By having the source set to "Preview Only", you don't get recordings 24/7, which is what would happen if you had it set to "Continuous". I suppose you could say that "Preview Only" is "Preview- plus- anything- scheduled- by- the- scheduler". And you have to grasp that the scheduler will look at the settings made under "continuous".
But! Having grasped that, the program does a great job of managing the cameras and recording from them, as I wanted things done.
While it wasn't what I needed, you can also set the system to go into motion detect on a schedule. Each source's behavior can be programmed separately.
Whatever you were looking for when you came here... I hope you have found it! And I hope you don't have to discover by yourself quite as many things as I had to. It is a pity that there are so many things to get right, and that many people won't make it to their hoped for destination... but that's computers for you, isn't it?
One little bit of humor to end with. The following appeared in one discussion I read while researching the above...
"This is an excellent camera. I used it to watch my children at home from my office. I have four of them and recommend to everybody."
Children? Cameras? Four of each?
Page WILL BE tested for compliance with INDUSTRY (not MS-only) standards, using the free, publicly accessible validator at validator.w3.org