News archive 2004
September 6th, 2004
Ok, for once
, I'm not talking about a wireless device or driver. Instead, I've got to recount my adventures with moving my wife and her sony vaio pcg-fx215 notebook
to Linux. Yep, you heard correctly, since about the middle of August, she's been using and enjoying(not!) Fedora Core 2
. This has been and continues as a fascinating test of Linux on the desktop by a complete newbie. It's really been eye-opening to see what kinds of objections are raised and what constitutes an acceptable solution from my wife, the newbie's point of view.
As is usually the case with Linux on a laptop, there were some hardware issues. Here's the short list in order of importance (hers, not mine):
- Touchpad scrolling not working
- Mozilla's "hand" cursor looks like it's "giving her the finger" (it kinda really does, hehe)
- Suspend/resume not working, not suspend-to-ram, not standby, not suspend-to-disk (this is unacceptable to us both)
- Evolution's composer does not use the familiar-to-her icons from Outlook on the buttons for bold, italic, underline, etc.
- The system is "slow" and takes too long to boot up (of course, it boots up waaaaay too often, see #3)
I decided to tackle the touchpad first and as I did some googling for info related to the touchpad, I was truly amazed at how many Linux users claimed that their touchpads were working fine, when in fact they were just using the built-in PS/2 mouse emulation and not able to use the scrolling and other cool features offered by these input devices. This goes along with my theory that we Linux users have become so conditioned to expect that not everything is going to work, that we are easily content with partially/non functional devices. I admit, I also would have been contented with the basic PS/2 mouse emulation provided by this touchpad. My wife refused to accept this, she wanted the scrolling to work. The eye-opening had begun.
I finally found a smart guy who likes to blog (thank God!) and who also wanted the cool features of his Alps touchpad: chakravyuh.blogspot.com
and I was off. Folks, this is one time where a complete kernel recompile
just had to be. Normally, it's a complete last resort, but in this case the touchpad would not be recognized as such until the psmouse driver was compiled as a module. I checked the default kernels installed by Slackware, Knoppix, Mepis, Redhat, SuSE and of course, Fedora, and do you know that every one of them has the psmouse support "compiled in" and not as a module, DOH!
While I may eventually create a separate, more detailed howto page for this (and perhaps linux on a sony vaio pcg-fx215 as well), for now, here's what to do if you have an Alps or Synaptics touchpad and would like it to do the cool things that it's capable of. C'mon Linux users! don't settle! This works and it's a lot nicer to use than the default PS/2 mouse emulation.
- See if you're really lucky and your touchpad is recognized as such, run cat /proc/bus/input/devices and see if you've got a touchpad or a generic ps/2 mouse listed.
- If you got a generic PS/2 mouse in #1, then check your kernel by doing a: grep CONFIG_MOUSE_PS2 /boot/* from the commmand line and see if you'll need to recompile the kernel, most likely you will. Unless it comes back with CONFIG_MOUSE_PS2=m, it's time to find that line in the .config file located in your kernel source directory and change it from "y" to "m", then, run make and make modules_install (this is all for 2.6.x kernels and you may have to install the development packages and the kernel-source[code] package first).
- The next morning (hehe), download and unpack the synaptics driver found at telia.com and compile/install it according to the docs included, I used v13.5. You may have to install additional "X development" packages/libraries for this, these were all included on the Fedora Core 2 cd's.
- As root, open your /etc/X11/xorg.conf or XF86Config-4 or XF86Config file, depending on what X windows system is installed. For Fedora Core 2, this is /etc/X11/xorg.conf. Edit that file according to the docs included in the synaptics package and consult the alps.readme if that is your touchpad (as returned by cat /proc/bus/input/devices). Note that with Fedora 2 and it's 2.6.7 kernel, no kernel source patching was required, they're already in there.
- restart X (ctrl+alt+backspace and possibly also a startx) and enjoy
- If you've enabled the SHMConfig in your X config file (xorg.conf for FedCore2), and if you ran the make install of the synaptics driver, then you can begin to discover and tweak the settings for the touchpad in real-time without restarting X by using the synclient command-line program to list and change the parameters
- The settings (so far) that seemed to make the most difference on my wife's vaio were: FingerHigh/FingerLow = 8 and ClickTime = 25. This still needs tweaking for her taste, but at least the touchpad is "off the list"
Ok, I know I said "no wireless stuff" this time, but I really should mention that thanks to this fine, fully open-source driver for admtek cards
, she's been able to use the same dwl-650v2 wireless card for Linux and windows. This was my first time trying this fully open source solution for admtek devices, and it has performed flawlessly
on Fedora 2's 2.6.7
kernel, obviously, I'm gonna have to get a howto page together for these cards, this driver is great!
July 18th, 2004
And once again I'm talking about a wireless driver for Linux...who knew? This time it's the sometimes misunderstood (hotly debated?) ndiswrapper
project and it works well. If you're a linux user who happens to own one of several completely un
supported wireless cards, and can't return it (most likely because you've spent the last 45 days trying to get it working ;), then this project is for you. If, on the other hand, you'd sooner use your unsupported card as an impromptu throwing-star rather than to load the guts of it's *gasp...* windows
driver into your pristine linux kernel, then this project is decidedly not
There are convincing arguments from people for whom I have a great deal of respect on both sides of the issue. Certainly it benefits linux in the long-run to have native, manufacturer supported or developed drivers just like windows' users get. Whether linux users returning their unsupported cards en-masse to the stores with complaints about lack of linux support ever gets the true attention of those who need to hear about it (before the card is obsolete, that is) is certainly a concept that is debatable. On the other hand, most would agree that having a demonstrable, ever-growing linux market share would most likely get their attention in a bigger, better way. So, you can either keep your linux installed, and keep booting to it (Unlike me, I'll bet most of you dual-boot xp/linux ;) and use your as-of-yet unsupported card with ndiswrapper, or you can refuse to keep or use anything that doesn't have native linux support, in which case you can stop reading now, and flame me later... ;).
Personally, I'd fall into the former category. However, thanks to the great effort of several different teams of developers, none of my 9 wireless devices (yes, 2 more than I have computers for, but some boxes get 2 of them) qualify as being completely unsupported, if you're curious what these are, and what's inside them, here's the complete list in their order of acquisition: (you just knew you wanted to know ;)
1. This is a partially closed-source driver for only 2.4.xx kernels from ADMtek, here is a very active, fully open source admtek driver for both 2.4 and 2.6 kernels, which I have not yet tested
2. The orinoco drivers are most likely already installed on your system
3. I do not have this device working w/linux yet, and I'll admit, I'm not fond of wlan-ng's driver.
4. This device works with the OS driver, but not all features are fully supported yet.
Ok, now where was I?...oh, right. Let's get back to ndiswrapper. I used version 0.8 and I must say, it's a pretty painless process to compile/install, which you have to do only once, see the documentation. Then you can add/remove any number of (supported) cards' windows' drivers and try them out.
After that you use iwconfig and friends as well as ifconfig and even dhcpcd to configure the card like any other linux wireless device. This is perhaps the most admirable thing about ndiswrapper in that it fully supports the wireless-tools. I wish all linux wireless drivers would standardize on using the wireless-tools (wlan-ng? are you listening?).
The experience thus far with my cards that are supported has been nothing short of stellar
, with no serious problems to report, there are some quirks. Performance seems to be surprisingly good given the extra layer, and the reliability is solid. I certainly recommend this package to anyone who has a card that is completely or poorly unsupported under linux and in the list of supported cards
. If you have not yet bought your card, obviously, one with a native linux driver is still the best choice.
Of course, for most of my cards the open source drivers offer far greater functionality, flexibility and features that are, and will probably always be missing from windows' ndis drivers loaded into linux. So if you're looking for things like hostap or advanced monitoring, choose a card that is supported fully with an open source driver. Yes, it's been difficult to know beforehand whether your card is supported (why do you think I ended up with so many devices?), so make sure you buy from a vendor with a liberal return policy.
May 2nd, 2004
Oops, I seemed to have missed the month of April entirely, not sure how that happened, always so short on time anymore...Anyway, as you may have guessed I'm posting once again regarding the acx100 devices/driver. This time however, I'm posting this using a DWL-120+ USB device
, which I bought from eBay
for all of $31 total, a nice deal. Just a quick plug for eBay and it's sellers: I've never had a problem with any of the purchases I've made from there, it's always been a good experience. While I'm at it, I should mention that attempted
to get this device "used" first from one of Amazon.com
's sellers, however there was a mix-up and the wrong device was sent (a plain DWL-120, which is prism2, not acx100). Folks, not only did I get a prompt and courteous refund, but I was also told to keep
the device, now that's
what I call a good experience. Once again, my collection of wireless devices grows for the strangest reasons...
Back to the topic: Yes, preliminary support for USB
devices is now in the linux acx100 driver
and is working even as we speak on my Slackware
.3 installation. I have also tested successfully w/Slack9.1 and kernel 2.4.24. The usb support is a bit picky at the moment, so here's a little list of commands that I'm using. First though, set the 'other' wireless device that you're going to ad-hoc with to channel 1, no WEP
and a rate of 11Mbps along with giving it an essid or 'station' name and a 'private' ip address, I use 10.0.0.1. Now here's what I do with the dwl-120+ using driver version 0.2.0pre8_plus_fixes_3
- First of all, create the directory /etc/acx100, then place the firmware file ACX100.bin (from the Windows driver) in that directory. While the acx_pci module now looks for firmware in /usr/share/acx, the acx_usb module does not.
- modprobe acx_usb (at this point, the module is not auto-loading on device insertion)
- ifconfig wlan0 10.0.0.2 (10.0.0.2 goes along with the 'other' box's 10.0.0.1, I really no longer recommend mtu 576 for the acx_usb module, try not using it and see what happens.)
- iwconfig wlan0 mode ad-hoc essid any (if more than one ad-hoc is in range, then specify the essid or 'station' name you gave the 'other' device you're trying to ad-hoc with.
- try it out: ping -c 4 -I wlan0 10.0.0.1
Note: if your dwl-120+ is the 2nd acx100 device in the machine, as it is with me, then substitute wlan1 for wlan0 in the above commands.
In order for me to access the internet with this device, I've temporarily set up my old Compaq 400cx
) as a wireless router. It contains my Belkin F5D6020 wireless card and a Linksys pcm100 wired card connected to my SMC wireless router, which is connected to a switch connected to my Netgear wired router, which is connected to the cable modem, kind of a heavy metric ay?...as I said, it's temporary. The Compaq (using Slack 9.0) is set to do IP masquerading (NAT
) with the wireless device as the internal interface, and the wired device as the external. Here's the very helpful IP Masquerading Howto
that I used. Once the Compaq was set up, I only needed to set my dwl-120+'s gateway to the Compaq's internal interface's address (Belkin wireless card is set to 10.0.0.1) you may also need to add that same IP address as a nameserver in your /etc/resolv.conf, depending. If any of this seems confusing, first see the masquerading howto, it should then begin to make sense.
March 28th, 2004
There is now a page for downloading and using my brand spankin' new acXmonitor
for the acx100 cards in FreeBSD 5.2. It's only for use with the FreeBSD acx100 driver
and FreeBSD 5.2 or later, so upgrade if you need to and I think it goes without saying that this app is a work-in-progress. The similar app for Linux which is "coming soon", is intended to work with *any* wireless Linux interface, not just the acx100 devices.
The "toolkit" I've chosen for this project's X-Windows user interface in both Linux and FreeBSD is called: FLTK
. Pronounced "fulltick", it's the "fast, light, tool kit". It's really well done and very easy to use and understand. It produces very small, yet statically-linked executables, a very nice product.
March 25th, 2004
Sometime today, a momentous
occasion occurred here at the HoC
. Today marks the first time ever
that the data transferred in a given month has reached a gigabyte
or more. I'm making burgers and fries in celebration *grin*.
In other news, the wireless monitor mentioned below is now functional with my acx100 cards and the FreeBSD acx100 driver
as well, I'd post another screenshot, but it looks identical to the Linux shot and there's no need to waste space or bandwidth. I have once again remembered why C is/was always my language of choice: it's the portability and the familiarity. Porting my Linux code to FreeBSD was nearly painless.
March 23rd, 2004
I'm trying hard not to let yet another month go by without a "news" update, otherwise people may think I'm dead *grin*. Apparently, today I'm succeeding :^D, yay!. Anyway, I've once again been hard-at-work, and spent this entire past weekend writing a wireless signal monitor for Linux using the fabulous FLTK
toolkit, which I simply love. Now that I've finally
solved the annoying segfault-on-exit problem with the monitor, it's very-soon-to-be-ported to FreeBSD 5.2 as well, and ultimately focused on monitoring (yes, you guessed it!)
the acx100 driver for FreeBSD 5
. For the ridiculously bored and/or curious here's a screen shot of my new wireless signal monitor in action
monitoring 3 different interfaces simultaneously
running on my everyday desktop: (you know it by now don't you?) Slackware 9.1
(kernel 2.4.24). There are 3 instances of my app running in the screenshot, with the left being my atmel-based USB wireless adapter
(eth0), and the middle being my acx100 card
(wlan0), and finally, the right being my atmel-based Belkin card
(atml0). FreeBSD 5.2 acx100 card users:
my signal monitoring application (and it's source) is "coming soon" to a laptop near you...
March 10th, 2004
Can you tell that I've been a bit busy of late? (apparently the whole month of February, heh). I've got a couple of things to report, first, a complete re-write of my Belkin howto, which is now named: Craig's Guide to the Belkin F5D6020 version 2
is nearly ready. I've decided to lose the word "howto" since by The Linux Documentation Project
standards, it's really not a howto and I completely agree with their standards. The link above takes you to it, but understand that it's not complete
. This is an updated guide to getting your Atmel-based PCMCIA card working with your chosen Linux Distro. If it weren't for Mandrake and the silly crashing issue that the SourceForge Atmelwlandriver's source runs into on their distro(s), I'd be including instructions for Atmel USB devices as well. Since I haven't solved the issue yet (without resorting to a completely different driver) I won't be including Atmel-USB devices just yet, I'm hoping to get this resolved and add that support as well in the future.
Yes, I've taken the plunge into the latest Linux kernel in the form of Slackware-current's "testing" area on a certain ftp server in Sweden
and downloaded, compiled, tweaked and am now enjoying the the Linux 2.6.3 kernel on Slackware 9.1 (still my favorite desktop, go figure!). My thoughts so far are that it's definitely more responsive (once you get it compiled correctly(think preemptive kernel), hehe) and that all the wireless cards mentioned before: Acx100, Atmel PCMCIA and Prism play nice with the new kernel. The partially-closed-source ADMtek driver for my DWL-650v2 card won't work
with 2.6.3...yet. Not a big surprise since this kernel changes a lot of things regarding kernel modules and the admtek driver has not been upgraded for it. One of the biggest changes for all of us acx100 open-source driver
users (and absolute shame on all of you ndis driver loader users for acx100. Yes, we could use your help testing the open source driver, please: switch...now!!
) is that the things you used to do in /etc/modules
.conf now need to be done in /etc/modprobe
.conf. Google/linux on modprobe.conf and you'll be well on your way.
January 26th, 2004
Another couple of days with FreeBSD...
In addition to my ACX100 card (SMC 2435w), I now have APM
(for KDE's battery monitor), printing
, and sound
all working with FreeBSD 5.2rc2 on my Thinkpad 600, not to mention the ability to mount the 9 other linux distro's partitions installed on the same disk within FreeBSD. This essentially puts FreeBSD 5.2 at the same level of functionality as my "normal" everyday desktop: Slackware
9.1. I have to tell you, I'm quickly growing fond
of FreeBSD and I've only had it installed for 4 days now, in which I have not booted up linux more than once
. The sound (integrated crystal sound cs4232, not pnp) on my Thinkpad 600 was a bit of a pain to get going in that I had no choice but to compile a new kernel for FreeBSD
to get it working, which is odd to me, and somewhat disturbing since the chipset is old and popular and I wonder why it would not be in the "generic" FreeBSD kernel, who knows...Anyway, much like Linux, compiling and installing a new kernel is not exactly rocket science
, but does
require (as with most things for a BSD newbie like me) frequent visits to the FreeBSD Handbook
, which, in addition to being my FreeBSD homepage, is a very thorough and complete guide to installing, administering and using FreeBSD, highly recommended as is BSDforums.org
I would have to say at this point that FreeBSD, despite what you may have heard, has been as easy to install and easier to configure
than most Linux distros I have installed. Let's not forget the fact that the annoying legal case (SCO v. the world, hehe) being tried presently has nothing to do with any of the *BSD's
and it gives you something to think about when it comes to trying out one for everyday desktop use...Folks, so far I can recommend FreeBSD
As you may have already guessed, a HowTo page for "FreeBSD 5.x on a ThinkPad 600" is coming soon, in addition to an even sooner appendix for FreeBSD 5.2 on the acx100 howto page...stay tuned.
January 24th, 2004
And once again I'm talking about an acx100 driver, however, this time it's ACX100 Success on FreeBSD 5.2!
. Yes folks, thanks to one Darron Broad
over at wlan.kewl.org
, we now have a nicely functional driver for our TI ACX100 cards for FreeBSD 5 and later. My card is performing solidly on FreeBSD 5.2 (release candidate 2), albeit at a max of 11Mbps
, as of yet, 22Mbps is not an option. I must say, even with me being a relative FreeBSD newbie, it was only about half
as difficult to get this card going with FreeBSD as the first time I ever got my card working with Mandrake 9.0 using Ivor's driver, hmm, and I always heard the BSD's were more difficult to install and configure than Linux... The system is rock solid, even under heavy usage of the interface. My, (and I'm sure the entire acx100-using freebsd community's) deep appreciation goes out to Darron, very nice work!
In other, non-acx100 related news...I downloaded, burned and fired up SuSE 9.0 Live-eval yesterday. I have got to hand it to SuSE and Yast, this Live CD beat out even Knoppix 3.3 on my Athlon 2000 machine. That motherboard (MSI/VIA) has been poison to every version/distro of Linux I've thrown at it so far, all making me disable ACPI and jump through some serious hoops to get my MS Wireless USB 5-button Explorer to even light up the receiver. SuSE 9.0 handled it all with ease, I'm still in shock. Folks, SuSE 9.0 is certainly worth a look.
January 15th, 2004
Of course, this update is about the Open Source Linux Acx100 driver, who knew?, heh. Anyway, anyone using (compiling) anything newer than 0.2.0pre6_plus_fixes_10, (eg: fixes 11, 12, 13 or 14), needs to know that I have determined that you'll need the "new" firmware (version 1.9.8) to use them (my original 1.9.3 firmware will not connect). I have downloaded and packaged the 1.9.8 firmware (from D-Link) on the Acx100 HowTo
page, so make sure you use it if you're compiling the latest "fixes" version of the acx100 driver. Those who chose to download modules from the howto page should use the original firmware download as I have not yet tested any pre-compiled modules with the new 1.9.8.b firmware. How about that, For the first time ever, D-Link assists with this project, *grin*.
January 11th, 2004
Let me first wish everyone a very belated Happy New Year!
And second, I've finally finished installing and populating my new 30g notebook drive, here's a lilo snapshot
to give you an idea of what's now installed, and, if you're really interested here's what my lilo.conf
looks like, as controlled by Slackware 9.0. As of now, all of my wireless cards are working with all distros installed with the big exception being FreeBSD 5.2, to which I am a relative newbie and am still finding my way. Much like Linux, the FreeBSD community is full of helpful people and good documentation, so I hope to be able to report success with the recent port of the open-source acx100 driver to FreeBSD 5.2 shortly, as of now I still can't quite get FreeBSD to sit still long enough for me to get something compiled. Of course, I will get it tamed eventually.
As for the Linux acx100 driver, first, I've got to re-clarify something: folks, you need to understand, I'm simply a compiler, packager and tester
of this driver on various distributions, I haven't and do not now have anything to do with writing it. I am not now, nor have I ever been part of the development team. All I have been able to contribute other than an occasional bug report here and there is a general monetary contribution to SourceForge.net itself. Please don't believe that this is "my" driver in any way, it's not... So, in addition to the wonderful, positive feedback that you send me (thank you so much!), please don't fail to go to the acx100 site
and thank the real heroes
that have actually spent their time researching, coding and debugging this beast and continue to do so (I would personally like to deeply thank Andreas
(andim2) and Stefan
I've decided to sit tight with all my pre-compiled modules currently frozen (to borrow the Debian terminology) at version 0.2.0pre6_plus_fixes_10, since it's the most recent version to work for me reliably on all the distros I have installed, and since all "fixes" versions after that: 11, 12, 13 and 14 won't connect reliably for me, so, no new pre-compiled modules until 0.2.0pre7, at least as of today.
Atmel and ADMtek card users:
there will eventually be pre-compiled modules representing each "new" distro I've installed available on the howto page
along with an impending complete re-write more in tune with the "new" Linux user's needs. This will include: Slackware 9.1, Fedora Core 1, Knoppix 3.3 (debian sid), Debian 3.0r1 (woody), and Mandrake 9.2. As of now I don't recommend
using any of Mandrake's "3rdparty" modules for any of these cards, from either 9.1 or 9.2, they just don't seem to want to work. As a bonus, and since I now own an Atmel-based USB wireless device
, there will most likely soon be downloadable pre-compiled modules for that as well, both
the sourceforge and the berlios drivers, hey, does it get any better in Atmel-Land or what?!!
Also, I received this link in an email from one Ramchand K. Burra
, it's a really well-put-together page on getting the acx100 cards going on Debian Woody (v 3.0, stable) check out Ramchand's Acx100 howto for Debian Woody
if you're running Woody and need some help. Actually, I just installed Woody today, and let me tell you, it's been the most difficult distro of all to get a useable build environment out of. Secondly, the default kernels are very
conservative as far as pcmcia, cardbus and wireless support go, so don't feel bad if you need some tips and do check out his page.