<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Dipl.-Ing. (FH) Ingo Baab</title>
	<atom:link href="http://baab.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://baab.de</link>
	<description>Linux, IT-Consulting, Webhosting, WordPress, OpenSource, Embedded Systems, ...</description>
	<lastBuildDate>Sat, 19 May 2012 15:40:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Compiling the Linux Kernel for QNAP (ARMv5-CPU)</title>
		<link>http://baab.de/2011/05/customizing-qnap-firmware/</link>
		<comments>http://baab.de/2011/05/customizing-qnap-firmware/#comments</comments>
		<pubDate>Mon, 16 May 2011 19:14:31 +0000</pubDate>
		<dc:creator>ingo</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://baab.de/?p=294</guid>
		<description><![CDATA[Connect cheap webcams to your NAS from QNAP is not possible with the shipped firmware, &#8211; under &#8220;survillance&#8221; you can manage to connect IP-based cameras, but to get cheap usb-webcams working with your QNAP NAS you need to build an own linux kernel module. Customizing QNAP-Firmware is easy. Follow these steps and you are done. [...]]]></description>
			<content:encoded><![CDATA[<p>Connect cheap webcams to your NAS from QNAP is not possible with the shipped firmware, &#8211; under &#8220;survillance&#8221; you can manage to connect IP-based cameras, but to get cheap usb-webcams working with your QNAP NAS you need to build an own linux kernel module.<br />
Customizing QNAP-Firmware is easy. Follow these steps and you are done.<br />
(I own the TS-110, but also at least these models with ARM (x10/x12/x19 series)<br />
[QNAP TS-110/ 112/ 119/ 210/ 212/ 219/ 219P/ 410/ 412/ 419P/ 419U/ x19P+]<br />
this instructions should work)</p>
<p>(ipkg itself should already be installed, otherwise you can install it as a QPKG via the admin web front end)<br />
Login by SSH as &#8220;admin&#8221; and start with the installation of some required tools:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ipkg install nano gcc make automake ncurses ncursesw wget w3cam motion</div></div>
<p>check if there is a newer version for your QNAP Firmware at the <a href="http://www.qnap.com/GPL.asp">QNAP-Website</a>. (Older versions were located at another location at QNAP http://resources.qnap.com/Storage/tsd/QNAP_GPL_3.3.3-20100928.tar.gz, this is some confusing&#8230;).</p>
<p>change your working directory to:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><a href="http://www.ss64.com/nt/cd.html"><span style="color: #b1b100; font-weight: bold;">cd</span></a> /share/HDA_DATA</div></div>
<p>In my case I found GPLed Version 3.4.x and downloaded it with:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">wget ftp://gpl:download<span style="color: #33cc33;">@</span>ftp.qnap.com/gpl/QNAP_GPL_3.4.x_20110218.tar.gz</div></div>
<p>This download is huge:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Length: 481095887 <span style="color: #33cc33;">(</span>459M<span style="color: #33cc33;">)</span><br />
63<span style="color: #33cc33;">%</span> [==========================<span style="color: #33cc33;">&gt;</span> ] 305,900,640 125K/s eta 34m 12s</div></div>
<p>Then, get the Linux-Kernel:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">wget ftp://ftp.jp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.33.2.tar.gz</div></div>
<p>Untar both files:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">tar xzvf QNAP_GPL_3.4.x_20110218.tar.gz<br />
tar xzvf linux-2.6.33.2.tar.gz</div></div>
<p>Browse to the folder that corrospondents to your QNAP:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><a href="http://www.ss64.com/nt/cd.html"><span style="color: #b1b100; font-weight: bold;">cd</span></a> GPL_TS/kernel_cfg<br />
ls -la</div></div>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">SS-439/ TS-1079/ TS-119/ TS-210/ TS-239/ TS-410P/ TS-419P/<br />
TS-439/ TS-459/ TS-559/ TS-659/ TS-809U/ TS-879/ SS-839/<br />
TS-110/ TS-1279/ TS-219/ TS-259/ TS-410U/ TS-419U/ TS-439U/<br />
TS-509/ TS-639/ TS-809/ TS-859/</div></div>
<p>I own a TS-110, so lets change to the TS-110 directory:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><a href="http://www.ss64.com/nt/cd.html"><span style="color: #b1b100; font-weight: bold;">cd</span></a> TS-110</div></div>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">[/share/HDA_DATA/cam/GPL_TS/kernel_cfg/TS-110] # ls -la<br />
drwxr-xr-x 2 admin administ 4096 Feb 18 14:30 ./<br />
drwxr-xr-x 27 admin administ 4096 Feb 18 14:30 ../<br />
-rw-r--r-- 1 admin administ 27647 Feb 18 14:30 linux-2.6.22.8.cfg<br />
-rw-r--r-- 1 admin administ 38327 Feb 18 14:30 linux-2.6.30.6-arm.cfg<br />
-rwxr-xr-x 1 admin administ 43437 Feb 18 14:30 linux-2.6.33.2-arm.cfg*</div></div>
<p>What kernel are we using?</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">uname -r<br />
2.6.33.2</div></div>
<p>Copy the kernel config file that corrosponds to your kernel version (type uname -r to find out which one you have) to the kernel source files</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cp ./linux-2.6.33.2-arm.cfg ../../../linux-2.6.33.2/.config<br />
<a href="http://www.ss64.com/nt/cd.html"><span style="color: #b1b100; font-weight: bold;">cd</span></a> ../../../linux-2.6.33.2/</div></div>
<p>Edit the kernel config file &#8220;.config&#8221; with an editor:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">vim .config</div></div>
<p>Search the following line:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># CONFIG_MEDIA_SUPPORT is <a href="http://www.ss64.com/nt/not.html"><span style="color: #000000; font-weight: bold;">not</span></a> <a href="http://www.ss64.com/nt/set.html"><span style="color: #b1b100; font-weight: bold;">set</span></a></div></div>
<p>and replace it by:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">CONFIG_MEDIA_SUPPORT=m</div></div>
<p>to enable media support as module.</p>
<p>Then copy and paste the following lines behind the changed MEDIA_SUPPORT lilne:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">#<br />
# Multimedia core support<br />
#<br />
CONFIG_VIDEO_DEV=m<br />
CONFIG_VIDEO_V4L2_COMMON=m<br />
CONFIG_VIDEO_ALLOW_V4L1=y<br />
CONFIG_VIDEO_V4L1_COMPAT=y<br />
CONFIG_DVB_CORE=m<br />
CONFIG_VIDEO_MEDIA=m<br />
<br />
#<br />
# Multimedia drivers<br />
#<br />
CONFIG_IR_CORE=m<br />
CONFIG_VIDEO_IR=m<br />
# CONFIG_MEDIA_ATTACH is <a href="http://www.ss64.com/nt/not.html"><span style="color: #000000; font-weight: bold;">not</span></a> <a href="http://www.ss64.com/nt/set.html"><span style="color: #b1b100; font-weight: bold;">set</span></a><br />
CONFIG_VIDEO_V4L2=m<br />
CONFIG_VIDEO_V4L1=m<br />
CONFIG_VIDEOBUF_GEN=m<br />
CONFIG_VIDEOBUF_VMALLOC=m<br />
CONFIG_VIDEO_CAPTURE_DRIVERS=y<br />
# CONFIG_VIDEO_ADV_DEBUG is <a href="http://www.ss64.com/nt/not.html"><span style="color: #000000; font-weight: bold;">not</span></a> <a href="http://www.ss64.com/nt/set.html"><span style="color: #b1b100; font-weight: bold;">set</span></a><br />
# CONFIG_VIDEO_FIXED_MINOR_RANGES is <a href="http://www.ss64.com/nt/not.html"><span style="color: #000000; font-weight: bold;">not</span></a> <a href="http://www.ss64.com/nt/set.html"><span style="color: #b1b100; font-weight: bold;">set</span></a><br />
CONFIG_VIDEO_HELPER_CHIPS_AUTO=y<br />
CONFIG_VIDEO_VIVI=m<br />
CONFIG_VIDEO_CPIA=m<br />
CONFIG_VIDEO_CPIA_USB=m<br />
CONFIG_VIDEO_CPIA2=m<br />
# CONFIG_VIDEO_STRADIS is <a href="http://www.ss64.com/nt/not.html"><span style="color: #000000; font-weight: bold;">not</span></a> <a href="http://www.ss64.com/nt/set.html"><span style="color: #b1b100; font-weight: bold;">set</span></a><br />
CONFIG_V4L_USB_DRIVERS=y<br />
CONFIG_USB_VIDEO_CLASS=m<br />
CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y<br />
CONFIG_USB_GSPCA=m<br />
CONFIG_USB_M5602=m<br />
CONFIG_USB_STV06XX=m<br />
CONFIG_USB_GL860=m<br />
CONFIG_USB_GSPCA_CONEX=m<br />
CONFIG_USB_GSPCA_ETOMS=m<br />
CONFIG_USB_GSPCA_FINEPIX=m<br />
CONFIG_USB_GSPCA_JEILINJ=m<br />
CONFIG_USB_GSPCA_MARS=m<br />
CONFIG_USB_GSPCA_MR97310A=m<br />
CONFIG_USB_GSPCA_OV519=m<br />
CONFIG_USB_GSPCA_OV534=m<br />
CONFIG_USB_GSPCA_PAC207=m<br />
CONFIG_USB_GSPCA_PAC7302=m<br />
CONFIG_USB_GSPCA_PAC7311=m<br />
CONFIG_USB_GSPCA_SN9C20X=m<br />
CONFIG_USB_GSPCA_SN9C20X_EVDEV=y<br />
CONFIG_USB_GSPCA_SONIXB=m<br />
CONFIG_USB_GSPCA_SONIXJ=m<br />
CONFIG_USB_GSPCA_SPCA500=m<br />
CONFIG_USB_GSPCA_SPCA501=m<br />
CONFIG_USB_GSPCA_SPCA505=m<br />
CONFIG_USB_GSPCA_SPCA506=m<br />
CONFIG_USB_GSPCA_SPCA508=m<br />
CONFIG_USB_GSPCA_SPCA561=m<br />
CONFIG_USB_GSPCA_SQ905=m<br />
CONFIG_USB_GSPCA_SQ905C=m<br />
CONFIG_USB_GSPCA_STK014=m<br />
CONFIG_USB_GSPCA_STV0680=m<br />
CONFIG_USB_GSPCA_SUNPLUS=m<br />
CONFIG_USB_GSPCA_T613=m<br />
CONFIG_USB_GSPCA_TV8532=m<br />
CONFIG_USB_GSPCA_VC032X=m<br />
CONFIG_USB_GSPCA_ZC3XX=m<br />
CONFIG_VIDEO_HDPVR=m<br />
CONFIG_VIDEO_USBVIDEO=m<br />
# CONFIG_USB_VICAM is <a href="http://www.ss64.com/nt/not.html"><span style="color: #000000; font-weight: bold;">not</span></a> <a href="http://www.ss64.com/nt/set.html"><span style="color: #b1b100; font-weight: bold;">set</span></a><br />
CONFIG_USB_IBMCAM=m<br />
CONFIG_USB_KONICAWC=m<br />
CONFIG_USB_QUICKCAM_MESSENGER=m<br />
CONFIG_USB_ET61X251=m<br />
CONFIG_USB_OV511=m<br />
CONFIG_USB_SE401=m<br />
CONFIG_USB_SN9C102=m<br />
CONFIG_USB_STV680=m<br />
CONFIG_USB_ZC0301=m<br />
CONFIG_USB_PWC=m<br />
# CONFIG_USB_PWC_DEBUG is <a href="http://www.ss64.com/nt/not.html"><span style="color: #000000; font-weight: bold;">not</span></a> <a href="http://www.ss64.com/nt/set.html"><span style="color: #b1b100; font-weight: bold;">set</span></a><br />
CONFIG_USB_PWC_INPUT_EVDEV=y<br />
CONFIG_USB_ZR364XX=m<br />
CONFIG_USB_STKWEBCAM=m<br />
CONFIG_USB_S2255=m<br />
# CONFIG_RADIO_ADAPTERS is <a href="http://www.ss64.com/nt/not.html"><span style="color: #000000; font-weight: bold;">not</span></a> <a href="http://www.ss64.com/nt/set.html"><span style="color: #b1b100; font-weight: bold;">set</span></a><br />
CONFIG_DVB_MAX_ADAPTERS=8<br />
# CONFIG_DVB_DYNAMIC_MINORS is <a href="http://www.ss64.com/nt/not.html"><span style="color: #000000; font-weight: bold;">not</span></a> <a href="http://www.ss64.com/nt/set.html"><span style="color: #b1b100; font-weight: bold;">set</span></a><br />
CONFIG_DVB_CAPTURE_DRIVERS=y<br />
CONFIG_DVB_TTUSB_DEC=m<br />
CONFIG_SMS_SIANO_MDTV=m</div></div>
<p>Make some symlinks, so the setup program can do it&#8217;s business:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ln -s /opt/lib/libncurses.so /lib/libncurses.so<br />
ln -s /opt/lib/libncurses.so.5 /lib/libncurses.so.5<br />
ln -s /opt/lib/libncurses.so.5.7 /lib/libncurses.so.5.7<br />
ln -s /opt/lib/libncursesw.so /lib/libncursesw.so<br />
ln -s /opt/lib/libncursesw.so.5 /lib/libncursesw.so.5<br />
ln -s /opt/lib/libncursesw.so.7 /lib/libncursesw.so.7</div></div>
<p>Now, run the kernel configtool and answer all questions asked with the default (just [Enter] is fine):</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">make oldconfig</div></div>
<p>and build the modules:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">make modules</div></div>
<p>This takes a lot of time.<br />
Afterwards create a node for the video device:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">mknod /dev/video0 c 81 0<br />
ln -s /dev/video0 /dev/video<br />
chmod 666 /dev/video*</div></div>
<p>Let&#8217;s find out which driver we need for our cam:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">[/] # ./mnt/ext/usr/sbin/lsusb<br />
Bus 001 Device 003: ID 045e:076d Microsoft Corp. LifeCam HD-5000<br />
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB<br />
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub</div></div>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">/sbin/insmod drivers/media/video/v4l1-compat.ko<br />
/sbin/insmod drivers/media/video/videodev.ko<br />
/sbin/insmod drivers/media/video/v4l2-common.ko<br />
/sbin/insmod drivers/media/video/v4l2-int-device.ko<br />
/sbin/insmod drivers/media/video/videobuf-core.ko</div></div>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">/sbin/insmod drivers/media/video/uvc/uvcvideo.ko</div></div>
<p>check dmesg:</p>
<div class="codecolorer-container dos blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="dos codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">[/share/HDA_DATA/cam/linux-2.6.33.2] # dmesg<br />
...<br />
Linux video capture interface: v2.00<br />
uvcvideo: Found UVC 1.00 device MicrosoftÂ® LifeCam HD-5000 <span style="color: #33cc33;">(</span>045e:076d<span style="color: #33cc33;">)</span><br />
input: MicrosoftÂ® LifeCam HD-5000 as /class/input/input0<br />
usbcore: registered new interface driver uvcvideo<br />
USB Video Class driver <span style="color: #33cc33;">(</span>v0.1.0<span style="color: #33cc33;">)</span><br />
[/share/HDA_DATA/cam/linux-2.6.33.2] #</div></div>
<p>_________</p>
<p>[1] <a href="http://jantino.nl/blog/1/67/USB-Webcam-on-QNAP-s.html">http://jantino.nl/blog/1/67/USB-Webcam-on-QNAP-s.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://baab.de/2011/05/customizing-qnap-firmware/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Anschrift</title>
		<link>http://baab.de/2011/02/anschrift/</link>
		<comments>http://baab.de/2011/02/anschrift/#comments</comments>
		<pubDate>Fri, 18 Feb 2011 19:14:30 +0000</pubDate>
		<dc:creator>ingo</dc:creator>
				<category><![CDATA[Allgemein]]></category>

		<guid isPermaLink="false">http://baab.de/?p=192</guid>
		<description><![CDATA[Ingo Baab Amalienstraße 6 76275 Ettlingen Telefon 07243-3508862 Telefax 07243-3508863 Mobil 0176-78556714]]></description>
			<content:encoded><![CDATA[<p>Ingo Baab<br />
Amalienstraße 6<br />
76275 Ettlingen<br />
Telefon 07243-3508862<br />
Telefax 07243-3508863<br />
Mobil 0176-78556714</p>
]]></content:encoded>
			<wfw:commentRss>http://baab.de/2011/02/anschrift/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

