Reverse Engineered 802.11b+ Drivers
orv writes "When Andreas Mohr found that his new wireless networking card wasn't supported under Linux rather than returning the card and getting himself a supported one, he decided to set up a project to write his own drivers instead - http://acx100.sourceforge.net.
Companies such as D-Link had initially promised to release linux drivers for these cards but later backed down from that promise and announced that Linux would not be supported and that customers should not hold on to the cards in the hope of getting them working, as shown on their current FAQ.
Texas Instruments, the makers of the chipsets upon which these 802.11b+ cards are based refused to release code or specifications for the cards, no doubt for similar reasons that were recently discussed here.
The fact that the current alpha release is certainly as good, and in some areas better, than the binary drivers that escaped from one of the card manufactureres speaks volumes for the quality and determination of the team to create their own drivers."
Proprietary hardware - laptops. Proprietary drivers fro WiFi that lock you to Windoze. And a proprietary Intel Centrino doublespeak.
Is this what poor third-world countries yearn for? Should they leapfrog to disaster? I'm disappointed someone like Mr.Kofi Annan suggested this stuff to poor nations.
-
If you keep throwing chairs, one day you'll break windows....
Am I the only one who's first thought was whether these noble hackers would be unfailrly targeted by the corporations using DCMA?
All you touch and all you see is all your life will ever be
It is good to see a direct verifiable example of Open Source development with a higher standard of Quality Assurance than the corporate developers.
A psychological standard of quality on the part of the devs leads to a physical and coding standard of quality a cut above the rest.
An infinite number of monkeys will eventually come up with the complete works of
I don't want to put the heroic work of these folks into a bad light, but from an evolutionary perspective, wouldn't it be better to avoid buying hardware if the vendor refuses to support Linux?
Only reason I'm asking is that the salesdrone at OfficeDepot didn't know what the integrated wireless on the Averatec 3150P was based on yesterday, and I'm not keen on paying an extra hundred bucks for the feature if it won't work in my OS of choice. Then again, I could save myself the dough and get the model w/o the integrated 802.11b, but still...
hang brain.
It seems that several manufacturers that were warming up to the Linux community have now reversed positions. Does anyone have contacts within companies like Dlink, Linksys or Netgear that can tell us why? Will Intel continue to shoot us a bird with the centrino too?
It would be easier to understand if the companies had been a-holes all along. I hate to see the change as it is effecting the buying patterns I had become comfortable with.
Kindness is the language which the deaf can hear and the blind can see. - Mark Twain
Well, it's one way of doing reverse engineering.
More generally, reverse engineering is (stolen from FOLDOC)...
The process of analysing an existing system to identify its
components and their interrelationships and create
representations of the system in another form or at a higher
level of abstraction. Reverse engineering is usually
undertaken in order to redesign the system for better
maintainability or to produce a copy of a system without
access to the design from which it was originally produced.
For example, one might take the {executable} code of a
computer program, run it to study how it behaved with
different input and then attempt to write a program oneself
which behaved identially (or better). An {integrated circuit}
might also be reverse engineered by an unscrupulous company
wishing to make unlicensed copies of a popular chip.
1. Discover your hardware is not supported by Linux
2. Write your own driver
3. ????
4. Still never get laid
Some vendors (Promise D-Link 520+ etc.) are using their own 802.11b standard (WiFi) called 802.11b++ but they doesn't provide Linux drivers. Since this card should have 22 Mbit/s insted of standard 11 Mbit/s ppl want to use it in routers etc. but there are no Linux drivers. So some hackers (not crackers!) looked how does Windows drivers (or any other) control and use (when I call this card does this) this card and tries to implement it in Linux.
I'm terribly sorry, I forgot to give you the link to Google... it's.
http://www.google.com/
Now, you make sure you put the slashes in the right way ok?
I can see why a company will not want to provide multi-OS support officially, as if Linux changed they don't want the liability of having to support the changes. But, if someone in that company was already half written a driver, even if it is buggy as hell, surely they should give this away to the user community as a starting point rather than forcing people to reverse engineer their own solutions.
Omnis amans amens
So what happened OSS (free and not free) and ALSA happened. Bunch of people go together and said "To hell with the manufacturers not helping us, we'll make it work anyways". It was with this pressure that companies like "Aureal" (who about 3 months after releasing their first linux driver went under) to release drivers. Now you see sound support almost everywhere with linux and it's uncommom to not have sound. Another example of course would be "winmodems", modems actually designed to only run in windows running just fine in linux. It's always just a matter of time.
The community is strong, but you'll see real grassroots efforts take shape especially when developers are told "no". Wireless AP/Routers are in the sub $60 range and you can get a wireless card for around $20, it's now not just a rich kid toy, but a common mans networking solution. Expect more things to come of wireless support and expect that companies will take notice. Too bad it's not that easy to just start writing kernel mods for hardware support. There's a reason only a select few hack the kernel (it's really not easy), and well if you ever run into a developer, thank them, they put a whole lot of work into something and don't always get the credit they deserve.
Ignore the "p2p is theft" trolls, they're just uninformed
For those of us who actually have sex with a living, breathing, *biped* (of the OPPOSITE sex)
Biped does not imply human. Care to qualify that?
Join Tor today!
It doesnt say on the pages how he reverse engineered it.
It would be nice to have a system which emulates a whole machine (ala vmware but open) and then open some ports from the emolation to the real hardware. This way Windows assumes its running on a real machine but you have full snooping on the interface with the hardware.
It wouldnt take too long to write a simple x86 emulator for KMD. And a nice tool to decide what areas whould be feed straight through to the real hardware would make it much easier to make drivers for other win only devices. It would also be useful to test the linux drivers but you can allready run linux in user mode.
Mouse powered Chips, Open source Processors and Lego
I'm stuck with two Linksys cards, the 54g PCMCIA card and a WMP-11 rev 2.7 PCI card, that are both based on the Broadcom chipset. I'd like to help out an existing project on this, but I can't find one anywhere, and I fully expect Hell to call me to tell me to turn the heat back on before I get drivers from Broadcom or Linksys.
Anybody know of any projects out there for the Broadcom chipset?
This is particularly galling when you read about manufactureres who are actually reaping the benfits of open source development in their own products link but then refuse to support linux using customers.
...and wrote drivers for it, we wouldn't have much of a Linux today, now would we?
"Ask not what your country can do for you." --John F. Kennedy
Don't you know it is now both immoral and criminal to think beyond the next quarterly report?
My Dell D800 was delivered with an Intel Pro/Wireless 2100 Mini-pci card.
I can't find a driver, so I wondered if anybody knew of efforts to write one.
Another solution would be if somebody could recommend an alternative card for my D800..
Software driven radio. While this sound cool you are getting nowhere without some hardware that will transform analog signals (In cellular with a dynamic range of more than 100 dB (1e10)) to digital. While it might be possible to build such an A/D converter it will use much to much current unless you use some trickery in getting rid of the dynamic range before sampling.
This transformation is what the hardware in modern radios do. This hardware is what is not covered in the gnu project.
What is covered in the gnu project is digital modulator and demodulator at baseband. While this is very nice it is not revolutionary.
Basically most work was done by disassembling a linux binary module for the chipset that leaked from one of the manufacturers.
Additionally the behaviour of the card and correct initialisation process was determined by analysing the ARM disassembly of the firmware and watching the traffic that goes between the access point board and its embedded PCcard.
I didn't see this posted anywhere, but if you read a little more about the topic, you would have found the probable reason for why the manufacturers aren't releasing drivers. It ISN'T some MS scheme to screw linux users. The manufactureres are affraid that releasing drivers will get them in trouble with the US government. Apparantley the card can be reconfigured to transmit on military/police/other "forbidden" frequencies. The manufacturers don't want to have to deal with the repercussions of releasing such a "weapon". Pretty stupid really, considering theres already an effort out there, with some success I hear, at reverse engineering the windoze driver, in order to reconfigure the transmit frequency.
Did anyone notice that D-Link's FAQ now provides a link to the SF project at the bottom? Well, it's better than another asinine lawsuit!
A barrier that can be ignored at will, vetoed and accused of being irrelivant if it doesn't do what the US wants? Sure, some barrier...
In a way, this reminds me of CSS vs DeCSS. It started out as an innocent effort by someone to just be able to play the CSS encoded media they had legally bought and paid for ... no theft would have been involved. But, by having created the necessary software, and now it's in source form, others can do with it as they please, and many would please to steal. Had the big media businesses simply made a binary distributed player, that scenario would not have taken place, and maybe CSS might never have been cracked because of the lack of need to do so.
While WiFi hardware isn't the same scenario, there are some similarities. Had the manufacturers produced a binary-only driver module that could be loaded into the Linux kernel (and supported it properly, something essential when you release something in binary-only form), there would be virtually no need for anyone to go create a source form version. Only those wanting to actually hack on the card might. But with the binary drivers not being released, that forces the open source community, which has way more intellectual resources than companies like Texas Instruments, to create their own drivers, and it is open source.
What they feared most, and what motivated their misguided decisions, will now serve to bring about exactly what they did not want, which is hackers reprogramming the cards to operate off-frequency, or use wider channels (maybe I can get 50 Mbps out of this thing while trashing the UHF band of my neighbor's TV), and FCC pressure to make chips without software frequency/modulation agility (and thus increasing the costs due to the need to do hardware programming and design in specific market commitments for each manufacturing production run).
now we need to go OSS in diesel cars
The Itex Apollo 3 PCI ADSL chipset. They released binary only drivers for the 2.4.16 kernel: and then went bust. Very frustrating for those of us looking for a cheap PCI based broadband solution.
Iv'e done some preliminary poking around with my copy of the binaries and it seems that ITEx were pretty sloppy with the binaries and left a lot of symbol table in that wasn't needed, thus making reverese engineering via objdump et al pretty easy.
I don't have time to work on this myself, but I'm willing to kick off a sourceforge or savannah project with what I have already - if anyone else is interested.
/usr/games/fortune > ~/.signature
More than likely it was "It would be cool for all these countries to have wireless laptops" with absolutely 0 knowledge on the details of such an idea.
I'm still a little dubious as to the actual value of laptops, much less with wireless support.
Such things are very convenient, and certainly popular in offices, but I'm dubious that desktops don't provide much of the same benefit. Sure, some work may get done on the road, but some not (and the increasing availability of Internet access means that companies can decrease travel and save costs). Some work that might not have gotten done otherwise might get done at home, but honestly, most folks don't want to go home and then work more, and I think that most don't actually do that much at home (as an addition to work at work, not as a replacement). You can carry laptops to meetings, but honestly, about half the people where I work just use a notepad (partly because quick sketches are currently easier on paper). You usually aren't transcribing vast amounts of text, just jotting down names or some points to remember. So most of the benefits of laptops seem to be less big than one would thing.
The downsides are significant. Laptops (with the notable exception of hard drives) tend to be less durable than desktops, and tend to get rougher treatment. This tends towards producing shorter lifespans. Laptops are a major target of theft, especially in the developing countries where they want to deploy these. Laptops are more expensive than desktops to produce, and manufacturers are still making higher profit margins on laptops. Most laptop manufacturers are big name (first world) companies, given the far greater engineering work required to put together a laptop. So it makes it harder to keep the funds spent *in* those developing countries when making purchases.
Wireless networking is cute, but it costs a *lot* to deploy the thing all over as opposed to just the offices and conference rooms where you'd put wired Ethernet. If you just slap it in those two places, wired can be more expensive, but installation of wires can be done by local contractors, which keeps funds in country and produces jobs. Most people that I see doing actual work on their laptops tend to work in either meeting rooms or their offices. Usually, this translates to just meaning that they don't have to plug in a cable. Somewhat convenient, but possibly (especially given security and performance issues) not cost-effective. Wireless is still a bit of a luxury item.
This wireless laptop initiative seems more based around what a laptop *company* would like to see happening than what's best for developing countries, IMHO.
May we never see th
In the early days of linux, only Tseng ET-4000 and Trident 8900 were supported by XFree86. Many of the custom clock chips were officially undocumented by the card manufacturers, and could change even while the product name remained the same.
Manufacturers like Matrox and Diamond were initially the most resistant to providing any kind of support for XFree86. As linux hackers reverse engineered and developed their own drivers and discussion board volume increased, Diamond and Matrox began to release their own drivers.
The issue here with Wi-Fi is that the marketing dudes don't expect that Linux users make up a significant fraction of Wi-Fi customers. They have no axe to grind against linux, instead they just don't see the value. The easiest way to convince them otherwise is to build custom drivers and use them. As soon as a large volume of users are visible, you can bet the commercial vendors will begin providing better support, just like with graphics cards in the early '90s.
Until then, Apple Powerbooks make very attractive Unix workstation.
I recently moved into a house with an odd design which made connecting remote computers to the central router difficult using wires. My (iBook) laptop had no problems because it was able to go wireless, so I decided to go with a wireless solution for my Linux desktop. I had no idea what I was getting into.
I figured the easiest solution would be a USB based device, so I looked around and found a table of USB 802.11b driver support under Linux. At first, I went to a local store and bought a device that the table said was supported. I got it home and ugh, it barely worked. Under Linux the driver was awful. To see if it was maybe the card itself I tried it under Windows. It barely worked there, hanging the machine when I tried a throughput test.
So I sent that back and ordered an SMC card which was supposed to have vendor-supplied drivers. I got it home, plugged it in, and tried to install the drivers. No luck. It turns out they were binary-only drivers for specific old RedHat kernels. So I emailed SMC for support. A week later someone got back to me to say that my issue had been escalated. A week after that I got a tar file in the mail. It turns out what I received was simply a forked and slightly modified version of the code on a Sourceforge project. But, surprise, surprise, it didn't work either.
More investigations led me to an alternate driver. Using the mailing list associated with this project, thanks to Joerg Albert I was able to determine that my device has a hardware configuration which is apparently very rare and needs special firmware. Once I got that, after about 3 weeks of effort, I had working 802.11b access under Linux.
At the end of this I'm annoyed with SMC. I am glad that they acknowledge that Linux exists, on the other hand, they were completely useless when it came to actually supporting their product.
In the end I guess I voted well with my dollars, supporting a company that provided minimal efforts to support Linux rather than one that refuses to even admit it exists. But I also provided $$ to a company that is deceptive about their hardware being truly supported under Linux. It was also pretty annoying that to get the thing to work required taking some random firmware file (in the form of a C header file with a massive data array) and randomly trying it to see if it would work.
It's sad when voting with your dollars is like other kinds of voting, where you vote against somebody because they're worse than the person you're voting for.
What's more frightening is that in a month or so I'm scheduled to find a way to get a mini-PCI 802.11b card working for an embedded Linux system running on an ARM processor. If getting a system with a fairly standard connector was this difficult on a desktop machine, I'm dreading trying to get a card with an obscure interface working on non-i386 CPU. Wish me luck.
Indeed you discovered the link to the leaked binary drivers. However when the sourceforge project was started there were no binary drivers at all. Indeed it is a non-trivial task to decompile those drivers, and that was what was done to assist the development of the oss drivers. As you will note Dlink aren't providing or supporting those binary drivers you discovered either they've simply got fed up of all their customers asking them how to get their hardware running on linux and so added the link onto their FAQ.
So no wash.
Yet Mr. Annan claims the right to mandate (yes, mandate) that 'all these countries' get 'wireless laptops', without any concern for the causality involved - someone has to engineer, build and then donate them to the UN. Why not just recommend that the 3rd world countries get 'AIDS medicine' or 'enough food to live on' or 'a decent wage'? It's all groundless pie-in-the-sky, unattached wishing anyway. Here's a suggestion for the Third World:
Stop overbreeding.
Stop killing each other.
Stop stealing from the people who honestly want to help you.
Stop torturing people from the wrong village.
Stop maiming your women.
Maybe then you'll get a little respect, instead of the sneers and half-assed offers of help that you keep begging for.
I want to delete my account but Slashdot doesn't allow it.