http://wiki.linuxmce.org/api.php?action=feedcontributions&user=TheUberOverLord&feedformat=atomLinuxMCE - User contributions [en]2024-03-28T10:44:57ZUser contributionsMediaWiki 1.24.1http://wiki.linuxmce.org/index.php?title=Foscam_FI8904W&diff=34536Foscam FI8904W2013-10-07T16:26:05Z<p>TheUberOverLord: Created page with "Category: Hardware {{versioninfo|810Status=Works|810UpdatedDate=8th Jan 2011|810UpdatedBy=purps|versioninfo|1004Status=Works|1004UpdatedDate=27th May 2013|1004UpdatedBy=Dabal..."</p>
<hr />
<div>[[Category: Hardware]]<br />
{{versioninfo|810Status=Works|810UpdatedDate=8th Jan 2011|810UpdatedBy=purps|versioninfo|1004Status=Works|1004UpdatedDate=27th May 2013|1004UpdatedBy=Daballiemo}}<br />
[[Category: Cameras]]<br />
[[category: IP Cameras]]<br />
<br />
{| align="right"<br />
| __TOC__<br />
|}<br />
<br />
<br />
<br />
=Features=<br />
<br />
* High image & video quality<br />
* High-sensitivity 1/4" CMOS sensor (300k pixels)<br />
* Auto IR-LED night vision up to 30m (90ft)<br />
* Motion detection alert via email or upload image to a specified FTP server<br />
* Support a wide range of browsers(IE, Firefox, Google)<br />
* Support remote viewing & record<br />
* Support image fullsceen and image snapshot<br />
* Multi-level users management and passwords definition<br />
* Embeded Web Server<br />
* WEP,WPA and WPA2 Encryption<br />
* Optimized MJPEG video compression for transmission<br />
* Support wireless network (WiFi/802.11/b/g)mobile<br />
* Supporting Dynamic IP (DDNS)and UPnP LAN and Internet(ADSL,Cable Modem)<br />
* Multi-Protocol support and Transportation (such as TCP/IP, SMTP and HTTP)<br />
* Support Mobile Phone View such as Iphone & Smart phone (It should support midp2.0 java mobile or pda mobile)<br />
* Simple to setup, Friendly GUI, DIY installation<br />
* Aluminum Alloy Design, Shell Vandal-Proof,IP65 Waterproof and weatherproof for Any Harsh Environment<br />
<br />
The FI8904W has fewer LEDs (24 to be exact) then the FI8905W 60 IR LEDs, which means that it is not as good when it comes to night vision. The FI8904W is easily identifiable (apart from the number of LEDs!) by the shape of its cowling. The cowling of the FI8905W is 'U'-shaped in cross-section, whereas the cowling of the FI8904W is what I would call 'Micky Mouse'-shaped. One more thing; be careful of the cheap clones on eBay, you don't want to end up with one of those.''<br />
<br />
=Quick review=<br />
This camera does have quite a mean zoom lens on it (12 mm). Also the colours are a bit odd; greens and browns appear purple for example. That said, it is by far the cheapest outdoor IP camera around, and I think that it is very good for the price.<br />
<br />
Do also bear in mind [http://forum.linuxmce.org/index.php?topic=10134.0 this issue].<br />
<br />
=Installation (Preferred Method)=<br />
# In LMCE web admin (type "192.168.80.1" into a browser), go to Wizard -> Devices -> Surveillance Cameras. Click the "Add Device" button at the bottom of the page. This will open a new window.<br />
# In the window that just opened, pick "Advanced IP Camera" from the dropdown menu in the "Device Template" section and press the "Pick device template" button. Or, type "2208" into the box marked "Do you know the ID of the device template?" and press "GO".<br />
# Change the description from "Advanced IP Camera" to something that makes sense to you and add a room location from the dropdown box.<br />
# Change the "IP Address" to the address of your camera. e.g. 192.168.80.XXX; DO NOT INCLUDE "http://"<br />
# Change the "Path" field to "/snapshot.cgi"<br />
# Change the "TCP Port", "AuthUser" and "AuthPassword" boxes to the details specific to your camera. ''Press "Save".''<br />
# Do a Reload & Regen, and that should be it.<br />
# Rinse and repeat for any additional cameras.<br />
<br />
=Installation using Motion (Depreciated)=<br />
<br />
''Note: This section describes how to install this camera as a [[Motion]] device; I have not tried installing it as a standalone viewer, but I see no reason why it wouldn't work.''<br />
<br />
<span style="color:red">'''''Note: These instructions are for when the camera is plugged into a router on the external network, as opposed to a switch on the internal network. Not ideal, but this was necessary due to [http://forum.linuxmce.org/index.php?topic=10134.0 this aforementioned problem].'''''</span><br />
<br />
# Install motion wrapper (if it is not installed already). In web admin (type "192.168.80.1" in a browser of your choice), click "Show devices tree" (very bottom of left-hand pane), click on "CORE" and then "Create Child Device". Then press the "Pick device template" button, which will open a new window. Under "Device Template", select "Motion Wrapper" and press the "Pick device template" button.<br />
# Plug in your camera (remember I plug my Foscams into the external router). In your router admin page (accessed via 192.168.1.1 in my case) find out what IP was assigned. Type this IP into your browser and have a look through the options. Set the username and password. I also set a static IP just in case it tries to change itself. I also specified the camera's IP on my router so that no other device could take it (belt and braces).<br />
# In LMCE web admin (type "192.168.80.1" into a browser), go to Wizard -> Devices -> Surveillance Cameras. Click the "Add Device" button at the bottom of the page. This will open a new window.<br />
# In the window that just opened, pick "Generic Motion IP Camera" from the dropdown menu in the "Device Template" section. Press the "Pick device template" button.<br />
# Find the new camera in Wizard -> Devices -> Surveillance Cameras. Change the description to something more obvious if you so wish and select a room.<br />
# Change the "Path" field to "http://192.168.1.XXX/videostream.cgi?user=XXXXX&pwd=XXXXXX", not forgetting to replace the Xs with the IP, username and password. Add "80" to the "TCP Port" field. ''Press "Save".''<br />
# Press the "Advanced" button. Check the IP and MAC address in the "Device Info" section. If it's not the same as the MAC and IP you saw in the Panasonic utility, change it. ''Click "Save".''<br />
# Do a Reload & Regen, and that should be it. This camera can now be used as a motion sensor and/or for recording movement (recordings are stored in "/home/cameras/XX" where XX is the device number of the camera, and last for 5 days I believe). A scenario will hopefully be automatically generated.<br />
# Rinse and repeat for any additional cameras.<br />
<br />
=Troubleshooting=<br />
===Advanced IP camera===<br />
You can verify the address being fed to LMCE by watching the log files specific to your device.<br />
#Edit "/etc/pluto.conf" and comment out "LogLevels=1,5,7,8" (from a terminal, type "sudo nano /etc/pluto.conf", enter your password then arrow down to the applicable line and type "#" before the LogLevels=1,5,7,8 text. "CTRL+O", press "Enter" then "CTRL+X" will save the file and exit nano.<br />
#From an orbiter, do a quick reload router.<br />
#From the admin pages ("192.168.80.1") click "Advanced"->"Configuration"->"Devices" and under "Core" on the left hand side of screen you will see what you named your device (or "Advanced IP Camera" if you did not fill in a description). Click on your device and select "Follow Log".<br />
#The box that opens will be a running log of the commands applicable to that child. From the other open window (the admin pages), click "Security" -> "View Cameras", check the radio button associated with your camera and press "Preview checked cameras". Flipping back to the log window, watch the logs for a line with "CMD_Get_Video_Frame: sUrl:". The sUrl part is where LMCE is trying to find the image from your camera. If it is incorrect, you will need to adjust the camera template to match your particulars.<br />
#VERY IMPORTANT: commenting out LogLevels=1,5,7,8 causes a lot more logs to be stored than usual. Once you're comfortable with the information from the logs, make sure you edit /etc/pluto.conf and remove the "#" from before the LogLevels=1,5,7,8<br />
#From an orbiter, do a quick reload router.<br />
<br />
<br />
===Motion (depreciated)===<br />
''Note: After reloading/restarting the Core, motion dies. It has to be restarted manually by doing a "sudo /etc/init.d/motion restart". This issue has been reported http://svn.linuxmce.org/trac.cgi/ticket/904 & http://svn.linuxmce.org/trac.cgi/ticket/715 (not sure whether these two tickets are reporting the same issue or not).''<br />
<br />
''Note: Very occasionally I have found that the scenarios sometimes require a little bit of tinkering. If there is no image displayed when you click on the scenario, look in Wizard -> Scenarios -> Security scenarios, select the scenario in question, select "Advanced Wizard" in the "Edit scenario using wizard" section, and just check that the number in the "#2 PK_Device (int)" field corresponds with the camera's Device #; if it does not, change it. Reload & Regen.''<br />
<br />
=== Wireless Setup ===<br />
How to setup IP camera wirelessly<br />
http://foscam.us/forum/post15934.html#p15934<br />
<br />
=== Test and Tweak IP Camera Setup and Configuration ===<br />
Make sure your IP Camera is functioning at peak ability<br />
http://foscam.us/forum/post34164.html#p34164<br />
<br />
=== Links ===<br />
* http://www.foscam.com<br />
* [http://foscam.us/forum/free-generic-browser-interface-for-foscam-ip-mjpeg-cameras-t2522.html#p10970 Generic Browser Based Interface Example]</div>TheUberOverLordhttp://wiki.linuxmce.org/index.php?title=Foscam_FI8905W&diff=34535Foscam FI8905W2013-10-07T16:20:41Z<p>TheUberOverLord: </p>
<hr />
<div>[[Category: Hardware]]<br />
{{versioninfo|810Status=Works|810UpdatedDate=8th Jan 2011|810UpdatedBy=purps|versioninfo|1004Status=Works|1004UpdatedDate=27th May 2013|1004UpdatedBy=Daballiemo}}<br />
[[Category: Cameras]]<br />
[[category: IP Cameras]]<br />
<br />
{| align="right"<br />
| __TOC__<br />
|}<br />
<br />
<br />
<br />
=Features=<br />
<br />
* High image & video quality<br />
* High-sensitivity 1/4" CMOS sensor (300k pixels)<br />
* Auto IR-LED night vision up to 30m (90ft)<br />
* Motion detection alert via email or upload image to a specified FTP server<br />
* Support a wide range of browsers(IE, Firefox, Google)<br />
* Support remote viewing & record<br />
* Support image fullsceen and image snapshot<br />
* Multi-level users management and passwords definition<br />
* Embeded Web Server<br />
* WEP,WPA and WPA2 Encryption<br />
* Optimized MJPEG video compression for transmission<br />
* Support wireless network (WiFi/802.11/b/g)mobile<br />
* Supporting Dynamic IP (DDNS)and UPnP LAN and Internet(ADSL,Cable Modem)<br />
* Multi-Protocol support and Transportation (such as TCP/IP, SMTP and HTTP)<br />
* Support Mobile Phone View such as Iphone & Smart phone (It should support midp2.0 java mobile or pda mobile)<br />
* Simple to setup, Friendly GUI, DIY installation<br />
* Aluminum Alloy Design, Shell Vandal-Proof,IP65 Waterproof and weatherproof for Any Harsh Environment<br />
<br />
''Note: This is the 60 IR LED version; the FI8904W has fewer LEDs (24 to be exact) which means that it is not as good when it comes to night vision. The FI8904W is easily identifiable (apart from the number of LEDs!) by the shape of its cowling. The cowling of the FI8905W is 'U'-shaped in cross-section, whereas the cowling of the FI8904W is what I would call 'Micky Mouse'-shaped. One more thing; be careful of the cheap clones on eBay, you don't want to end up with one of those.''<br />
<br />
=Quick review=<br />
This camera does have quite a mean zoom lens on it (12 mm). Also the colours are a bit odd; greens and browns appear purple for example. That said, it is by far the cheapest outdoor IP camera around, and I think that it is very good for the price.<br />
<br />
Do also bear in mind [http://forum.linuxmce.org/index.php?topic=10134.0 this issue].<br />
<br />
=Installation (Preferred Method)=<br />
# In LMCE web admin (type "192.168.80.1" into a browser), go to Wizard -> Devices -> Surveillance Cameras. Click the "Add Device" button at the bottom of the page. This will open a new window.<br />
# In the window that just opened, pick "Advanced IP Camera" from the dropdown menu in the "Device Template" section and press the "Pick device template" button. Or, type "2208" into the box marked "Do you know the ID of the device template?" and press "GO".<br />
# Change the description from "Advanced IP Camera" to something that makes sense to you and add a room location from the dropdown box.<br />
# Change the "IP Address" to the address of your camera. e.g. 192.168.80.XXX; DO NOT INCLUDE "http://"<br />
# Change the "Path" field to "/snapshot.cgi"<br />
# Change the "TCP Port", "AuthUser" and "AuthPassword" boxes to the details specific to your camera. ''Press "Save".''<br />
# Do a Reload & Regen, and that should be it.<br />
# Rinse and repeat for any additional cameras.<br />
<br />
=Installation using Motion (Depreciated)=<br />
<br />
''Note: This section describes how to install this camera as a [[Motion]] device; I have not tried installing it as a standalone viewer, but I see no reason why it wouldn't work.''<br />
<br />
<span style="color:red">'''''Note: These instructions are for when the camera is plugged into a router on the external network, as opposed to a switch on the internal network. Not ideal, but this was necessary due to [http://forum.linuxmce.org/index.php?topic=10134.0 this aforementioned problem].'''''</span><br />
<br />
# Install motion wrapper (if it is not installed already). In web admin (type "192.168.80.1" in a browser of your choice), click "Show devices tree" (very bottom of left-hand pane), click on "CORE" and then "Create Child Device". Then press the "Pick device template" button, which will open a new window. Under "Device Template", select "Motion Wrapper" and press the "Pick device template" button.<br />
# Plug in your camera (remember I plug my Foscams into the external router). In your router admin page (accessed via 192.168.1.1 in my case) find out what IP was assigned. Type this IP into your browser and have a look through the options. Set the username and password. I also set a static IP just in case it tries to change itself. I also specified the camera's IP on my router so that no other device could take it (belt and braces).<br />
# In LMCE web admin (type "192.168.80.1" into a browser), go to Wizard -> Devices -> Surveillance Cameras. Click the "Add Device" button at the bottom of the page. This will open a new window.<br />
# In the window that just opened, pick "Generic Motion IP Camera" from the dropdown menu in the "Device Template" section. Press the "Pick device template" button.<br />
# Find the new camera in Wizard -> Devices -> Surveillance Cameras. Change the description to something more obvious if you so wish and select a room.<br />
# Change the "Path" field to "http://192.168.1.XXX/videostream.cgi?user=XXXXX&pwd=XXXXXX", not forgetting to replace the Xs with the IP, username and password. Add "80" to the "TCP Port" field. ''Press "Save".''<br />
# Press the "Advanced" button. Check the IP and MAC address in the "Device Info" section. If it's not the same as the MAC and IP you saw in the Panasonic utility, change it. ''Click "Save".''<br />
# Do a Reload & Regen, and that should be it. This camera can now be used as a motion sensor and/or for recording movement (recordings are stored in "/home/cameras/XX" where XX is the device number of the camera, and last for 5 days I believe). A scenario will hopefully be automatically generated.<br />
# Rinse and repeat for any additional cameras.<br />
<br />
=Troubleshooting=<br />
===Advanced IP camera===<br />
You can verify the address being fed to LMCE by watching the log files specific to your device.<br />
#Edit "/etc/pluto.conf" and comment out "LogLevels=1,5,7,8" (from a terminal, type "sudo nano /etc/pluto.conf", enter your password then arrow down to the applicable line and type "#" before the LogLevels=1,5,7,8 text. "CTRL+O", press "Enter" then "CTRL+X" will save the file and exit nano.<br />
#From an orbiter, do a quick reload router.<br />
#From the admin pages ("192.168.80.1") click "Advanced"->"Configuration"->"Devices" and under "Core" on the left hand side of screen you will see what you named your device (or "Advanced IP Camera" if you did not fill in a description). Click on your device and select "Follow Log".<br />
#The box that opens will be a running log of the commands applicable to that child. From the other open window (the admin pages), click "Security" -> "View Cameras", check the radio button associated with your camera and press "Preview checked cameras". Flipping back to the log window, watch the logs for a line with "CMD_Get_Video_Frame: sUrl:". The sUrl part is where LMCE is trying to find the image from your camera. If it is incorrect, you will need to adjust the camera template to match your particulars.<br />
#VERY IMPORTANT: commenting out LogLevels=1,5,7,8 causes a lot more logs to be stored than usual. Once you're comfortable with the information from the logs, make sure you edit /etc/pluto.conf and remove the "#" from before the LogLevels=1,5,7,8<br />
#From an orbiter, do a quick reload router.<br />
<br />
<br />
===Motion (depreciated)===<br />
''Note: After reloading/restarting the Core, motion dies. It has to be restarted manually by doing a "sudo /etc/init.d/motion restart". This issue has been reported http://svn.linuxmce.org/trac.cgi/ticket/904 & http://svn.linuxmce.org/trac.cgi/ticket/715 (not sure whether these two tickets are reporting the same issue or not).''<br />
<br />
''Note: Very occasionally I have found that the scenarios sometimes require a little bit of tinkering. If there is no image displayed when you click on the scenario, look in Wizard -> Scenarios -> Security scenarios, select the scenario in question, select "Advanced Wizard" in the "Edit scenario using wizard" section, and just check that the number in the "#2 PK_Device (int)" field corresponds with the camera's Device #; if it does not, change it. Reload & Regen.''<br />
<br />
=== Wireless Setup ===<br />
How to setup IP camera wirelessly<br />
http://foscam.us/forum/post15934.html#p15934<br />
<br />
=== Test and Tweak IP Camera Setup and Configuration ===<br />
Make sure your IP Camera is functioning at peak ability<br />
http://foscam.us/forum/post34164.html#p34164<br />
<br />
=== Links ===<br />
* http://www.foscam.com<br />
* [http://foscam.us/forum/free-generic-browser-interface-for-foscam-ip-mjpeg-cameras-t2522.html#p10970 Generic Browser Based Interface Example]</div>TheUberOverLordhttp://wiki.linuxmce.org/index.php?title=Foscam_FI8910W&diff=34534Foscam FI8910W2013-10-07T16:17:08Z<p>TheUberOverLord: Created page with "Category: Hardware {{Versioninfo}} Category: Cameras Category: IP Cameras 300px == Thanks == Thank you to the author of the [[Fosc..."</p>
<hr />
<div>[[Category: Hardware]]<br />
{{Versioninfo}}<br />
[[Category: Cameras]]<br />
[[Category: IP Cameras]]<br />
<br />
<br />
[[Image:F8918W.jpg|right|thumb|300px]]<br />
<br />
== Thanks ==<br />
Thank you to the author of the [[Foscam FI8918W]] page as this is mostly a copy.<br />
<br><br />
<br />
<br />
== Info ==<br />
Cheap IR wireless IP/Network Pan/tilt Camera. There is no zoom with this camera.<br />
<br><br />
Very similar camera to the [[Foscam FI8918W]] with some modifications to the camera (IR lights) by using IR-CUT, but the firmware (I believe) is close to the predecessor, the [[Foscam FI8918W]]<br />
<br />
<br />
== What's New ==<br />
'''Compared to the older [[Foscam FI8918W]]:'''<br />
* IR lights can be turned off with the software (Not in LinuxMCE)<br />
* Has IR-CUT filter for better dark and night resolution<br />
* Audio quality is apparently improved and an added microphone jack is provided. (Not used in LinuxMCE)<br />
* Extra IR light (Eleven now)<br />
* Power and network light at the back of the camera.<br />
* Haven't noticed any drop out issues on my system<br />
<br />
== Status ==<br />
Working as a plug and play IP camera with pan/tilt commands.<br />
<br><br />
Should work as a 'Generic Motion IP camera' under motion wrapper and used as a sensor as well as recording movement etc. - Check the [[Foscam FI8908W]] page for more.<br />
<br />
== Plug and Play Template Settings ==<br />
This camera is fully plug and play as a stand-alone pan/tilt camera by duplicating the panasonic template and inserting the following scripts.<br />
<br><br />
NOTE: The left and right scripts are the other way around from the what is noted in the [[Foscam FI8918W]]<br />
<br />
#84 Get video frame<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
<br />
fix_path=device_.devdata_[2]+auth_s;<br />
fix_path='/'+fix_path if(fix_path[0]!='/'[0]);<br />
<br />
s = "GET "+fix_path+" HTTP/1.0\r\n"<br />
s+= "Accept: */*\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(16384, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
if (recv=~ /^HTTP[^\r\n]+200\sOK.+?\r\n\r\n(.+)$/m)<br />
fileName="/tmp/ip_camera_img"+device_.devid_.to_s<br />
imageFile=File.new(fileName+".jpg",'w')<br />
imageFile.print $1<br />
imageFile.close()<br />
system("/usr/bin/convert "+fileName+".jpg "+fileName+".png");<br />
size=File.stat(fileName+".png").size <br />
imageFile=File.new(fileName+".png",'r')<br />
img = imageFile.read(size);<br />
imageFile.close()<br />
data_set(img)<br />
format_set('png')<br />
end<br />
</pre><br />
<br />
#201 Move Down<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
s = "GET /decoder_control.cgi?command=2&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
<br />
#202 move left<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=6&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
<br />
#203 Move Right<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=4&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
<br />
#200 Move Up<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=0&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
<br />
It can be made 'plug and play' by adding the mac range of both the wireless and wired adapters into the new template:<br />
* Wireless range 963357310976 to 963357376511 (DHCP).<br />
* Wired range ??????? - Will try and find this out???????<br />
<br />
Pros:<br />
* Plug and play (Just give it a sensible name)<br />
* Pan and Tilt work from on screen arrows<br />
Cons:<br />
* No motion capture<br />
<br />
== Features ==<br />
* Browser based<br />
* 10/100mbit LAN<br />
* WPA2 wireless security<br />
<br />
== Dropouts ==<br />
There have been reported drop outs with the Foscam F8910W but I have not noticed this with the Foscam FI8918W but I do use a static IP address.<br />
<br />
== Wireless Setup ==<br />
How to setup IP camera wirelessly<br />
http://foscam.us/forum/post15934.html#p15934<br />
<br />
== Test and Tweak IP Camera Setup and Configuration ==<br />
Make sure your IP Camera is functioning at peak ability<br />
http://foscam.us/forum/post34164.html#p34164<br />
<br />
== Links ==<br />
* http://www.foscam.com<br />
* [http://foscam.us/forum/free-generic-browser-interface-for-foscam-ip-mjpeg-cameras-t2522.html#p10970 Generic Browser Based Interface Example]</div>TheUberOverLordhttp://wiki.linuxmce.org/index.php?title=Foscam_FI8918W&diff=34533Foscam FI8918W2013-10-07T16:08:09Z<p>TheUberOverLord: </p>
<hr />
<div>[[Category: Hardware]]<br />
{{Versioninfo}}<br />
[[Category: Cameras]]<br />
[[Category: IP Cameras]]<br />
<br />
<br />
[[Image:F8918W.jpg|right|thumb|300px]]<br />
<br />
== Thanks ==<br />
Thank you to the author of the [[Foscam FI8908W]] page as this is mostly a copy.<br />
<br><br />
<br />
<br />
== Info ==<br />
Cheap IR wireless IP/Network Pan/tilt Camera. There is no zoom with this camera.<br />
<br><br />
Very similar camera to the [[Foscam FI8908W]] with some modifications to the camera (IR lights) but the firmware (I believe) is the same as the predecessor, the [[Foscam FI8908W]]<br />
<br />
<br />
== What's New ==<br />
'''Compared to the older [[Foscam FI8908W]]:'''<br />
* IR lights can be turned off with the software (Not in LinuxMCE)<br />
* Audio quality is apparently improved and an added microphone jack is provided. (Not used in LinuxMCE)<br />
* Extra IR light (Eleven now)<br />
* Power and network light at the back of the camera.<br />
* Haven't noticed any drop out isssues on my system<br />
<br />
== Status ==<br />
Working as a plug and play IP camera with pan/tilt commands.<br />
<br><br />
Should work as a 'Generic Motion IP camera' under motion wrapper and used as a sensor as well as recording movement etc. - Check the [[Foscam FI8908W]] page for more.<br />
<br />
== Plug and Play Template Settings ==<br />
This camera is fully plug and play as a stand-alone pan/tilt camera by duplicating the panasonic template and inserting the following scripts.<br />
<br><br />
NOTE: The left and right scripts are the other way around from the what is noted in the [[Foscam FI8908W]]<br />
<br />
#84 Get video frame<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
<br />
fix_path=device_.devdata_[2]+auth_s;<br />
fix_path='/'+fix_path if(fix_path[0]!='/'[0]);<br />
<br />
s = "GET "+fix_path+" HTTP/1.0\r\n"<br />
s+= "Accept: */*\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(16384, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
if (recv=~ /^HTTP[^\r\n]+200\sOK.+?\r\n\r\n(.+)$/m)<br />
fileName="/tmp/ip_camera_img"+device_.devid_.to_s<br />
imageFile=File.new(fileName+".jpg",'w')<br />
imageFile.print $1<br />
imageFile.close()<br />
system("/usr/bin/convert "+fileName+".jpg "+fileName+".png");<br />
size=File.stat(fileName+".png").size <br />
imageFile=File.new(fileName+".png",'r')<br />
img = imageFile.read(size);<br />
imageFile.close()<br />
data_set(img)<br />
format_set('png')<br />
end<br />
</pre><br />
<br />
#201 Move Down<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
s = "GET /decoder_control.cgi?command=2&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
<br />
#202 move left<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=6&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
<br />
#203 Move Right<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=4&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
<br />
#200 Move Up<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=0&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
<br />
It can be made 'plug and play' by adding the mac range of both the wireless and wired adapters into the new template:<br />
* Wireless range 963357310976 to 963357376511 (DHCP).<br />
* Wired range ??????? - Will try and find this out???????<br />
<br />
Pros:<br />
* Plug and play (Just give it a sensible name)<br />
* Pan and Tilt work from on screen arrows<br />
Cons:<br />
* No motion capture<br />
<br />
== Features ==<br />
* Browser based<br />
* 10/100mbit LAN<br />
* WPA2 wireless security<br />
<br />
== Dropouts ==<br />
There have been reported drop outs with the Foscam F8908W but I have not noticed this with the Foscam F8918W but I do use a static IP address.<br />
<br />
== Wireless Setup ==<br />
How to setup IP camera wirelessly<br />
http://foscam.us/forum/post15934.html#p15934<br />
<br />
== Test and Tweak IP Camera Setup and Configuration ==<br />
Make sure your IP Camera is functioning at peak ability<br />
http://foscam.us/forum/post34164.html#p34164<br />
<br />
== Links ==<br />
* http://www.foscam.com<br />
* [http://foscam.us/forum/free-generic-browser-interface-for-foscam-ip-mjpeg-cameras-t2522.html#p10970 Generic Browser Based Interface Example]</div>TheUberOverLordhttp://wiki.linuxmce.org/index.php?title=Foscam_FI8908W&diff=34532Foscam FI8908W2013-10-07T16:04:15Z<p>TheUberOverLord: </p>
<hr />
<div>[[Category: Hardware]]<br />
{{Versioninfo}}<br />
[[Category: Cameras]]<br />
[[Category: IP Cameras]]<br />
<br />
[[Image:Foscam-FI8908W.jpg|right|thumb|300px]]<br />
<br />
== Info ==<br />
Cheap IR wireless IP/Network Pan/tilt Camera<br />
<br />
== Status ==<br />
Provisionally working either as a plug and play IP camera with pan/tilt commands or as a 'Generic Motion IP camera' under motion wrapper and used as a sensor as well as recording movement etc.<br />
<br />
== Generic Motion IP Camera Hack ==<br />
If using under motion the pan/tilt commands do not work. It can optionally be made 'plug and play' under motion by manually adding the mac range of both the wireless and wired adapters into the 'Generic Motion IP Camera' template:<br />
* Wireless range 79373008896 to 79389786111 (DHCP).<br />
* Wired range 414170742784 to 414171791359 (DHCP).<br />
<br />
After the device has been detected and assigned a room just give it a sensible name and add the following to the path parameter in web admin:<br />
* hxxp://<CAMERA_IP_ADDRESS>/videostream.cgi?user=XXXXX&pwd=XXXXX<br />
<br />
Replace the ip address and the XXXXX with your settings<br />
<br />
Pros:<br />
* Plug and Play (Just give it a sensible name)<br />
* Installed under motion for security monitoring/recording<br />
Cons:<br />
* Path must be manually set as described above<br />
* No Pan/Tilt other than via its own web interface<br />
<br />
== Plug and Play Template Settings ==<br />
This camera is fully plug and play as a stand-alone pan/tilt camera by duplicating the panasonic template and inserting the following scripts.<br />
<br />
#84 Get video frame<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
<br />
fix_path=device_.devdata_[2]+auth_s;<br />
fix_path='/'+fix_path if(fix_path[0]!='/'[0]);<br />
<br />
s = "GET "+fix_path+" HTTP/1.0\r\n"<br />
s+= "Accept: */*\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(16384, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
if (recv=~ /^HTTP[^\r\n]+200\sOK.+?\r\n\r\n(.+)$/m)<br />
fileName="/tmp/ip_camera_img"+device_.devid_.to_s<br />
imageFile=File.new(fileName+".jpg",'w')<br />
imageFile.print $1<br />
imageFile.close()<br />
system("/usr/bin/convert "+fileName+".jpg "+fileName+".png");<br />
size=File.stat(fileName+".png").size <br />
imageFile=File.new(fileName+".png",'r')<br />
img = imageFile.read(size);<br />
imageFile.close()<br />
data_set(img)<br />
format_set('png')<br />
end<br />
</pre><br />
#201 Move Down<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
s = "GET /decoder_control.cgi?command=2&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
#202 move left<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=4&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
#203 Move Right<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=6&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
#200 Move Up<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=0&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
It can be made 'plug and play' by adding the mac range of both the wireless and wired adapters into the new template:<br />
* Wireless range 79373008896 to 79389786111 (DHCP).<br />
* Wired range 414170742784 to 414171791359 (DHCP).<br />
<br />
Pros:<br />
* Plug and play (Just give it a sensible name)<br />
* Pan and Tilt work from on screen arrows<br />
Cons:<br />
* No motion capture<br />
<br />
== Features ==<br />
* Browser based<br />
* 10/100mbit LAN<br />
== Dropouts ==<br />
There have been reports of dhcp dropouts. Suggested fix:<br />
http://blog.stead.id.au/2010/06/resolving-foscam-connection-dropouts.html<br />
== Wireless Setup ==<br />
How to setup IP camera wirelessly<br />
http://foscam.us/forum/post15934.html#p15934<br />
== Test and Tweak IP Camera Setup and Configuration ==<br />
Make sure your IP Camera is functioning at peak ability<br />
http://foscam.us/forum/post34164.html#p34164 <br />
<br />
== Links ==<br />
* [http://irishjesus.wordpress.com/2010/03/30/hacking-the-foscam-fi8908w/ Hacking the Foscam FI8908W]<br />
* [http://www.gadgetvictims.com/2009/07/foscam-ip-camera-part-two.html Foscam IP Camera (Part Two)]<br />
* [http://foscam.us/forum/free-generic-browser-interface-for-foscam-ip-mjpeg-cameras-t2522.html#p10970 Generic Browser Based Interface Example]<br />
* [http://forum.linuxmce.org/index.php?topic=9969.0 Forum discussion]</div>TheUberOverLordhttp://wiki.linuxmce.org/index.php?title=Foscam_FI8908W&diff=34531Foscam FI8908W2013-10-07T15:55:21Z<p>TheUberOverLord: </p>
<hr />
<div>[[Category: Hardware]]<br />
{{Versioninfo}}<br />
[[Category: Cameras]]<br />
[[Category: IP Cameras]]<br />
<br />
[[Image:Foscam-FI8908W.jpg|right|thumb|300px]]<br />
<br />
== Info ==<br />
Cheap IR wireless IP/Network Pan/tilt Camera<br />
<br />
== Status ==<br />
Provisionally working either as a plug and play IP camera with pan/tilt commands or as a 'Generic Motion IP camera' under motion wrapper and used as a sensor as well as recording movement etc.<br />
<br />
== Generic Motion IP Camera Hack ==<br />
If using under motion the pan/tilt commands do not work. It can optionally be made 'plug and play' under motion by manually adding the mac range of both the wireless and wired adapters into the 'Generic Motion IP Camera' template:<br />
* Wireless range 79373008896 to 79389786111 (DHCP).<br />
* Wired range 414170742784 to 414171791359 (DHCP).<br />
<br />
After the device has been detected and assigned a room just give it a sensible name and add the following to the path parameter in web admin:<br />
* hxxp://<CAMERA_IP_ADDRESS>/videostream.cgi?user=XXXXX&pwd=XXXXX<br />
<br />
Replace the ip address and the XXXXX with your settings<br />
<br />
Pros:<br />
* Plug and Play (Just give it a sensible name)<br />
* Installed under motion for security monitoring/recording<br />
Cons:<br />
* Path must be manually set as described above<br />
* No Pan/Tilt other than via its own web interface<br />
<br />
== Plug and Play Template Settings ==<br />
This camera is fully plug and play as a stand-alone pan/tilt camera by duplicating the panasonic template and inserting the following scripts.<br />
<br />
#84 Get video frame<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
<br />
fix_path=device_.devdata_[2]+auth_s;<br />
fix_path='/'+fix_path if(fix_path[0]!='/'[0]);<br />
<br />
s = "GET "+fix_path+" HTTP/1.0\r\n"<br />
s+= "Accept: */*\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(16384, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
if (recv=~ /^HTTP[^\r\n]+200\sOK.+?\r\n\r\n(.+)$/m)<br />
fileName="/tmp/ip_camera_img"+device_.devid_.to_s<br />
imageFile=File.new(fileName+".jpg",'w')<br />
imageFile.print $1<br />
imageFile.close()<br />
system("/usr/bin/convert "+fileName+".jpg "+fileName+".png");<br />
size=File.stat(fileName+".png").size <br />
imageFile=File.new(fileName+".png",'r')<br />
img = imageFile.read(size);<br />
imageFile.close()<br />
data_set(img)<br />
format_set('png')<br />
end<br />
</pre><br />
#201 Move Down<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
s = "GET /decoder_control.cgi?command=2&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
#202 move left<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=4&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
#203 Move Right<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=6&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
#200 Move Up<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=0&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
It can be made 'plug and play' by adding the mac range of both the wireless and wired adapters into the new template:<br />
* Wireless range 79373008896 to 79389786111 (DHCP).<br />
* Wired range 414170742784 to 414171791359 (DHCP).<br />
<br />
Pros:<br />
* Plug and play (Just give it a sensible name)<br />
* Pan and Tilt work from on screen arrows<br />
Cons:<br />
* No motion capture<br />
<br />
== Features ==<br />
* Browser based<br />
* 10/100mbit LAN<br />
== Dropouts ==<br />
There have been reports of dhcp dropouts. Suggested fix:<br />
http://blog.stead.id.au/2010/06/resolving-foscam-connection-dropouts.html<br />
<br />
== Links ==<br />
* [http://irishjesus.wordpress.com/2010/03/30/hacking-the-foscam-fi8908w/ Hacking the Foscam FI8908W]<br />
* [http://www.gadgetvictims.com/2009/07/foscam-ip-camera-part-two.html Foscam IP Camera (Part Two)]<br />
* [http://foscam.us/forum/free-generic-browser-interface-for-foscam-ip-mjpeg-cameras-t2522.html#p10970 Generic Browser Based Interface Example]<br />
* [http://forum.linuxmce.org/index.php?topic=9969.0 Forum discussion]</div>TheUberOverLordhttp://wiki.linuxmce.org/index.php?title=Foscam_FI8908W&diff=33657Foscam FI8908W2012-12-27T18:19:33Z<p>TheUberOverLord: /* Links */</p>
<hr />
<div>[[Category: Hardware]]<br />
{{Versioninfo}}<br />
[[Category: Cameras]]<br />
[[Category: IP Cameras]]<br />
<br />
[[Image:Foscam-FI8908W.jpg|right|thumb|300px]]<br />
<br />
== Info ==<br />
Cheap IR wireless IP/Network Pan/tilt Camera<br />
<br />
== Status ==<br />
Provisionally working either as a plug and play IP camera with pan/tilt commands or as a 'Generic Motion IP camera' under motion wrapper and used as a sensor as well as recording movement etc.<br />
<br />
== Generic Motion IP Camera Hack ==<br />
If using under motion the pan/tilt commands do not work. It can optionally be made 'plug and play' under motion by manually adding the mac range of both the wireless and wired adapters into the 'Generic Motion IP Camera' template:<br />
* Wireless range 79373008896 to 79389786111 (DHCP).<br />
* Wired range 414170742784 to 414171791359 (DHCP).<br />
<br />
After the device has been detected and assigned a room just give it a sensible name and add the following to the path parameter in web admin:<br />
* hxxp://<CAMERA_IP_ADDRESS>/videostream.cgi?user=XXXXX&pwd=XXXXX<br />
<br />
Replace the ip address and the XXXXX with your settings<br />
<br />
Pros:<br />
* Plug and Play (Just give it a sensible name)<br />
* Installed under motion for security monitoring/recording<br />
Cons:<br />
* Path must be manually set as described above<br />
* No Pan/Tilt other than via its own web interface<br />
<br />
== Plug and Play Template Settings ==<br />
This camera is fully plug and play as a stand-alone pan/tilt camera by duplicating the panasonic template and inserting the following scripts.<br />
<br />
#84 Get video frame<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
<br />
fix_path=device_.devdata_[2]+auth_s;<br />
fix_path='/'+fix_path if(fix_path[0]!='/'[0]);<br />
<br />
s = "GET "+fix_path+" HTTP/1.0\r\n"<br />
s+= "Accept: */*\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(16384, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
if (recv=~ /^HTTP[^\r\n]+200\sOK.+?\r\n\r\n(.+)$/m)<br />
fileName="/tmp/ip_camera_img"+device_.devid_.to_s<br />
imageFile=File.new(fileName+".jpg",'w')<br />
imageFile.print $1<br />
imageFile.close()<br />
system("/usr/bin/convert "+fileName+".jpg "+fileName+".png");<br />
size=File.stat(fileName+".png").size <br />
imageFile=File.new(fileName+".png",'r')<br />
img = imageFile.read(size);<br />
imageFile.close()<br />
data_set(img)<br />
format_set('png')<br />
end<br />
</pre><br />
#201 Move Down<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
s = "GET /decoder_control.cgi?command=2&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
#202 move left<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=4&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
#203 Move Right<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=6&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
#200 Move Up<br />
<pre><br />
conn_.Reconnect()<br />
auth_s="user="+device_.devdata_[114]+"&pwd="+device_.devdata_[115];<br />
#auth_a=Array.new;<br />
#auth_s.each{|c| auth_a.push(c)}<br />
s = "GET /decoder_control.cgi?command=0&onestep=1&"+auth_s<br />
s+= " HTTP/1.0\r\n Accept: */*\r\n"<br />
#s+= "Authorization: Basic "+auth_a.pack("m").chop+"\r\n"<br />
s+= "\r\n"<br />
<br />
conn_.Send(s)<br />
recv=""<br />
while(true)<br />
buff=conn_.Recv(256, 5000)<br />
if(buff.length() == 0)<br />
break<br />
end<br />
recv = recv + buff<br />
end<br />
</pre><br />
It can be made 'plug and play' by adding the mac range of both the wireless and wired adapters into the new template:<br />
* Wireless range 79373008896 to 79389786111 (DHCP).<br />
* Wired range 414170742784 to 414171791359 (DHCP).<br />
<br />
Pros:<br />
* Plug and play (Just give it a sensible name)<br />
* Pan and Tilt work from on screen arrows<br />
Cons:<br />
* No motion capture<br />
<br />
== Features ==<br />
* Browser based<br />
* 10/100mbit LAN<br />
== Dropouts ==<br />
There have been reports of dhcp dropouts. Suggested fix:<br />
http://blog.stead.id.au/2010/06/resolving-foscam-connection-dropouts.html<br />
<br />
== Links ==<br />
* [http://irishjesus.wordpress.com/2010/03/30/hacking-the-foscam-fi8908w/ Hacking the Foscam FI8908W]<br />
* [http://www.gadgetvictims.com/2009/07/foscam-ip-camera-part-two.html Foscam IP Camera (Part Two)]<br />
* [http://foscam.us/forum/free-generic-browser-interface-for-foscam-ip-mjpeg-cameras-t2522.html#p10970 Generic Browser Based Example]<br />
* [http://forum.linuxmce.org/index.php?topic=9969.0 Forum discussion]</div>TheUberOverLord