Entries Tagged as ''

Ubuntu Answers…

Free and open-source software offers many challenging tasks for you to undertake. One of them is to answer questions that newbies ask.

Offering support to newbies is challenging for several reasons:

  • the problem may not have been described reasonably well
  • you need to figure out the least amount of extra information you need, and ask easy questions to the user to fill in the blanks
  • you have to take control of the direction of solution and make sure the user follows your steps correctly
  • you have to put up with the occasional demanding user

Ubuntu offers a system that users can ask questions and have volunteers answer them. It is called Ubuntu Answers. Unlike forums, here you log in to your launchpad.net account and simply write your question. You start off with a question title, and when you click Next, you are shown with potential answers from previous questions asked and are similar to yours. Really nice.

In order to motivate people to contribute, Launchpad assigns points for every answer you give, and more points for any answer that was marked that solved the problem. This is the karma value of your Launchpad account. There is a list of top contributors for different Launchpad services.

Here are some direct links

A tip to users asking questions: it is good etiquette to respond to the answers that are given to you. There are cases that a question is answered but not acknowledged that it actually solved the problem. Due to this, the solution does not appear when a someone else asks a new question.

 

What I recommend is to try out Ubuntu Answers. Either ask a question or help with answering questions. It is a good experience.

One-line hardware support (USB Wireless Adapter)

I got recently a USB Wireless Adaptor, produced by Aztech. It was a good buy for several reasons:

  • It advertised Linux support
  • It was affordable
  • It had good quality casing; you can step on it and it won’t break
  • It had the Penguin on the box and was really really cheap

When I plugged it in on my Linux system, it did not work out of the box. The kernel acknowledged that a USB device was inserted (two lines in /var/log/messages) but no driver claimed the device.

With the package came a CD which had drivers for several operating systems, including Linux. Apparently one would need to install the specific driver. I think the driver was available in both source code and as a binary package (for some kernel version).

The kernel module on the CD was called zd1211, so I checked whether my kernel had such a module installed. To my surprise, there was such a kernel module, called zd1211rw. I hope you have better chance with the URL because now the website appears to be down (Error 500).

Therefore, what was wrong with my zd1211rw kernel module? Reading the documentation of project website, I figured out that you have to report the ID (called the USB ID) of your adapter  so that it is included in the kernel module, and when you plug in your device, it will be automatically detected.

You can find the USB ID by running the command lsusb. Then, it is a one-line patch for the zd1211rw driver to add support for the device,

— zd1211rw.linux2.6.20/zd_usb.c      2007-09-25 14:48:06.000000000
+0300
+++ zd1211rw/zd_usb.c    2007-09-28 11:35:51.000000000 +0300
@@ -64,6 +64,7 @@
{ USB_DEVICE(0×13b1, 0×0024), .driver_info = DEVICE_ZD1211B },
{ USB_DEVICE(0×0586, 0×340f), .driver_info = DEVICE_ZD1211B },
{ USB_DEVICE(0×0baf, 0×0121), .driver_info = DEVICE_ZD1211B },
+       { USB_DEVICE(0×0cde, 0×001a), .driver_info = DEVICE_ZD1211B },
/* “Driverless” devices that need ejecting */
{ USB_DEVICE(0×0ace, 0×2011), .driver_info = DEVICE_INSTALLER },
{ USB_DEVICE(0×0ace, 0×20ff), .driver_info = DEVICE_INSTALLER },

What Aztech should have done is to submit the USB ID to the developers of the zd1211rw driver. In this way, any Linux distribution that comes out with the updated kernel will have support for the device.

It is very important to get the manufacturers to change mentality. From offering a CD with “drivers”, for free and open-source software they should also work upstream with the device driver developers of the Linux kernel. The effort is small and the customer benefits huge.