<?xml version='1.0' encoding='utf-8' ?>
<!--  If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/  -->
<rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/' xmlns:media='http://search.yahoo.com/mrss/' xmlns:atom10='http://www.w3.org/2005/Atom'>
<channel>
  <title>Hans&apos; hacking log</title>
  <link>http://hansdegoede.livejournal.com/</link>
  <description>Hans&apos; hacking log - LiveJournal.com</description>
  <lastBuildDate>Thu, 07 Jun 2012 14:42:44 GMT</lastBuildDate>
  <generator>LiveJournal / LiveJournal.com</generator>
  <lj:journal>hansdegoede</lj:journal>
  <lj:journalid>13347631</lj:journalid>
  <lj:journaltype>personal</lj:journaltype>
  <image>
    <url>http://l-userpic.livejournal.com/63846456/13347631</url>
    <title>Hans&apos; hacking log</title>
    <link>http://hansdegoede.livejournal.com/</link>
    <width>98</width>
    <height>96</height>
  </image>

<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/12657.html</guid>
  <pubDate>Thu, 07 Jun 2012 14:42:44 GMT</pubDate>
  <title>Linux Packaging Workshop in the Netherlands (only 10 days left!)</title>
  <link>http://hansdegoede.livejournal.com/12657.html</link>
  <description>Only 10 days left till the Linux Packaging Workshop on Saturday June 16th in The Hague, The Netherlands. For more&lt;br /&gt;details see: &lt;a href=&quot;https://revspace.nl/Debrpm&quot; rel=&quot;nofollow&quot; rel=&quot;nofollow&quot;&gt;https://revspace.nl/Debrpm&lt;/a&gt; (warning Dutch). So if you live in the vicinity and you&amp;#39;ve ever considered becoming a Fedora packager, this is an excellent opportunity for taking the first steps!&lt;br /&gt;&lt;br /&gt;If you plan to attend please send an email to debrpm@echtehackers.nl.&lt;br /&gt;</description>
  <comments>http://hansdegoede.livejournal.com/12657.html</comments>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/12524.html</guid>
  <pubDate>Tue, 22 May 2012 12:00:24 GMT</pubDate>
  <title>Fedora moving to libusbx and announcing libusbx</title>
  <link>http://hansdegoede.livejournal.com/12524.html</link>
  <description>I&amp;#39;m happy to announce the existence of libusbx, a fork of libusb,. a bit late I must admit, as libusbx has been available for a while now, but as one of the people behind it I still wanted to mention it on my blog.&lt;br /&gt;&lt;br /&gt;The libusbx fork was started by various libusb-1.0 developers (almost all of them), because the official maintainer of libusb-1.0 refused to do any stable / tarbal releases for over 18 months and in general was very slow with merging new developments and fixes.&lt;br /&gt;&lt;br /&gt;Anyways, lets not look backwards, but forwards towards what looks to be a bright new future with libusbx :)&lt;br /&gt;&lt;br /&gt;For more info on libusbx see &lt;a href=&quot;http://sourceforge.net/apps/mediawiki/libusbx/index.php?title=Main_Page&quot; rel=&quot;nofollow&quot;&gt;the libusbx wiki&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I&amp;#39;m currently working on moving Fedora over to libusbx, you can find the &lt;a href=&quot;https://bugzilla.redhat.com/show_bug.cgi?id=823886&quot; rel=&quot;nofollow&quot;&gt;Rename Review Request here&lt;/a&gt;.&lt;br /&gt;</description>
  <comments>http://hansdegoede.livejournal.com/12524.html</comments>
  <category>spice</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/12263.html</guid>
  <pubDate>Sun, 13 May 2012 05:19:25 GMT</pubDate>
  <title>Linux Packaging Workshop in the Netherlands</title>
  <link>http://hansdegoede.livejournal.com/12263.html</link>
  <description>I&amp;#39;m co-organizing a Linux Packaging Workshop on Saturday June 16th in The Hague, The Netherlands. For more&lt;br /&gt;details see: &lt;a href=&apos;https://revspace.nl/Debrpm&apos; rel=&apos;nofollow&apos;&gt;https://revspace.nl/Debrpm&lt;/a&gt; (warning Dutch). So if you live in the vicinity and you&amp;#39;ve ever considered becoming a Fedora packager, this is an excellent opportunity for taking the first steps!</description>
  <comments>http://hansdegoede.livejournal.com/12263.html</comments>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/11936.html</guid>
  <pubDate>Wed, 01 Feb 2012 10:34:06 GMT</pubDate>
  <title>New USB redirection features, USB redirection talk @FOSDEM</title>
  <link>http://hansdegoede.livejournal.com/11936.html</link>
  <description>usbredir-0.3.3, spice-0.10.1, spice-gtk-0.9 have been recently released upstream and are available in Fedora-16 updates[-testing] and are chock-full of new USB redirection features &amp;amp; fixes:&lt;ul&gt;&lt;li&gt;Improved compatibility various usb mass storages devices which would not work before are working now&lt;/li&gt;&lt;li&gt;You no longer need to run spicy as root to use USB redirection, when running as a normal user you will now get a PolicyKit dialog asking you for the root password. You can change this by editing: /usr/share/polkit-1/actions/org.spice-space.lowlevelusbaccess.policy and setting &amp;lt;allow_active&amp;gt; to &amp;quot;yes&amp;quot;. Note that this will give any local users of your machine FULL access to any USB devices plugged in!&lt;/li&gt;&lt;li&gt;You can now redirect already plugged in devices / un-redirect devices without unplugging them, go to the&lt;br /&gt;Input menu and click &amp;quot;Select USB Devices for redirection&amp;quot;.&lt;/li&gt;&lt;li&gt;Filtering for auto-redirection, you can now specify a filter for auto redirection using --spice-usbredir-auto-redirect-filter=&amp;lt;&lt;a href=&quot;http://people.fedoraproject.org/~jwrdegoede/spice-reference/SpiceUsbDeviceManager.html#SpiceUsbDeviceManager--auto-connect-filter&quot; rel=&quot;nofollow&quot;&gt;filter-string&lt;/a&gt;&amp;gt;. Standard a filter is in place to avoid redirection of HID devices, so that if you&amp;#39;ve a glitch on your USB bus, or plug a mouse into a laptop it no longer gets swallowed by the vm making it unavailable to the client.&lt;/li&gt;&lt;/ul&gt;I&amp;#39;ll be at &lt;a href=&quot;http://fosdem.org/2012/&quot; rel=&quot;nofollow&quot;&gt;FOSDEM&lt;/a&gt; this weekend, and I&amp;#39;ll give a talk about &lt;a href=&quot;http://fosdem.org/2012/schedule/event/spice&quot; rel=&quot;nofollow&quot;&gt;Spice&lt;/a&gt;, sheets &lt;a href=&quot;http://people.fedoraproject.org/~jwrdegoede/spice2.odp&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;. As well as a talk about &lt;a href=&quot;http://fosdem.org/2012/schedule/event/usb_network_redirect&quot; rel=&quot;nofollow&quot;&gt;USB redirection&lt;/a&gt;, sheets &lt;a href=&quot;http://people.fedoraproject.org/~jwrdegoede/usb-redir.odp&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;. Besides me there will be 4 other people from the Spice team there, be sure to also watch their talks about &lt;a href=&quot;http://fosdem.org/2012/schedule/event/xorg_xspice&quot; rel=&quot;nofollow&quot;&gt;XSpice&lt;/a&gt; and &lt;a href=&quot;http://fosdem.org/2012/schedule/event/gnomeboxes&quot; rel=&quot;nofollow&quot;&gt;Boxes&lt;/a&gt;. If you have any question about &lt;a href=&quot;http://spice-space.org/&quot; rel=&quot;nofollow&quot;&gt;Spice&lt;/a&gt;, or just want talk to us, FOSDEM is an excellent opportunity to do so!&lt;br /&gt;&lt;br /&gt;While I&amp;#39;m plugging talks @FOSDEM, there will also be lots of other &lt;a href=&quot;http://people.redhat.com/duffy/fosdem/redhat-fosdem_2012.pdf&quot; rel=&quot;nofollow&quot;&gt;talks from Red Hat speakers&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Enjoy, and be sure to send any feedback you may have my way!&lt;br /&gt;</description>
  <comments>http://hansdegoede.livejournal.com/11936.html</comments>
  <category>spice</category>
  <category>qemu</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/11686.html</guid>
  <pubDate>Tue, 13 Sep 2011 13:52:40 GMT</pubDate>
  <title>Using spice from the qemu cmdline</title>
  <link>http://hansdegoede.livejournal.com/11686.html</link>
  <description>Various people have been asking how to run qemu with spice when launching qemu directly, rather then through libvirt + virt-manager. So here is a quick howto.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;*** The basics ***&lt;/b&gt;&lt;span style=&quot;display: none;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Besides adding the usual qemu cmdline options to make it find the harddisk to boot from, have a NIC, soundcard, etc. in order to add spice add the following to the cmdline:&lt;br /&gt;-vga qxl -spice port=5932,disable-ticketing&lt;br /&gt;&lt;br /&gt;After launching qemu with this, you can connect to it with spicy (new gtk based client) or spicec (old libX11 client), like this&lt;br /&gt;(their cmdline syntax is compatible):&lt;br /&gt;spicy -h localhost -p 5932&lt;br /&gt;&lt;br /&gt;&lt;b&gt;*** Enabling the agent channel ***&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;To really enjoy spice, with all its features like copy paste between client and guest, and client mouse mode (mouse cursor drawn by client, so 0 mouse lag), you need to install the qxl graphics driver and spice-agent in the guest, *and* enable the agent channel between the guest and the client, to do this add the following options to the qemu cmdline:&lt;br /&gt;-device virtio-serial \&lt;br /&gt;-chardev spicevmc,id=vdagent,name=vdagent \&lt;br /&gt;-device virtserialport,chardev=vdagent,name=com.redhat.spice.0&lt;br /&gt;&lt;br /&gt;&lt;b&gt;*** Enabling support for usb redirection ***&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;If you&amp;#39;re running qemu under Fedora-16 (or newer), or have build it from source with usbredirection support as explained in my &lt;a href=&quot;http://hansdegoede.livejournal.com/11494.html&quot; rel=&quot;nofollow&quot;&gt;previous&lt;/a&gt; blog post, then you can also let spice redirect usb devices from your client to the vm, to enable this you will first need to enable usb2 emulation in qemu, download &lt;a href=&quot;http://cgit.freedesktop.org/spice/qemu/plain/docs/ich9-ehci-uhci.cfg&quot; rel=&quot;nofollow&quot; rel=&quot;nofollow&quot;&gt;this&lt;/a&gt; file, and drop it in /etc/qemu. And at the following to the qemu cmdline:&lt;br /&gt;-readconfig /etc/qemu/ich9-ehci-uhci.cfg&lt;br /&gt;&lt;br /&gt;Then to create 3 usbredir ports into which the client can then &amp;quot;plug&amp;quot; redirected devices add the following:&lt;br /&gt;-chardev spicevmc,name=usbredir,id=usbredirchardev1 \&lt;br /&gt;-device usb-redir,chardev=usbredirchardev1,id=usbredirdev1,debug=3 \&lt;br /&gt;-chardev spicevmc,name=usbredir,id=usbredirchardev2 \&lt;br /&gt;-device usb-redir,chardev=usbredirchardev2,id=usbredirdev2,debug=3 \&lt;br /&gt;-chardev spicevmc,name=usbredir,id=usbredirchardev3 \&lt;br /&gt;-device usb-redir,chardev=usbredirchardev3,id=usbredirdev3,debug=3 \&lt;br /&gt;&lt;br /&gt;The debug=3 is not strictly necessary, but it gives some useful messages without flooding the qemu console with messages. Note that you can also create more / less then 3 usbredirection usb &amp;quot;ports&amp;quot;, how to do this is left as an&lt;br /&gt;excercise to the reader :)&lt;br /&gt;&lt;br /&gt;To use the usb redirection&amp;nbsp; connect to the vm with spicy running as root, so that it can access the device nodes under /dev/bus/usb.&lt;br /&gt;&lt;br /&gt;Select the options menu entry and make sure that the &amp;quot;auto redirect newly plugged in USB devices&amp;quot; option is checked. After this make sure the vm has keyboard focus (so close the options menu), plug in a new USB device and watch it show up in your vm :) Feel free to yank it out again at any time :)&lt;br /&gt;&lt;br /&gt;If you plug in a device while the vm does not have keyboard focus, it will not get redirected, so you can use usb devices&lt;br /&gt;normally as long as you don&amp;#39;t have the vm focussed when you plug them in.&lt;br /&gt;&lt;br /&gt;Enjoy, and be sure to send any feedback you may have my way!&lt;br /&gt;</description>
  <comments>http://hansdegoede.livejournal.com/11686.html</comments>
  <category>spice</category>
  <category>qemu</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/11494.html</guid>
  <pubDate>Tue, 13 Sep 2011 13:37:27 GMT</pubDate>
  <title>Howto build qemu + spice with usbredirection from source</title>
  <link>http://hansdegoede.livejournal.com/11494.html</link>
  <description>Hi,&lt;br /&gt;&lt;br /&gt;Here is a little howto for building qemu + spice with usbredirection from source, for those of you who are not running Fedora 16.&lt;br /&gt;&lt;br /&gt;The below instructions assume:&lt;ol&gt;&lt;li&gt;That you are familiar with building things from source&lt;/li&gt;&lt;li&gt;That you are running the 64 bit version a fairly recent Linux distribution&lt;/li&gt;&lt;li&gt;That you want to override you distro installed version of various bits with the bits build from source, this is necessary to ensure that everything builds and runs linked against the correct version of various libs.&lt;/li&gt;&lt;li&gt;That using a distribution with a multilib setup where 64 bit libraries go into /usr/lib64. If you are using a distro which puts 64 bits libraries under /usr/lib rather then /usr/lib64 (for example Debian or ubuntu), you need to replace /usr/lib64 with /usr/lib in all commands below&lt;/li&gt;&lt;/ol&gt;&lt;b&gt;*** Step 1 Building libusb ***&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;First of all you will need libusb from git for now, hopefully there will soon be an offfical 1.0.9 release you can use instead. To build libusb from git do:&lt;br /&gt;&lt;br /&gt;git clone &lt;code&gt;git://libusbx.git.sourceforge.net/gitroot/libusbx/libusbx&lt;/code&gt;&lt;br /&gt;cd libusbx&lt;br /&gt;./autogen.sh --prefix=/usr --libdir=/lib64&lt;br /&gt;make&lt;br /&gt;sudo make install&lt;br /&gt;&lt;br /&gt;&lt;b&gt;*** Step 2 building usbredir ***&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Next you will need to build usbredir itself for the usbredirparser and usbredirhost libraries, download it &lt;a href=&quot;http://spice-space.org/page/UsbRedir&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;, then do:&lt;br /&gt;&lt;br /&gt;tar xvfj usbredir-0.4.3.tar.bz2&lt;br /&gt;cd usbredir-0.4.3&lt;br /&gt;make -j2 PREFIX=/usr LIBDIR=/usr/lib64&lt;br /&gt;sudo make PREFIX=/usr LIBDIR=/usr/lib64 install&lt;br /&gt;&lt;br /&gt;&lt;b&gt;*** step 3 building spice-protocol ***&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;For usbredir support we need version &amp;gt;= 0.10 of spice-protocol, download it &lt;a href=&quot;http://spice-space.org/download.html&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;, then do:&lt;br /&gt;&lt;br /&gt;tar xvfj spice-protocol-0.10.1.tar.bz2&lt;br /&gt;cd spice-protocol-0.10.1&lt;br /&gt;./configure.sh --prefix=/usr --libdir=/usr/lib64&lt;br /&gt;make -j2&lt;br /&gt;sudo make install&lt;br /&gt;&lt;br /&gt;&lt;b&gt;*** step 4 building spice[-server] ***&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;For usbredir support we need version &amp;gt;= 0.10 of spice, download it &lt;a href=&quot;http://spice-space.org/download.html&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;, then do:&lt;br /&gt;&lt;br /&gt;tar xvfj spice-0.10.1.tar.bz2&lt;br /&gt;cd spice-0.10.1&lt;br /&gt;./configure --prefix=/usr --libdir=/usr/lib64 --enable-smartcard&lt;br /&gt;make -j2&lt;br /&gt;sudo make install&lt;br /&gt;&lt;br /&gt;&lt;b&gt;*** Step 5 building qemu ***&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The core usbredir code is already in the qemu-0.15.0 upstream release, but some bits needed for integrating it&lt;br /&gt;with spice are missing. Besided that it is also good to get a version with some recent spice fixes included, so&lt;br /&gt;we will again use a git tree for this:&lt;br /&gt;&lt;br /&gt;git clone &lt;a href=&quot;git://people.freedesktop.org/%7Ejwrdegoede/qemu&quot; rel=&quot;nofollow&quot;&gt;git://people.freedesktop.org/~jwrdegoede/qemu&lt;/a&gt;&lt;br /&gt;cd qemu&lt;br /&gt;git checkout -B qemu-kvm-1.0-usbredir qemu-kvm-1.0-usbredir&lt;br /&gt;./configure --prefix=/usr --enable-smartcard-nss --enable-smartcard --enable-spice --target-list=x86_64-softmmu&lt;br /&gt;make -j2&lt;br /&gt;# do not do make install, this will replace the versions of seabios &amp;amp; friends installed by your distro with (quite old non&lt;br /&gt;# working) versions of seabios which are still part of the qemu git tree (someone ought to fix this one of these days)&lt;br /&gt;sudo install -m0755 -p x86_64-softmmu/qemu-system-x86_64 /usr/bin&lt;br /&gt;&lt;br /&gt;&lt;b&gt;*** Step 6 building spice-gtk with usbredir support ***&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Get spice-gtk version 0.11 or newer &lt;a href=&quot;http://spice-space.org/download.html&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;tar xvfj spice-gtk-0.11.tar.bz2&lt;br /&gt;cd spice-gtk-0.11&lt;br /&gt;./configure --prefix=/usr --libdir=/usr/lib64&lt;br /&gt;make -j2&lt;br /&gt;sudo make install&lt;br /&gt;&lt;br /&gt;&lt;b&gt;*** All done ***&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;All done, to enjoy the usbredir support you need to pass some extra qemu options on the qemu cmdline, see my &lt;a href=&quot;http://hansdegoede.livejournal.com/11686.html&quot; rel=&quot;nofollow&quot;&gt;next&lt;/a&gt; blogpost for details.&lt;br /&gt;</description>
  <comments>http://hansdegoede.livejournal.com/11494.html</comments>
  <category>spice</category>
  <category>qemu</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/11084.html</guid>
  <pubDate>Fri, 09 Sep 2011 11:39:28 GMT</pubDate>
  <title>USB redirection integrated into SPICE now available in Fedora-16</title>
  <link>http://hansdegoede.livejournal.com/11084.html</link>
  <description>I&amp;#39;m happy to announce the availability of USB redirection support in SPICE in Fedora 16. Unfortunately the virtmanager bits are not there yet. So if you want to try this you need to configure it manually. This howto assumes&lt;br /&gt;a fully up2date F-16 with spice-gtk from updates-testing installed.&lt;br /&gt;&lt;br /&gt;First create a virtual machine as usual, using virt-manager, select spice as display type and qxl as video card model,&lt;br /&gt;when asked if you want to enable the agent channel, say yes.&lt;br /&gt;&lt;br /&gt;When done, close virt-manager and edit the relevant /etc/libvirt/qemu/foo.xml file and add the following lines at the end, above the &amp;quot;&amp;lt;/devices&amp;gt;&amp;quot; line:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;controller type=&amp;#39;usb&amp;#39; index=&amp;#39;0&amp;#39; model=&amp;#39;ich9-ehci1&amp;#39;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;address type=&amp;#39;pci&amp;#39; domain=&amp;#39;0x0000&amp;#39; bus=&amp;#39;0x00&amp;#39; slot=&amp;#39;0x08&amp;#39; function=&amp;#39;0x7&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/controller&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;controller type=&amp;#39;usb&amp;#39; index=&amp;#39;0&amp;#39; model=&amp;#39;ich9-uhci1&amp;#39;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;master startport=&amp;#39;0&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;address type=&amp;#39;pci&amp;#39; domain=&amp;#39;0x0000&amp;#39; bus=&amp;#39;0x00&amp;#39; slot=&amp;#39;0x08&amp;#39; function=&amp;#39;0x0&amp;#39; multifunction=&amp;#39;on&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/controller&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;controller type=&amp;#39;usb&amp;#39; index=&amp;#39;0&amp;#39; model=&amp;#39;ich9-uhci2&amp;#39;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;master startport=&amp;#39;2&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;address type=&amp;#39;pci&amp;#39; domain=&amp;#39;0x0000&amp;#39; bus=&amp;#39;0x00&amp;#39; slot=&amp;#39;0x08&amp;#39; function=&amp;#39;0x1&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/controller&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;controller type=&amp;#39;usb&amp;#39; index=&amp;#39;0&amp;#39; model=&amp;#39;ich9-uhci3&amp;#39;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;master startport=&amp;#39;4&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;address type=&amp;#39;pci&amp;#39; domain=&amp;#39;0x0000&amp;#39; bus=&amp;#39;0x00&amp;#39; slot=&amp;#39;0x08&amp;#39; function=&amp;#39;0x2&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/controller&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;redirdev bus=&amp;#39;usb&amp;#39; type=&amp;#39;spicevmc&amp;#39;&amp;gt;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;address type=&amp;#39;usb&amp;#39; bus=&amp;#39;0&amp;#39; port=&amp;#39;3&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/redirdev&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;redirdev bus=&amp;#39;usb&amp;#39; type=&amp;#39;spicevmc&amp;#39;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;address type=&amp;#39;usb&amp;#39; bus=&amp;#39;0&amp;#39; port=&amp;#39;4&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/redirdev&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;redirdev bus=&amp;#39;usb&amp;#39; type=&amp;#39;spicevmc&amp;#39;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;address type=&amp;#39;usb&amp;#39; bus=&amp;#39;0&amp;#39; port=&amp;#39;5&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/redirdev&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;redirdev bus=&amp;#39;usb&amp;#39; type=&amp;#39;spicevmc&amp;#39;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;address type=&amp;#39;usb&amp;#39; bus=&amp;#39;0&amp;#39; port=&amp;#39;6&amp;#39;/&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/redirdev&amp;gt;&lt;br /&gt;&lt;br /&gt;Note that the slot=&amp;#39;0x08&amp;#39; needs to be one higher then the higest pci slot already in use, so if you&amp;#39;ve more&lt;br /&gt;pci devices in your config then me you may need to make this higher.&lt;br /&gt;&lt;br /&gt;Then close down any virtual machines you may have open, and restart libvirt:&lt;br /&gt;service libvirtd restart&lt;br /&gt;&lt;br /&gt;Now start the vm with virt-manager, open it, select the details view, click on Display Spice and lookup and remember the port mentioned there (this will be 5900 if it is the only running vm).&lt;br /&gt;&lt;br /&gt;Close virt-manager, and connect to the vm with spicy, like this:&lt;br /&gt;spicy -h localhost -p 5900&lt;br /&gt;&lt;br /&gt;Where 5900 should be replaced by the port the vm is actually running on.&lt;br /&gt;&lt;br /&gt;Select the options menu entry and make sure that the &amp;quot;auto redirect newly plugged in USB devices&amp;quot; option is checked. After this make sure the vm has keyboard focus (so close the options menu), and plug in a new USB device. You will now&lt;br /&gt;get a PolicyKit dialog asking you for your root password, this is needed since redirecting USB devices requires access the device nodes under /dev/bus/usb. Once you&amp;#39;ve (correctly) typed your root password,&amp;nbsp; watch the USB device show up in your vm :) Feel free to yank it out again at any time :)&lt;br /&gt;&lt;br /&gt;If you plug in a device while the vm does not have keyboard focus, it will not get redirected, so you can use usb devices&lt;br /&gt;normally as long as you don&amp;#39;t have the vm focussed when you plug them in.&lt;br /&gt;&lt;br /&gt;If you want to redirect already plugged in devices, or un-redirect redirected devices without unplugging them go to the&lt;br /&gt;Input menu and click &amp;quot;Select USB Devices for redirection&amp;quot;.&lt;br /&gt;&lt;br /&gt;Enjoy, and be sure to send any feedback you may have my way!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Note (Feb 1 2012): this blog post has been updated to:&lt;ul&gt;&lt;li&gt;Use the new usbredir support in libvirt, rather then to directly inject qemu cmdline from the libvirt xml file using the qemu:commandline syntax.&lt;/li&gt;&lt;li&gt;Reflect the use of PolicyKit rather then needing to run the client as root&lt;/li&gt;&lt;li&gt;The new USB device selection widget&lt;/li&gt;&lt;/ul&gt;</description>
  <comments>http://hansdegoede.livejournal.com/11084.html</comments>
  <category>spice</category>
  <category>qemu</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/11006.html</guid>
  <pubDate>Mon, 18 Jul 2011 06:54:05 GMT</pubDate>
  <title>First official release of usbredir code</title>
  <link>http://hansdegoede.livejournal.com/11006.html</link>
  <description>I&apos;m very happy to announce the first official release of the usbredir code: &lt;a href=&quot;http://people.fedoraproject.org/~jwrdegoede/usbredir-0.3.tar.bz2&quot; rel=&quot;nofollow&quot;&gt;usbredir-0.3.tar.bz2&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;usbredir is a protocol for redirection USB traffic from a single USB device,&lt;br /&gt;to a different (virtual) machine then the one to which the USB device is&amp;nbsp;&amp;nbsp; &lt;br /&gt;attached. See usb-redirection-protocol.txt for the description / definition&lt;br /&gt;of this protocol.&lt;br /&gt;&lt;br /&gt;With the official 0.3 release the  protocol is now frozen (only extensions&lt;br /&gt;advertised through capabilities can be added from now on).&lt;br /&gt;&lt;br /&gt;This package contains a number of libraries to help implementing support&lt;br /&gt;for usbredir and a few simple usbredir applications:&lt;br /&gt;&lt;br /&gt;usbredirparser:&lt;br /&gt;A library containing the parser for the usbredir protocol&lt;br /&gt;&lt;br /&gt;usbredirhost:&lt;br /&gt;A library implementing the usb-host (*) side of a usbredir connection.&amp;nbsp; &lt;br /&gt;All that an application wishing to implement an usb-host needs to do is:&lt;br /&gt;* Provide a libusb device handle for the device&lt;br /&gt;* Provide write and read callbacks for the actual transport of usbredir data&lt;br /&gt;* Monitor for usbredir and libusb read/write events and call their handlers&lt;br /&gt;&lt;br /&gt;*) The side to which the actual USB device is attached, also see the&lt;br /&gt;definitions section in &lt;a href=&quot;http://cgit.freedesktop.org/~jwrdegoede/usbredir/plain/usb-redirection-protocol.txt&quot; rel=&quot;nofollow&quot;&gt;usb-redirection-protocol.txt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;usbredirserver:&lt;br /&gt;A simple tcp server usb-host, using usbredirhost&lt;br /&gt;&lt;br /&gt;usbredirtestclient:&lt;br /&gt;A small testclient for the usbredir protocol over tcp, using usbredirparser&lt;br /&gt;&lt;br /&gt;Note that the usb-guest side is missing from this, this will be part of qemu. I&apos;ve all my qemu usb changes except for the actual usbredir usbdevice itself queued up for merging upstream. You can find a version of qemu with usbredir support in my git repo &lt;a href=&quot;http://cgit.freedesktop.org/~jwrdegoede/qemu/log/?h=usbredir&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;. See previous posts for compilation and usage instructions</description>
  <comments>http://hansdegoede.livejournal.com/11006.html</comments>
  <category>spice</category>
  <category>qemu</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/10572.html</guid>
  <pubDate>Thu, 30 Jun 2011 12:14:10 GMT</pubDate>
  <title>USB redirection update</title>
  <link>http://hansdegoede.livejournal.com/10572.html</link>
  <description>I&apos;ve pushed an updated version of my usb-redirection code to my git repo. The biggest change is that the usbredir device now is a chardev frontend. Which means that the way to use it has changed. Also there now is proper emulation of companion controllers for the ehci code. Here is an example cmdline for using both:&lt;br /&gt;&lt;br /&gt;-device usb-ehci,addr=0b.2,multifunction=on,id=ehci0 -device piix3-usb-uhci,addr=0b.0,multifunction=on,masterbus=ehci0.0,firstport=0&lt;br /&gt;-device piix3-usb-uhci,addr=0b.1,multifunction=on,masterbus=ehci0.0,firstport=2 &lt;br /&gt;-chardev socket,id=usbredirchardev,host=localhost,port=4000&lt;br /&gt;-device usb-redir,chardev=usbredirchardev,id=usbredirdev&lt;br /&gt;&lt;br /&gt;There have also been some usbredir protocol changes, so you need to update and rebuild your usbredir clone too. I hope to release a usbredir-0.1.0 with a frozen protocol soon.</description>
  <comments>http://hansdegoede.livejournal.com/10572.html</comments>
  <category>spice</category>
  <category>qemu</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/10380.html</guid>
  <pubDate>Thu, 23 Jun 2011 18:02:52 GMT</pubDate>
  <title>USB protocol reverse engineering workship The Hague, Friday July 22 19:30</title>
  <link>http://hansdegoede.livejournal.com/10380.html</link>
  <description>Friday July 22 we&apos;re organizing a workshop on reverse engineering &lt;br /&gt;USB protocols of devices with proprietary protocols. &lt;br /&gt; &lt;br /&gt;Reverse engineering protocols is fun! It&apos;s like a puzzle, and if there&apos;s &lt;br /&gt;software out there that can solve the puzzle, your brain can do it too. &lt;br /&gt; &lt;br /&gt;We&apos;ll be taking a look at reverse engineering the protocols on USB-connected &lt;br /&gt;devices. Too many of these devices still come with windows drivers only, and &lt;br /&gt;use an undocumented protocol. Figuring out those protocols is often a lot &lt;br /&gt;easier than you might think, and so is writing a simple driver. &lt;br /&gt; &lt;br /&gt;If you want to participate in this workshop, bring a Linux laptop, &lt;br /&gt;preferably with a virtual machine with a Windows guest OS. If you have an &lt;br /&gt;exotic USB device that only has a Windows driver, please bring that too. &lt;br /&gt; &lt;br /&gt;This workshop will be given by Bert Vermeulen and Hans de Goede. Bert has &lt;br /&gt;reverse engineered and written drivers for various USB logic analyzers for &lt;br /&gt;sigrok: &lt;a href=&quot;http://sigrok.org/&quot; rel=&quot;nofollow&quot;&gt;http://sigrok.org&lt;/a&gt; . Hans has reverse engineered and written drivers &lt;br /&gt;for various USB webcams for the Linux kernel and for digital photoframes &lt;br /&gt;for libgphoto2. &lt;br /&gt; &lt;br /&gt;Program: &lt;br /&gt;19:00 Welcome, drinks &lt;br /&gt;19:30 Start of the workshop Bert &amp;amp; Hans give a short intro on USB protocol &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; principles and a short demo of sniffing and interpreting usb traffic &lt;br /&gt;20:15 Time to get your hands dirty, start reverse engineering your own USB &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; device, or one of the devices provided. Your hosts will be walking &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; around to answer questions and help you pass any speedbumps you &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; encounter. &lt;br /&gt;late: Time to go home? &lt;br /&gt;really late: Chances are your hosts will want to go home at this time, hint &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; hint. &lt;br /&gt; &lt;br /&gt;Location: &lt;br /&gt; &lt;br /&gt;This workshop will be held in the hackerspace Revelation Space in The Hague: &lt;br /&gt;&lt;a href=&quot;http://revspace.nl/&quot; rel=&quot;nofollow&quot;&gt;http://revspace.nl/&lt;/a&gt; &lt;br /&gt; &lt;br /&gt;Registration: &lt;br /&gt; &lt;br /&gt;Registration is not mandatory, but in order to have an idea of how many &lt;br /&gt;people will be coming we kindly request you to send an email to &lt;br /&gt;&lt;a href=&quot;mailto:hdegoede@redhat.com&quot; rel=&quot;nofollow&quot;&gt;hdegoede@redhat.com&lt;/a&gt; if you&apos;re going to attend.</description>
  <comments>http://hansdegoede.livejournal.com/10380.html</comments>
  <category>kernel</category>
  <category>spice</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/10211.html</guid>
  <pubDate>Thu, 23 Jun 2011 18:00:39 GMT</pubDate>
  <title>New libgphoto2 camlib for tp6801 based keychain digital photo frames</title>
  <link>http://hansdegoede.livejournal.com/10211.html</link>
  <description>After not working on drivers for keychain digital photo frames with proprietary picture uploading protocols for a while I got contacted by Per Jessen who had a model with a chipset I had never seen before. Luckily I managed to find the exact same model picframe on ebay and ordered one. So libgphoto2 now also supports uploading pictures to keychain picture frames like this one:&lt;br /&gt;&lt;a href=&apos;http://www.insigniaproducts.com/products/cameras-camcorders-photo-frames/NS-DKEYBK10.html&apos; rel=&apos;nofollow&apos;&gt;http://www.insigniaproducts.com/products/cameras-camcorders-photo-frames/NS-DKEYBK10.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Unfortunately I have been unable to find out how to probe the display resolution, so currently the driver keeps a list of model strings and if your model is not in that list it won&apos;t work. So if you happen to have one of these frames, your help would be appreciated. Apparently xeos also makes frames with these chips, ie:&lt;br /&gt;&lt;a href=&apos;http://www.xeos-labs.com/product.php?c=1&amp;amp;p=4&apos; rel=&apos;nofollow&apos;&gt;http://www.xeos-labs.com/product.php?c=1&amp;amp;p=4&lt;/a&gt;&lt;br /&gt;&lt;br /&gt; So if you have a xeos frame please contact me, if you know a way to xeos frames in Europe (in The Netherlands to be precise) please let me know.</description>
  <comments>http://hansdegoede.livejournal.com/10211.html</comments>
  <category>picframe</category>
  <category>gphoto</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/9761.html</guid>
  <pubDate>Wed, 01 Jun 2011 13:22:10 GMT</pubDate>
  <title>Announcing v4l-utils-0.8.4</title>
  <link>http://hansdegoede.livejournal.com/9761.html</link>
  <description>Hi all, &lt;br /&gt; &lt;br /&gt;I&apos;m happy to announce the release of v4l-utils-0.8.4. After some &lt;br /&gt;somewhat boring releases, this release contains some interesting &lt;br /&gt;improvements: &lt;br /&gt;* Various enhancements to libv4l which should result in &lt;br /&gt;&amp;nbsp; significantly less cpu usage with uvc HD cameras in several &lt;br /&gt;&amp;nbsp; scenarios &lt;br /&gt;* A library for associating video, audio, vbi and other devices with each &lt;br /&gt;&amp;nbsp; other. This will allow apps to automatically do things like figure out &lt;br /&gt;&amp;nbsp; which alsa input devices has the sound for the analog tv show you are &lt;br /&gt;&amp;nbsp; watching. Note atm this lib does not have a stable API yet, and thus &lt;br /&gt;&amp;nbsp; does not get installed by make install. &lt;br /&gt; &lt;br /&gt;Full changelog: &lt;br /&gt; &lt;br /&gt;v4l-utils-0.8.4 &lt;br /&gt;--------------- &lt;br /&gt;* Utils changes &lt;br /&gt;&amp;nbsp; * Various small fixes (hverkuil, mchehab) &lt;br /&gt;&amp;nbsp; * qv4l2: Add support for configuring the framerate for devices which support &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; this like uvc cams (hdegoede) &lt;br /&gt;&amp;nbsp; * parse_tcpdump_log.pl: new parser for tcpdump / wireshark made usbmon &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; dumps (mchehab) &lt;br /&gt;&amp;nbsp; * New lib_media_dev lib, to pair audio devices with video devices &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; (and other combinations) for now this lives in utils and does not get &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; installed systemwide, as the API is not stable (mchehab) &lt;br /&gt;* libv4l changes &lt;br /&gt;&amp;nbsp; * Add many more laptop models to the upside down devices table (hdegoede) &lt;br /&gt;&amp;nbsp; * Some small bugfixes (hdegoede) &lt;br /&gt;&amp;nbsp; * Add vicam cameras to list of cameras need sw auto gain + whitebalance &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; (hdegoede) &lt;br /&gt;&amp;nbsp; * Add support for M420 pixelformat (hdegoede) &lt;br /&gt;&amp;nbsp; * Add support for Y10B pixelformat (Antonio Ospite) &lt;br /&gt;&amp;nbsp; * Add support for JPGL pixelformat (jfmoine) &lt;br /&gt;&amp;nbsp; * Modified (rewrote) jpeg decompression code to use libjpeg[-turbo], for &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; much lower cpu load when doing jpeg decompression (hdegoede) &lt;br /&gt;&amp;nbsp; * Detect usb connection speed of devices (hdegoede) &lt;br /&gt;&amp;nbsp; * Rewrite src format selection algorithm, taking bandwidth into account and &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; choosing the format which will give us the lowest CPU load while still &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; allowing 30 fps (hdegoede) &lt;br /&gt;&amp;nbsp; * Intercept S_PARM and redo src format selection based on new fps setting, &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; potentially switching from JPG to YUYV / M420 when the app lowers the &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fps, resulting in a significant lower cpu load (hdegoede) &lt;br /&gt; &lt;br /&gt;Go get it here: &lt;br /&gt;&lt;a href=&quot;http://linuxtv.org/downloads/v4l-utils/v4l-utils-0.8.4.tar.bz2&quot; rel=&quot;nofollow&quot;&gt;http://linuxtv.org/downloads/v4l-utils/v4l-utils-0.8.4.tar.bz2&lt;/a&gt; &lt;br /&gt; &lt;br /&gt;You can always find the latest developments here: &lt;br /&gt;&lt;a href=&quot;http://git.linuxtv.org/v4l-utils.git&quot; rel=&quot;nofollow&quot;&gt;http://git.linuxtv.org/v4l-utils.git&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Hans</description>
  <comments>http://hansdegoede.livejournal.com/9761.html</comments>
  <category>libv4l</category>
  <category>v4l-utils</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/9682.html</guid>
  <pubDate>Tue, 31 May 2011 13:44:42 GMT</pubDate>
  <title>USB2 support and USB redirection over the network with qemu</title>
  <link>http://hansdegoede.livejournal.com/9682.html</link>
  <description>Hi All,&lt;br /&gt;&lt;br /&gt;I&apos;ve been working on USB redirection over the network for qemu / spice for a while now. And I&apos;m happy to report I&apos;ve something which is good enough to invite others to test it. In the mean time&amp;nbsp;Gert Hoffmann (kraxel) has been working on cleaning up the EHCI support which was submitted to the qemu-devel list about a year ago, making it suitable to get merged. My qemu git tree is based on Gert&apos;s tree, so it has prelimary USB2 support too. Note that the USB2 support works best when used together with the network redirection code over localhost, that seems to be more reliable at the moment then using qemu&apos;s direct usb host redirection code.&lt;br /&gt;&lt;br /&gt;So if you want to play around with this here are some installation instructions. These instructions assume a 64 bit Red Hat or Fedora installation, with libusb-1.0.so.0 in /lib64. If you&apos;ve a 32 bit installation or are using a distribution which does not use /[usr/]lib64 for 64 bit installations (such as Debian and Ubuntu) replace /lib64 with /lib in the below instructions.&lt;br /&gt;&lt;br /&gt;First of all you will need my version of libusb, which is has a new &lt;a href=&quot;http://cgit.freedesktop.org/%7Ejwrdegoede/libusb/commit/?h=usbredir&amp;amp;id=77dfe2a5580c1876e29d88135cecd012aac5106d&quot; rel=&quot;nofollow&quot;&gt;libusb_get_device_speed&lt;/a&gt; function, this is intended&lt;br /&gt;to go upstream sometime soon. But first upstream needs to get to long awaited 1.0.9 out the door. To install my (fully compatible) libusb version do:&lt;br /&gt;git clone &lt;a href=&quot;git://anongit.freedesktop.org/%7Ejwrdegoede/libusb&quot; rel=&quot;nofollow&quot;&gt;git://anongit.freedesktop.org/~jwrdegoede/libusb&lt;/a&gt;&lt;br /&gt;cd libusb&lt;br /&gt;git checkout usbredir&lt;br /&gt;./autogen.sh&lt;br /&gt;./configure --prefix=/usr --libdir=/lib64&lt;br /&gt;make&lt;br /&gt;sudo make install&lt;br /&gt;&lt;br /&gt;With the new libusb in place, it is time to build the non qemu parts of the usbredir code&lt;br /&gt;(a standalone server, as well as the usbredir protocol parser and host libraries):&lt;br /&gt;git clone &lt;a href=&quot;git://anongit.freedesktop.org/%7Ejwrdegoede/usbredir&quot; rel=&quot;nofollow&quot;&gt;git://anongit.freedesktop.org/~jwrdegoede/usbredir&lt;/a&gt;&lt;br /&gt;cd usbredir&lt;br /&gt;make PREFIX=/usr LIBDIR=/usr/lib64&lt;br /&gt;sudo make PREFIX=/usr LIBDIR=/usr/lib64 install&lt;br /&gt;&lt;br /&gt;And now lets build qemu with usbredir support (note I enable spice + spices smartcard support here, since that is&lt;br /&gt;what I use in my day to day testing, this is not strictly needed).&lt;br /&gt;git clone &lt;a href=&quot;git://anongit.freedesktop.org/%7Ejwrdegoede/qemu&quot; rel=&quot;nofollow&quot;&gt;git://anongit.freedesktop.org/~jwrdegoede/qemu&lt;/a&gt;&lt;br /&gt;cd qemu&lt;br /&gt;git checkout usbredir&lt;br /&gt;./configure --prefix=/usr --enable-smartcard-nss --enable-smartcard --enable-spice --target-list=x86_64-softmmu&lt;br /&gt;make&lt;br /&gt;sudo install -m0755 -p x86_64-softmmu/qemu-system-x86_64 &amp;quot;/usr/bin&amp;quot;&lt;br /&gt;&lt;br /&gt;Note do not use make install, this will also install the BIOS roms from qemu git which are outdated, this assumes that you already have a recent qemu installed and will be using the BIOS roms from that version.&lt;br /&gt;&lt;br /&gt;Now start qemu with all the options you use normally and &amp;quot;-usb&amp;quot; or &amp;quot;-usb -device usb-ehci&amp;quot; for USB2 support. To test the network redirection, start the usbredirserver in another terminal, lets say you want to redirect a usb device with vid:pid&lt;br /&gt;045e:0772, then start usbredirserver like this:&lt;br /&gt;usbredirserver 045e:0772&lt;br /&gt;&lt;br /&gt;And then in the qemu monitor cmdline type:&lt;br /&gt;usb_add tcp-redir:localhost:4000&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;1) replace localhost with the ip or hostname of the other machine if you&apos;re actually testing this over&amp;nbsp; the network&lt;br /&gt;2) you can start multiple servers to redirect multiple devices on the same machine, add &amp;quot; -p 4001&amp;quot; to start a second&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; server on port 4001, and make the 4000 4001 in the usb_add command&lt;br /&gt;3) To unplug a device do a usb_del with the exact same arguments as you passed to the usb_add command&lt;br /&gt;&lt;br /&gt;If you&apos;re interested in the network protocol used for the usb redirection, see:&lt;br /&gt;http://cgit.freedesktop.org/~jwrdegoede/usbredir/tree/usb-redirection-protocol.txt&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Hans</description>
  <comments>http://hansdegoede.livejournal.com/9682.html</comments>
  <category>spice</category>
  <category>qemu</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/9296.html</guid>
  <pubDate>Sat, 26 Mar 2011 12:18:11 GMT</pubDate>
  <title>Gnome 3 launch party 7 april in Den Haag</title>
  <link>http://hansdegoede.livejournal.com/9296.html</link>
  <description>&lt;a href=&quot;http://www.gnome3.org/&quot; rel=&quot;nofollow&quot;&gt;Gnome 3&lt;/a&gt; will be officially released April 6th 2011. To celebrate this there will be a Gnome 3 release party in The Hague on April 7th. Free entrance, but we would appreciate it if you register so that we know aprox. how many people will come. For details and registration see: &lt;a href=&quot;http://revspace.nl/RevelationSpace/Gnome3ReleaseParty&quot; rel=&quot;nofollow&quot;&gt;http://revspace.nl/RevelationSpace/Gnome3ReleaseParty&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://vanschouwen.info/nerdynotes/wp-content/uploads/2011/03/gnome_head.png&quot; rel=&quot;nofollow&quot;&gt;&lt;img height=&quot;409&quot; width=&quot;583&quot; title=&quot;Gnome Head&quot; alt=&quot;Winning Gnome 3 T-shirt design&quot; src=&quot;http://vanschouwen.info/nerdynotes/wp-content/uploads/2011/03/gnome_head.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Location:&lt;/strong&gt;&lt;br /&gt;Revelation Space&lt;br /&gt;Binckhorstlaan 172&lt;br /&gt;2516 BG Den Haag&lt;br /&gt;&lt;a href=&quot;http://revspace.nl/RevelationSpace/ContactAndRoute&quot; rel=&quot;nofollow&quot;&gt;Routebeschrijving / directions&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Programme:&lt;/strong&gt;&lt;br /&gt;19u00: Doors open&lt;br /&gt;20u00: Short demo of Gnome 3&lt;br /&gt;all the time: drinks and friendly nerds&lt;br /&gt;late: The End&lt;/p&gt;</description>
  <comments>http://hansdegoede.livejournal.com/9296.html</comments>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/9183.html</guid>
  <pubDate>Wed, 31 Mar 2010 12:18:27 GMT</pubDate>
  <title>Using mini (keychain) digital picture frames under Linux (part 2)</title>
  <link>http://hansdegoede.livejournal.com/9183.html</link>
  <description>Hi all,&lt;br /&gt;&lt;br /&gt;As explained in my previous blog post I&apos;ve been working on getting small digital picture frames  to work under Linux. With small digital picture frames I mean 1.1, 1.5,  1.8 and 2.4 inch (often keychain) models, with build in flash memory.&lt;br /&gt;&lt;br /&gt;In my previous post I talked about my adventures in getting Sitronix st2205 based frames working, and I mentioned that I (accidentally) also bought some other frames which were based on the Appotech ax203 chipset. In the mean time I&apos;ve also added support to libgphoto2 for uploading / downloading pictures to ax203 based devices. So if you have a picture frame with one of the following usb ID&apos;s:&lt;br /&gt;   &lt;table border=&quot;1&quot;&gt;&lt;tbody&gt;&lt;tr&gt; &lt;th&gt;USB-ID&lt;/th&gt;&lt;th&gt;Chipset&lt;/th&gt;&lt;th&gt;Support status in libgphoto2&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;1403:0001&lt;/td&gt;&lt;td&gt;st2205&lt;/td&gt;&lt;td&gt;supported in svn  libgphoto2-2_4 branch and trunk&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;1908:1315&lt;/td&gt;&lt;td&gt;ax203 with firmware ver 3.3.x&lt;/td&gt;&lt;td&gt;supported in svn libgphoto2-2_4 branch and trunk (*)&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;1908:1320&lt;/td&gt;&lt;td&gt;ax203 with firmware ver 3.4.x&lt;/td&gt;&lt;td&gt;supported in svn libgphoto2-2_4 branch and trunk&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td&gt;1908:0102&lt;/td&gt;&lt;td&gt;ax206 with firmware ver 3.5.x&lt;/td&gt;&lt;td&gt;supported in svn libgphoto2-2_4 branch and trunk&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;You can use it with Linux now, see &lt;a href=&quot;http://picframe.spritesserver.nl/wiki/index.php/UsingAsPicframe&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt; for &lt;a href=&quot;http://picframe.spritesserver.nl/wiki/index.php/UsingAsPicframe&quot; rel=&quot;nofollow&quot;&gt;instructions&lt;/a&gt; how to install libgphoto2 from svn and start uploading your pictures today :)&lt;br /&gt;&lt;br /&gt;As with the st2205 frames in case of the ax206 (1908:0102) based frames the picture (de)compression algorithm was a problem and I once more owe a big thanks to Bertrik Sikken for helping me out with it. We (again) followed a clean room procedure, were he wrote &lt;a href=&quot;http://picframe.spritesserver.nl/wiki/index.php/ImageEncodingAx206&quot; rel=&quot;nofollow&quot;&gt;a description&lt;/a&gt; based on disassembling the windows code, which I then coded.&lt;br /&gt;&lt;br /&gt;See ya,&lt;br /&gt;&lt;br /&gt;Hans&lt;br /&gt;</description>
  <comments>http://hansdegoede.livejournal.com/9183.html</comments>
  <category>kernel</category>
  <category>gphoto</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/8797.html</guid>
  <pubDate>Mon, 22 Mar 2010 21:21:25 GMT</pubDate>
  <title>Using mini (keychain) digital picture frames under Linux</title>
  <link>http://hansdegoede.livejournal.com/8797.html</link>
  <description>Hi all,&lt;br /&gt;&lt;br /&gt;I&apos;ve been working on getting small digital picture frames to work under Linux. With small digital picture frames I mean 1.1, 1.5, 1.8 and 2.4 inch (often keychain) models, with build in flash memory.&lt;br /&gt;&lt;br /&gt;This turns out to be a non trivial task, as all these small devices use custom protocols and custom image compression. It all started with me buying a 1.5 inch 128x128 pixel keychain picture frame for 5 euros for fun. Through googling I quickly learned this frame has an st2205 chipset and also found me &lt;a href=&quot;http://picframe.spritesserver.nl/&quot; rel=&quot;nofollow&quot;&gt;this website&lt;/a&gt; from people who had already been hacking on this device to use it as a &amp;quot;second monitor&amp;quot; (to display cpu usage stats for example). The person behind this website had already uncovered lots of useful details, such as how to read from / write to the flash on the picture frame.&lt;br /&gt;&lt;br /&gt;The picture frame shows up as a 2 MB harddisk through a usb mass storage interface, but you cannot simple read from or write to this disk. Instead a very interesting protocol is used where you communicate with the device by reading / writing sectors at specific magic offsets (sick). This protocol basically allows raw access to the flash chip on the picture frame, for example you need to do separate erase and program commands, and as an erase block is larger then what you program in a single program command you must make sure to always reprogram the entire range the single erase command cleared (and read the entire range before clearing, so you can write it back).&lt;br /&gt;&lt;br /&gt;So how to access the device was already known, next step figuring out the image compression. After some failed attempts, I asked help from Bertrik Sikken with reverse engineering the st2205 compression. He went the route of disassembling the windows binaries for uploading pictures, and wrote an &lt;a href=&quot;http://picframe.spritesserver.nl/wiki/index.php/ImageEncoding&quot; rel=&quot;nofollow&quot;&gt;algorithm description&lt;/a&gt; of the decompression on &lt;a href=&quot;http://picframe.spritesserver.nl/wiki/index.php/ImageEncoding&quot; rel=&quot;nofollow&quot;&gt;the picframe wiki&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I used this description to write decompression code. The first version used header files with the lookup tables as C-code arrays and these header files were made by and given to me by Bertrik. I also wrote compression code by &amp;quot;simply&amp;quot; reversing the decompression algorithm. The lookup tables were a problem, as Bertrik copied them out of the windows code, and one could argue that they are copyrightable. Luckily the same tables are also present in the firmware of the picture frame, and we can read them from the frame. So I modified my code to follow this approach to avoid any copyright issues.&lt;br /&gt;&lt;br /&gt;So now I had all the necessary ingredients to write software to upload pictures to these devices under Linux. Next question, do I write a standalone app, a library, or extend something existing ? I quickly ruled out a stand alone app, clearly this sort of code belongs in a library so that it can be used by multiple front ends. After some deliberation I came to the conclusion that the best solution was to write a driver (a so called camlib) for libgphoto2, and that is what I&apos;ve done. My libgphoto2 driver for accessing st2205 based picture frames now is in libgphoto svn. If you have such a picture frame (usb-id 1403:0001) and want to use it under Linux, instructions are &lt;a href=&quot;http://picframe.spritesserver.nl/wiki/index.php/UsingAsPicframe&quot; rel=&quot;nofollow&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;As I wanted to have some different models (esp with different display sizes) to test my libgphoto2 driver, I&apos;ve bought some more keychain picture frames, and of course the second and third and fifth one I bought have different chipsets:&lt;ol&gt;&lt;li&gt;usb-id 1908:1315, ax203 with firmware version 3.3.x&lt;/li&gt;&lt;li&gt;usb-id 1908:1320, ax203 with firmware version 3.4.x&lt;/li&gt;&lt;li&gt;usb-id 1908:0102, ax203 with firmware version 3.5.x&lt;/li&gt;&lt;/ol&gt;These too have a &lt;a href=&quot;http://picframe.spritesserver.nl/wiki/index.php/Talk:HK_Unbranded_with_AppoTech_chipset&quot; rel=&quot;nofollow&quot;&gt;very interesting&lt;/a&gt; protocol to talk to them, and this means that now I&apos;m working on another libgphoto2 driver for these devices, support for the 3.3.x and 3.4.x devices is coming along well. The 3.5.x devices have a nasty image compression algorithm and are currently blocked on that :(&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;&lt;br /&gt;Hans</description>
  <comments>http://hansdegoede.livejournal.com/8797.html</comments>
  <category>picframe</category>
  <category>gphoto</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/8550.html</guid>
  <pubDate>Fri, 09 Oct 2009 09:14:15 GMT</pubDate>
  <title>libv4l-0.6.2: The 3th upside down release</title>
  <link>http://hansdegoede.livejournal.com/8550.html</link>
  <description>Hi All, &lt;br /&gt; &lt;br /&gt;I&apos;m very happy to announce libv4l-0.6.2&lt;br /&gt; &lt;br /&gt;This release features the following familiar new features from 0.6.0 release:  &lt;ul&gt;&lt;li&gt;Software whitebalancing&lt;/li&gt;&lt;li&gt;Software automatic gain and exposure for cams which lack this in hardware&lt;/li&gt;&lt;li&gt;Software gamma control&lt;/li&gt;&lt;li&gt;Fake v4l2 controls to control all these&lt;/li&gt;&lt;li&gt;Software flipping controls&lt;/li&gt;&lt;/ul&gt;The big new feature (again) is a lot of additions of laptop models to the list of laptops whose&lt;br /&gt;camera modules (mostly uvc) are known to be mounted upside down in the frame.&lt;br /&gt;&lt;br /&gt;To give this version a try on F-10 or F-11 do:&lt;br /&gt;yum --enablerepo=updates-testing install libv4l v4l2ucp&lt;br /&gt;&lt;br /&gt;If you&apos;ve a laptop with an upside down webcam, after this the image should hopefully be the right way up in&lt;br /&gt;cheese and most other apps. For skype use:&lt;br /&gt;LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype&lt;br /&gt;&lt;br /&gt;If the image is not the right way up, then your laptop needs to be added to libv4l&apos;s upside down devices list, in that case&lt;br /&gt;please do:&lt;br /&gt;lsusb &amp;gt; lsusb.log&lt;br /&gt;dmidecode &amp;gt; dmi.log&lt;br /&gt;&lt;br /&gt;And mail me the 2 log files, it is important to use redirects (&amp;quot;&amp;gt;&amp;quot;) and to not copy paste as the dmi.log file can contain&lt;br /&gt;lines with trailing whitespace which I need.&lt;br /&gt;&lt;br /&gt;If you&apos;re interesting in testing the new whitebalance or gamma correction code, see my previous &lt;a href=&quot;http://hansdegoede.livejournal.com/6661.html&quot; rel=&quot;nofollow&quot;&gt;blog post.&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;Enjoy!&lt;/div&gt;&lt;/div&gt;</description>
  <comments>http://hansdegoede.livejournal.com/8550.html</comments>
  <category>kernel</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/8262.html</guid>
  <pubDate>Tue, 01 Sep 2009 08:30:38 GMT</pubDate>
  <title>libv4l-0.6.1: The 2nd upside down release</title>
  <link>http://hansdegoede.livejournal.com/8262.html</link>
  <description>Hi All, &lt;br /&gt; &lt;br /&gt;I&apos;m very happy to announce libv4l-0.6.1&lt;br /&gt; &lt;br /&gt;This release features the following familiar new features from 0.6.0 release:  &lt;ul&gt;&lt;li&gt;Software whitebalancing&lt;/li&gt;&lt;li&gt;Software automatic gain and exposure for cams which lack this in hardware&lt;/li&gt;&lt;li&gt;Software gamma control&lt;/li&gt;&lt;li&gt;Fake v4l2 controls to control all these&lt;/li&gt;&lt;li&gt;Software flipping controls&lt;/li&gt;&lt;/ul&gt;The big new feature is a lot of additions of laptop models to the list of laptops whose&lt;br /&gt;camera modules (mostly uvc) are known to be mounted upside down in the frame.&lt;br /&gt;&lt;br /&gt;To give this version a try on F-10 or F-11 do:&lt;br /&gt;yum --enablerepo=updates-testing install libv4l v4l2ucp&lt;br /&gt;&lt;br /&gt;If you&apos;ve a laptop with an upside down webcam, after this the image should hopefully be the right way up in&lt;br /&gt;cheese and most other apps. For skype use:&lt;br /&gt;LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype&lt;br /&gt;&lt;br /&gt;If the image is not the right way up, then your laptop needs to be added to libv4l&apos;s upside down devices list, in that case&lt;br /&gt;please do:&lt;br /&gt;lsusb &amp;gt; lsusb.log&lt;br /&gt;dmidecode &amp;gt; dmi.log&lt;br /&gt;&lt;br /&gt;And mail me the 2 log files, it is important to use redirects (&amp;quot;&amp;gt;&amp;quot;) and to not copy paste as the dmi.log file can contain&lt;br /&gt;lines with trailing whitespace which I need.&lt;br /&gt;&lt;br /&gt;If you&apos;re interesting in testing the new whitebalance or gamma correction code, see my previous blog post:&lt;br /&gt;http://hansdegoede.livejournal.com/6661.html&lt;br /&gt;&lt;div&gt;&lt;br /&gt;Enjoy!&lt;/div&gt;&lt;br /&gt;</description>
  <comments>http://hansdegoede.livejournal.com/8262.html</comments>
  <category>kernel</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/8140.html</guid>
  <pubDate>Fri, 10 Jul 2009 08:10:53 GMT</pubDate>
  <title>libv4l release: 0.6.0: the upside down release</title>
  <link>http://hansdegoede.livejournal.com/8140.html</link>
  <description>Hi All, &lt;br /&gt; &lt;br /&gt;I&apos;m very happy to announce the first release of the next &lt;br /&gt;stable series: libv4l-0.6.0 &lt;br /&gt; &lt;br /&gt;This release features the following familiar features from &lt;br /&gt;previous 0.5.9x test releases:  &lt;ul&gt;&lt;li&gt;Software whitebalancing&lt;/li&gt;&lt;li&gt;Software automatic gain and exposure for cams which lack this in hardware&lt;/li&gt;&lt;li&gt;Software gamma control&lt;/li&gt;&lt;li&gt;Fake v4l2 controls to control all these&lt;/li&gt;&lt;li&gt;Software flipping controls&lt;/li&gt;&lt;/ul&gt;And as a new feature it now has an extended list of laptops &lt;br /&gt;whose camera modules (mostly uvc) are known to be mounted &lt;br /&gt;upside down in the frame and it will automatically correct &lt;br /&gt;the image for this.&lt;br /&gt;&lt;br /&gt;To give this version a try on F-10 or F-11 do:&lt;br /&gt;yum --enablerepo=updates-testing install libv4l v4l2ucp&lt;br /&gt;&lt;br /&gt;If you&apos;ve a laptop with an upside down webcam, after this the image should hopefully be the right way up in&lt;br /&gt;cheese and most other apps. For skype use:&lt;br /&gt;LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype&lt;br /&gt;&lt;br /&gt;If the image is not the right way up, then your laptop needs to be added to libv4l&apos;s upside down devices list, in that case&lt;br /&gt;please do:&lt;br /&gt;lsusb &amp;gt; lsusb.log&lt;br /&gt;dmidecode &amp;gt; dmi.log&lt;br /&gt;&lt;br /&gt;And mail me the 2 log files, it is important to use redirects (&amp;quot;&amp;gt;&amp;quot;) and to not copy paste as the dmi.log file can contain&lt;br /&gt;lines with trailing whitespace which I need.&lt;br /&gt;&lt;br /&gt;If you&apos;re interesting in testing the new whitebalance or gamma correction code, see my previous blog post:&lt;br /&gt;http://hansdegoede.livejournal.com/6661.html&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;br /&gt;</description>
  <comments>http://hansdegoede.livejournal.com/8140.html</comments>
  <category>kernel</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/7932.html</guid>
  <pubDate>Thu, 02 Jul 2009 08:08:15 GMT</pubDate>
  <title>FAQ: Why did my sensors stop working in F-11 / with kernel 2.6.31 ?</title>
  <link>http://hansdegoede.livejournal.com/7932.html</link>
  <description>Hi all,&lt;br /&gt;&lt;br /&gt;In the 2.6.29 kernel in F-11 and in the mainline 2.6.31 kernel, there is a change which causes hardware monitoring (also called sensors) to no longer work on some motherboards. If this is happening for your motherboard, then when the lm_sensors service is starting you are probably getting an error like this:&lt;br /&gt;&lt;pre&gt;
FATAL: Error inserting it87
(/lib/modules/2.6.29-15.fc11.x86_64/kernel/drivers/hwmon/it87.ko): Device or
resource busy
&lt;/pre&gt;And if you look at the kernel messages (using the dmesg command in a terminal for example)&amp;nbsp; you will probably see something like this:&lt;br /&gt;&lt;pre&gt;
ACPI: I/O resource it87 [0x295-0x296] conflicts with ACPI region IP__
[0x295-0x296]
ACPI: Device needs an ACPI driver
&lt;/pre&gt;With previous kernels hwmon drivers used to drive IO ranges which were potentially used by the ACPI code&amp;nbsp; in your BIOS (which is active not only during but also after boot), we now explicitly check for this and if the ACPI code claims the IO-ports used by the hwmon chip, we no longer allow the hwmon driver to load. &lt;br /&gt;&lt;br /&gt;Banging IO-ports of a chip from 2 different drivers, the Linux hwmon driver and the ACPI code is a *really* bad idea and can cause all sort of issues (including things like changing CPU / RAM voltage or clock speed). So the old behaviour was a &lt;strong&gt;really&lt;/strong&gt; bad idea.&lt;br /&gt;&lt;br /&gt;So even though this change in behaviour makes some people unhappy as to old behaviour happened to work without problems in their case (by sheer luck really), this change is really for the best!&lt;br /&gt;&lt;br /&gt;If you want to restore the old behaviour (which might be dangerous) add: &amp;quot;acpi_enforce_resources=lax&amp;quot; to the kernel cmdline when booting (or add it in grub.conf to make this permanent).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;p.s.&lt;br /&gt;&lt;br /&gt;Note that this change actually first appeared in the mainline 2.6.30 kernel, but due to a bug in 2.6.30, it didn&apos;t take effect until 2.6.31, see:&lt;br /&gt;http://bugzilla.kernel.org/show_bug.cgi?id=13967&lt;br /&gt;</description>
  <comments>http://hansdegoede.livejournal.com/7932.html</comments>
  <category>kernel</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/7622.html</guid>
  <pubDate>Mon, 22 Jun 2009 10:33:58 GMT</pubDate>
  <title>libv4l testing instructions</title>
  <link>http://hansdegoede.livejournal.com/7622.html</link>
  <description>Hi all,&lt;br /&gt;&lt;br /&gt;Every now and then I need to ask people to test the latest libv4l, so I decided it would be a good idea to post some generic testing instructions here to have a place to point people to:&lt;br /&gt;&lt;br /&gt;1. Install&lt;br /&gt;=======&lt;br /&gt;&lt;br /&gt;libv4l needs make, a working C-compiler (gcc), and libjpeg +&lt;br /&gt;its header files to build. If you don&apos;t have these you need to install them&lt;br /&gt;first. See your distributions documentation on how to install make and&lt;br /&gt;the compiler (often called development tools / chain). For libjpeg,&lt;br /&gt;you need to install the libjpeg62-dev under Debian/Ubuntu and the&lt;br /&gt;libjpeg-devel package under Fedora / RHEL.&lt;br /&gt;&lt;br /&gt;Howto install and test libv4l depends on your system. There are&lt;br /&gt;different instructions for if you have a 32 bit system or a 64 bit system.&lt;br /&gt;which is using multilib. A 64 bit system without multilib is the same as&lt;br /&gt;a 32 bit system.&lt;br /&gt;&lt;br /&gt;To find out what you have do:&lt;br /&gt;ls -d /usr/lib64&lt;br /&gt;&lt;br /&gt;If this command gives a &amp;quot;No such file or directory&amp;quot; error, use the&lt;br /&gt;Non multilib instructions, if this command is successfull, you likely have multilib.&lt;br /&gt;&lt;br /&gt;Note: I&apos;ve received some reports that there us a /usr/lib64 directory on some 32&lt;br /&gt;bit installs of Ubuntu. If you&apos;re quite sure you are running a normal (32 bit) version&lt;br /&gt;of Ubuntu you likely are and you should follow the Non multilib instructions.&lt;br /&gt;&lt;br /&gt;Ok, so you have a multilib system, to find out which (dubbed Fedora and Ubuntu&lt;br /&gt;multilib, because those are the most well known examples, do):&lt;br /&gt;&lt;br /&gt;ls -d /usr/lib32&lt;br /&gt;If this command gives a &amp;quot;No such file or directory&amp;quot; error, use the Fedora multilib&lt;br /&gt;instructions. If this command succeeds use the Ubuntu multilib instructions. Note&lt;br /&gt;the ubuntu multilib instructions also apply to gentoo and the Fedora multilib instructions&lt;br /&gt;also apply to [open]Suse.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Non multilib instructions:&lt;br /&gt;-------------------------------&lt;br /&gt;tar xvfj v4l-utils-&amp;lt;version&amp;gt;.tar.bz2&lt;br /&gt;cd v4l-utils-&amp;lt;version&amp;gt;/lib&lt;br /&gt;make PREFIX=/usr&lt;br /&gt;sudo make install PREFIX=/usr&lt;br /&gt;&lt;br /&gt;Fedora Multilib instructions:&lt;br /&gt;-----------------------------------&lt;br /&gt;Basic 64 bit install:&lt;br /&gt;tar xvfj v4l-utils-&amp;lt;version&amp;gt;.tar.bz2&lt;br /&gt;cd  v4l-utils-&amp;lt;version&amp;gt;/lib&lt;br /&gt;make PREFIX=/usr LIBDIR=/usr/lib64&lt;br /&gt;sudo make install PREFIX=/usr LIBDIR=/usr/lib64&lt;br /&gt;&lt;br /&gt;If you also want to use 32 bit apps (such as skype), you&lt;br /&gt;will need to have the 32 bit libc headers installed, on Fedora&lt;br /&gt;this can be done like this:&lt;br /&gt;Fedora 10-: &amp;quot;sudo yum install glibc-devel.i386&amp;quot;&lt;br /&gt;Fedora 11:&amp;nbsp; &amp;quot;sudo yum install glibc-devel.i586&amp;quot;&lt;br /&gt;Fedora 12+: &amp;quot;sudo yum install glibc-devel.i686&amp;quot;&lt;br /&gt;[open]Suse: install&lt;span style=&quot;font-family: monospace;&quot;&gt; &lt;/span&gt;glibc-devel-32bit and gcc-32bit&lt;br /&gt;&lt;br /&gt;Then do:&lt;br /&gt;make clean&lt;br /&gt;make PREFIX=/usr CFLAGS=-m32 LDFLAGS=-m32&lt;br /&gt;sudo make install PREFIX=/usr&lt;br /&gt;&lt;br /&gt;Ubuntu Multilib instructions:&lt;br /&gt;-----------------------------------&lt;br /&gt;tar xvfj v4l-utils-&amp;lt;version&amp;gt;.tar.bz2&lt;br /&gt;cd  v4l-utils-&amp;lt;version&amp;gt;/lib&lt;br /&gt;make PREFIX=/usr&lt;br /&gt;sudo make install PREFIX=/usr&lt;br /&gt;&lt;br /&gt;If you also want to use 32 bit apps (such as skype), you&lt;br /&gt;will need to have the 32 bit libc headers installed, on Ubuntu&lt;br /&gt;this can be done like this:&lt;br /&gt;sudo apt-get install libc6-dev-i386&lt;br /&gt;On gentoo this can be done like this:&lt;br /&gt;sudo emerge -v app-emulation/emul-linux-x86-compat&lt;br /&gt;Then do:&lt;br /&gt;make clean&lt;br /&gt;make PREFIX=/usr CFLAGS=-m32 LDFLAGS=-m32 LIBDIR=/usr/lib32&lt;br /&gt;sudo make install PREFIX=/usr LIBDIR=/usr/lib32&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;2. Testing&lt;br /&gt;========&lt;br /&gt;You have a chance that your webcam app use libv4l or have an appropriate&lt;br /&gt;script starting it. In that case you don&apos;t have to do anything. Just run&lt;br /&gt;the application. This is the most common situation with Ubuntu and Fedora&lt;br /&gt;packages. If your problem remains unsolved, then your app might not use libv4l.&amp;nbsp;&amp;nbsp; &lt;br /&gt;In that case start the application from a terminal like this:&lt;br /&gt;&lt;br /&gt;Non multilib:&lt;br /&gt;----------------&lt;br /&gt;LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so &amp;lt;your favorite webcam app&amp;gt;&lt;br /&gt;&lt;br /&gt;Note on Ubuntu sometimes skype is using a wrapper script, so if skype&lt;br /&gt;does not work try:&lt;br /&gt;   LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype.real&lt;br /&gt;  &lt;br /&gt;Fedora multilib:&lt;br /&gt; --------------------&lt;br /&gt;For 64 bit applications (allmost all apps):&lt;br /&gt;LD_PRELOAD=/usr/lib64/libv4l/v4l1compat.so &amp;lt;your favorite webcam app&amp;gt;&lt;br /&gt;&lt;br /&gt;For 32 bit applications (you only need it for proprietary softwares, which&lt;br /&gt;don&apos;t have a 64 bit version, like skype):&lt;br /&gt;LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype&lt;br /&gt;&lt;br /&gt;Ubuntu multilib:&lt;br /&gt;--------------------&lt;br /&gt;For 64 bit applications (allmost all apps):&lt;br /&gt;LD_PRELOAD=/usr/lib64/libv4l/v4l1compat.so skype&lt;br /&gt;&lt;br /&gt; For 32 bit applications (you only need it for proprietary softwares, which&lt;br /&gt;don&apos;t have a 64 bit version, like skype):&lt;br /&gt; LD_PRELOAD=/usr/lib32/libv4l/v4l1compat.so skype&lt;br /&gt; &lt;br /&gt;Note on Ubuntu sometimes skype is using a wrapper script, so if skype&lt;br /&gt;does not work try:&lt;br /&gt;  LD_PRELOAD=/usr/lib32/libv4l/v4l1compat.so skype.real</description>
  <comments>http://hansdegoede.livejournal.com/7622.html</comments>
  <category>kernel</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/7219.html</guid>
  <pubDate>Fri, 19 Jun 2009 12:24:29 GMT</pubDate>
  <title>New webcam drivers heading upstream</title>
  <link>http://hansdegoede.livejournal.com/7219.html</link>
  <description>Hi All,&lt;br /&gt;&lt;br /&gt;I&apos;m happy to report that  I&apos;ve managed to free some time, to work on getting more webcam drivers into the mainline kernel. I&apos;ve just finished adding support for ov511 / ov518 and st6422 drivers to my gspca tree:&lt;br /&gt;&lt;a href=&apos;http://linuxtv.org/hg/~hgoede/gspca&apos; rel=&apos;nofollow&apos;&gt;http://linuxtv.org/hg/~hgoede/gspca&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Covering all the cams previously supported by the out of tree ov51x-jpeg and qc-usb-messenger drivers. These drivers&lt;br /&gt;will appear in the mainline kernel in 2.6.31 .&lt;br /&gt;&lt;br /&gt;Note to people who want to give this a try (see previous blog post for compile instructions) the ov51x cams also require the use of the latest libv4l:&lt;br /&gt;&lt;a href=&apos;http://linuxtv.org/hg/~hgoede/libv4l&apos; rel=&apos;nofollow&apos;&gt;http://linuxtv.org/hg/~hgoede/libv4l&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Time to update:&lt;br /&gt;&lt;a href=&apos;http://fedoraproject.org/wiki/Features/BetterWebcamSupport#Test_Plan&apos; rel=&apos;nofollow&apos;&gt;http://fedoraproject.org/wiki/Features/BetterWebcamSupport#Test_Plan&lt;/a&gt;&lt;br /&gt;And mark a number of cams as working now :)</description>
  <comments>http://hansdegoede.livejournal.com/7219.html</comments>
  <category>kernel</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/6989.html</guid>
  <pubDate>Mon, 15 Jun 2009 21:47:01 GMT</pubDate>
  <title>Linuxtag &amp; Webcams</title>
  <link>http://hansdegoede.livejournal.com/6989.html</link>
  <description>Hi all,&lt;br /&gt;&lt;br /&gt;I&apos;ll be going to Linuxtag, or rather to the Fudcon which is held partially overlapping and after Linuxtag. Recently I&apos;ve been able to make some more time free to work on v4l / webcams and I&apos;ve been making some nice progress with some things I&apos;ve wanted to fix for a long time now. so I&apos;m going to do another Better Webcam Support as a Feature during the F-12 cycle, see the updated Feature page:&lt;br /&gt;&lt;a href=&apos;https://fedoraproject.org/wiki/Features/BetterWebcamSupport&apos; rel=&apos;nofollow&apos;&gt;https://fedoraproject.org/wiki/Features/BetterWebcamSupport&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;As such I&apos;m planning on doing a (one man?) hack session for webcam support during Fudcon, and I would like to invite everyone to bring their webcams! Esp once which are not working, or are working poorly. Preferably to donate them so&lt;br /&gt;I have some more different models to test with, but I&apos;ll also be very happy to just play a bit with them during the Fudcon.&lt;br /&gt;&lt;br /&gt;So for those who looked at the feature page and noticed I already have 37 cams, why do I need so much cams ? Well thats quite simple a cam consists of a sensor which captures the actual image and a separate bridge which compresses it and transfers it over usb. And each combination of these 2 often requires totally different register writes for both the&lt;br /&gt;bridge and the sensor to get the combination to work. So lets say we have 15 different bridges and 15 different sensors, then in total we&apos;ve 225 different combinations, in my experience sofar the real number of existing webcams which need their own peculiar way of driving them isn&apos;t all that far away from this number.&lt;br /&gt;&lt;br /&gt;So given that each bridge / sensor combo is unique, the easiest way for me to reproduce and fix problems is actually holding a cam, or one which is very much alike in my hands.</description>
  <comments>http://hansdegoede.livejournal.com/6989.html</comments>
  <category>kernel</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/6661.html</guid>
  <pubDate>Tue, 26 May 2009 18:35:44 GMT</pubDate>
  <title>libv4l: Now with whitebalance and gamma correction</title>
  <link>http://hansdegoede.livejournal.com/6661.html</link>
  <description>Hi all,&lt;br /&gt;&lt;br /&gt;I&apos;m happy to announce a new libv4l which adds support for video processing / filters to improve the image quality with some webcams. With certain cheap webcams this makes the image quality a lot better!&lt;br /&gt;&lt;br /&gt;Please give it a try, to try it out do:&lt;br /&gt;yum install--enablerepo=updates-testing libv4l v4l2ucp&lt;br /&gt;&lt;br /&gt;This probably will not work yet for those of you already running F-11, in that case download the rpms from here and install them manually:&lt;br /&gt;&lt;a href=&apos;http://koji.fedoraproject.org/koji/buildinfo?buildID=103619&apos; rel=&apos;nofollow&apos;&gt;http://koji.fedoraproject.org/koji/buildinfo?buildID=103619&lt;/a&gt;&lt;br /&gt;&lt;a href=&apos;http://koji.fedoraproject.org/koji/buildinfo?buildID=103616&apos; rel=&apos;nofollow&apos;&gt;http://koji.fedoraproject.org/koji/buildinfo?buildID=103616&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Then run v4l2ucp, you should now amongst other controls see 2 controls labelled: &amp;quot;Whitebalance (software)&amp;quot; and &amp;quot;Gamma (software)&amp;quot;. If you do not see these 2 controls, you&apos;ve a cam which does not need conversion (delivers frame data in plain YUV or RGB all by itself), most likely a UVC based webcam, where doing this in software is not needed.&lt;br /&gt;&lt;br /&gt;For most cams the Whitebalance control is disabled by default and the Gamma defaults to 1000 (1.0), which means it is also effectively disabled. libv4l already recognizes some cams which get a significant better picture with Whitebalance and or gamma correction active, and will enable it be default on these cams.&lt;br /&gt;&lt;br /&gt;This is where I need your help, start a webcam appplication, cheese for example and then try enabling the whitebalance and try playing with the Gamma slider. If either of them significantly improves the picture quality please drop me a mail which setting is best for your cam and don&apos;t forget to include the USB-ID&apos;s then I&apos;ll include those settings as default settings for cams with that ID.</description>
  <comments>http://hansdegoede.livejournal.com/6661.html</comments>
  <category>kernel</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
<item>
  <guid isPermaLink='true'>http://hansdegoede.livejournal.com/6630.html</guid>
  <pubDate>Mon, 24 Nov 2008 12:04:06 GMT</pubDate>
  <title>Howto use / try the latest development gspca version</title>
  <link>http://hansdegoede.livejournal.com/6630.html</link>
  <description>Hi All,&lt;br /&gt;&lt;br /&gt;So I&apos;ve been getting several reports about cams which used to work with the old gspca no longer working with the in kernel gspca, even when using libv4l. The first thing to do when debugging this is try the latest gspca devel version from git (well mercurial actually). So I thought it would be good to write a little blog post on how to use gspca from mercurial so I have a single place to point people to when I want them to do this.&lt;br /&gt;&lt;br /&gt;First of all you need to make sure you have the kernel headers for the kernel you are running installed, and also gcc, make and mercurial. Under Fedora this can be done with the following command:&lt;br /&gt;&amp;quot;yum install kernel kernel-devel gcc make mercurial&amp;quot;&lt;br /&gt;&lt;br /&gt;Note if this command installs a new kernel, first reboot into this new kernel before continuing.&lt;br /&gt;&lt;br /&gt;Now do:&lt;br /&gt;hg clone &lt;a href=&apos;http://linuxtv.org/hg/~jfrancois/gspca/&apos; rel=&apos;nofollow&apos;&gt;http://linuxtv.org/hg/~jfrancois/gspca/&lt;/a&gt;&lt;br /&gt;cd gspca&lt;br /&gt;sudo make menuconfig&lt;br /&gt;make&lt;br /&gt;sudo make install&lt;br /&gt;reboot&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;1) There is no need to make any changes in make menuconfig&lt;br /&gt;2) make menuconfig needs sudo as it wants to write .o files for the menuconfig executable to /usr/src/kernel/.....&lt;br /&gt;3) The reboot is needed as this will also replace videodev.ko and that might already be loaded (and in use) on your &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; system.&lt;br /&gt;&lt;br /&gt;Now plug in your webcam, start some app to test it and hopefully it will work :)</description>
  <comments>http://hansdegoede.livejournal.com/6630.html</comments>
  <category>kernel</category>
  <category>fedora</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
</channel>
</rss>
