Saturday, July 08, 2006

I put the CF into the adapter, and put it in my laptop, dmesg said:

[7282644.736000] Probing IDE interface ide1...
[7282645.000000] hdc: SanDisk SDCFH-1024, CFA DISK drive
[7282645.612000] ide1 at 0x100-0x107,0x10e on irq 3
[7282645.613000] hdc: max request size: 128KiB
[7282645.613000] hdc: 2001888 sectors (1024 MB) w/1KiB Cache, CHS=1986/16/63
[7282645.613000] hdc: cache flushes not supported
[7282645.614000] /dev/ide/host1/bus0/target0/lun0: p1
[7282645.623000] ide-cs: hdc: Vcc = 3.3, Vpp = 0.0


Woo, it says SanDisk, not "Unknown" or whatever those dodgy cards say.

I still had the mounting issues that I had with the 32mb card though, it would mount, and then unmount again immediately.

I went off to the computer fair, to buy some memory for my Jornada.

There was stacks of fake memory sticks there.

I didn't see any fake SanDisk stuff, in fact I only saw one place with SanDisk stuff.

I wanted a 2GB CF Ultra II, but they didn't have any, only 1GB. They had 2 GB, but not Ultra II.

I couldn't find anyone else with SanDisk stuff, so I decided to get the 1 GB Ultra II. I looked at the packet carefully, noticed that it had the hologram on the box, and even though the card was in the pack upside down, the protective case didn't look like the one I'd seen fake ones in, and the sticker on the card had rounded corners.

I paid for it, and before leaving the table, I checked the manual in the box, it was the proper booklet with staples in it, not a folded photocopy. I moved away, took the card out, and checked the serial number, it looked legit, and it has the country it was made printed on it too.

I couldn't get a memory stick, they were all fake, except for one, which was only 512, and they wanted $72 for.

I also bought a usb wireless adapter for the machine I keep in the garage, so I won't have to drag cat5 over the balcony all the time, I got a CR2032 battery for the Jornada, and I got a PATA -> SATA adapter, to try to get a SATA disk working in a tivo.

I decided to test the usb wireless adapter in my laptop, even though I don't need it to work. It's a Dlink DWL-G122, which I've had working on my laptop before.

I plugged it in, and got:
[7275503.493000] usb 5-1: new high speed USB device using ehci_hcd and address 22

and nothing else.

The other one was version B1 though, and this is version C1, and the chipset has been changed.

I found this page which I used before, when I got the B1 version working.

I found references to the C1 version being based on the RT73 chipset (here). I went to the RA Link Tech support page but found no references to RT73 drivers.

I found people providing links to the drivers directly, but they resulted in a 404.

I googled around a bit more, found a cache of the page, and the RT73 was referred to with (RT2571W) following it.

On the current page, there's reference to "RT2571W/RT2671" and the link is to this file

I downloaded that, compiled it, copied the firmware and config file to the appropriate location, and inserted the kernel module.

Dmesg said:
[7278672.174000] rtusb init ====>
[7278672.175000] usbcore: registered new driver rt73

and nothing else.

No interface (rausb0) appeared.

I found this page where the guy has the same problem.

I also found this blog with the same deal, but this guy's got a Linksys device.

Apparently the reference drivers from RA Link Tech don't know about the USB device IDs attached to the adapter.

I used lsusb, and got:
Bus 005 Device 023: ID 07d1:3c03 D-Link System

confirming the same IDs.

I edited the rtmp_def.h file, but it's changed from the style both pages above referenced.

I added the following line:
{USB_DEVICE(0x07d1,0x3c03)}, /* Dlink */ \

right near the end of the file (before the end marker line)

I recompiled the driver/module, removed the old one, and inserted the new one.

Dmesg said:

[7279568.294000] rtusb init ====>
[7279568.296000] idVendor = 0x7d1, idProduct = 0x3c03
[7279568.297000] usbcore: registered new driver rt73
[7279599.257000] rt73 driver version - 1.0.3.6
[7279610.391000] rausb0: no IPv6 routers present


I then did "sudo ifconfig", but there was no sign of rausb0. I tried "sudo ifconfig rausb0":
rausb0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)


Ok, looking good. I tried "sudo iwconfig rausb0":
rausb0    RT73 WLAN  ESSID:""
Mode:Auto Frequency=1 MHz Bit Rate=54 Mb/s
RTS thr:off Fragment thr:off
Encryption key:off
Link Quality=0/100 Signal level:-121 dBm Noise level:-115 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0


Good. "sudo iwconfig rausb0 essid any", "sudo iwconfig rausb0":
rausb0    RT73 WLAN  ESSID:"squigley.net"
Mode:Managed Channel=6 Access Point: 00:13:10:92:27:FD
Bit Rate=54 Mb/s
RTS thr:off Fragment thr:off
Encryption key:off
Link Quality=91/100 Signal level:-48 dBm Noise level:-79 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0


Connected, link light on device is on, all working.

Friday, July 07, 2006

I updated the firmware in the prism 2.5 card, from 1.3.6, to 1.7.4. I didn't have any hassles doing that.

I thought after doing it, that the sensitivity seemed to have increased, because the sounds ministumbler was making before and after were different.

I found this was because before flashing it, I had the Jornada running off the charger, and off batteries afterwards, and it must provide less power to the card on batteries.

I also removed the pigtail connector from the WET11 board, since it has an MMCX connector on the card, and an SMA connector for the aerial.

The WET11 doesn't work, so it's pointless having it attached. It's probably reflashable, but I don't have the hardware or software for doing it.

I initially tried to remove the aerial connector from the board properly, desoldering it, but there was just too much solder, my soldering iron wasn't hot enough.

I think there's a big ground plane it was attached to as well, since the board was getting really hot, acting as a heatsink for the soldering iron.

I got fed up, and I carefully used a hacksaw to remove the connector from the PCB (along with a few square millimeters of the PCB). It'd still be fine if I was to fix the WET11.

Thursday, July 06, 2006

One of the wireless cards I was using in the Jornada, out of the SMC ap, marked WL11000-2, only had firmware versionb 0.7.5, and so a lot of functions weren't available.

I wondered if that was some of the issues I was having with the drivers in the Jornada, and using ministumbler. I found pages here and here related to updating the firmware.

I downloaded a few different firmwares, and then went about compiling hostap. That required me to install the correct kernel source and headers, because I had been missing that.

Once done, I compiled hostap driver and installed it, before I had the hostap driver, inserting the card gave:

[7129498.888000] orinoco 0.14alpha2 (David Gibson , Pavel Roskin , et al)
[7129498.895000] orinoco_cs 0.14alpha2 (David Gibson , Pavel Roskin , et al)
[7129499.037000] eth2: Hardware identity 8002:0000:0001:0000
[7129499.037000] eth2: Station identity 001f:0005:0000:0007
[7129499.037000] eth2: Intersil firmware earlier than v0.8.x - several features not supported
[7129499.037000] eth2: Firmware determined as Intersil 0.7.5
[7129499.037000] eth2: Ad-hoc demo mode supported
[7129499.037000] eth2: IEEE standard IBSS ad-hoc mode supported
[7129499.037000] eth2: MAC address 00:90:D1:00:D1:DB
[7129499.037000] eth2: Station name "Prism I"
[7129499.038000] eth2: ready
[7129499.045000] eth2: index 0x01: Vcc 3.3, irq 3, io 0x0100-0x013f

After installing the hostap driver, killing off cardmgr, and restarting it, inserting the card gave:

[7133612.864000] hostap_crypt: registered algorithm 'NULL'
[7133612.868000] hostap_cs: 0.4.9 - 2006-05-06 (Jouni Malinen )
[7133891.610000] cs: IO port probe 0x100-0x4ff: clean.
[7133891.612000] cs: IO port probe 0xc00-0xcf7: clean.
[7133891.613000] cs: IO port probe 0xa00-0xaff: clean.
[7133891.784000] hostap_cs: setting Vcc=33 (constant)
[7133891.784000] hostap_cs: CS_EVENT_CARD_INSERTION
[7133891.784000] hostap_cs: setting Vcc=33 (from config)
[7133891.784000] Checking CFTABLE_ENTRY 0x01 (default 0x01)
[7133891.784000] IO window settings: cfg->io.nwin=1 dflt.io.nwin=1
[7133891.784000] io->flags = 0x0046, io.base=0x0000, len=64
[7133891.784000] CardServices(RequestIO) returned 29
[7133891.784000] 0.1: RequestIO: Configuration locked
[7133891.784000] 0.1: GetNextTuple: No more items
[7133891.784000] prism2_config() failed
[7133897.304000] hostap_cs: CS_EVENT_CARD_REMOVAL
[7133901.764000] hostap_cs: setting Vcc=33 (constant)
[7133901.764000] hostap_cs: CS_EVENT_CARD_INSERTION
[7133901.764000] hostap_cs: setting Vcc=33 (from config)
[7133901.765000] Checking CFTABLE_ENTRY 0x01 (default 0x01)
[7133901.765000] IO window settings: cfg->io.nwin=1 dflt.io.nwin=1
[7133901.765000] io->flags = 0x0046, io.base=0x0000, len=64
[7133901.766000] hostap_cs: Registered netdevice wifi0
[7133901.806000] hostap_cs: index 0x01: Vcc 3.3, irq 3, io 0x0100-0x013f
[7133901.902000] prism2_hw_init: initialized in 96 ms
[7133901.906000] wifi0: NIC: id=0x8002 v1.0.0
[7133901.907000] wifi0: PRI: id=0x15 v0.3.0
[7133901.907000] wifi0: STA: id=0x1f v0.7.5
[7133901.908000] wifi0: defaulting to host-based encryption as a workaround for firmware bug in Host AP mode WEP
[7133901.908000] wifi0: defaulting to bogus WDS frame as a workaround for firmware bug in Host AP mode WDS
[7133901.912000] wifi0: registered netdevice wlan0

I tried to update the firmware, but kept having issues with it telling me "NICID was not found from the list of supported platforms." and refusing to update.

I eventually worked out it was because there was an error on the page I was looking at:

wget http://linux.junsun.net/intersil-prism/firmware/1.5.6/sf010506.hex
./prism2_srec -v -f wlan0 s1010506.hex -P pda

Since the file to be downloaded is not the one to be loaded.. the file that I needed to download was http://linux.junsun.net/intersil-prism/firmware/1.5.6/s1010506.hex

I then tried to update the card, since it said it was compatible, but then found that I hadn't enabled firmware updating in the hostap driver.

I modified the source, recompilied it, unloaded and reloaded hostap, removed and reinserted the card.

After that I was able to flash the card, and got:


Downloading to non-volatile memory (flash).
Note! This can take about 30 seconds. Do _not_ remove card during download.
OK.
Components after download:
NICID: 0x8002 v1.0.0
PRIID: 0x0015 v0.3.0
STAID: 0x001f v1.5.6


So it was updated. It seemed to be working, was running in master mode (since it had the hostap driver loaded) and i was able to change it to managed, but I didn't try connecting to my AP.

I put it in the Jornada, and it connected to the AP fine, and when I ran ministumbler, it was able to log APs, instead of just returning errors.

The other card, out of the WET11, is supposed to be a prism 2.5 based card (this one is a prism 2 card), and it can have a newer firmware again. I might update it.

Tuesday, July 04, 2006

So I turned up home, and there was a parcel there. I unpacked it, it's the Jornada 720 I bought off ebay.

I had a quick look at it, tried turning it on, nothing, just batteries flat I hope.

I check the CF door, and there's a SanDisk 32MB CF card in there, cool.

I dug out the charger, and the figure 8 power cord, it's got a US end on it, logically.

I check, and it's a switchmode PSU, 100-240V. I grab a standard figure 8 cord, plug in the charger, plug it into the Jornada, and the charging light comes on.

I open it up, and it's turned on. Boots up in a couple of seconds.

I run through the initial screens, set the timezone, time, calibrate screen etc.

I check the batteries, it keeps telling me the backup battery is flat, it's just a standard CR2032, no hassle, I'll get a new one.

The batteries slowly charge. I decided to get wireless going on it, since I can't install linux on it yet, because 32MB of CF is too small.

I stuck in 4MB flash PCMCIA card I've got, that I was going to use to put OpenAP on an old SMC 2652W AP, it popped up and asked me if I wanted to format it. I don't, because I'm still trying to read it in my laptop, to see if there's anything on it from when I bought it off eBay.

I put in a wireless card I've got hanging around, out of the SMC 2652W AP, marked "WL11000-2", which in my laptop turns up as an early orinoco_cs card.

The Jornada pops up "Unidentifed PCCard Adapter", and wants to know what driver to use. "Enter the name of the driver for this PCCard".

I google around, found a driver on proxim's site (using a bugmenot account to login), and downloaded a ridiculous 20MB file.

I grabbed the CF card out of the Jornada, put it in the type 1 CF -> PCMCIA adapter, and put it in my laptop. The laptop scanned it, mounted it, a window popped up, and then it went away again.

I looked, and as quick as it had mounted it, it had unmounted it again for some reason.

I repartioned it, formatted it, and then mounted it, and it did it again, just disappeared. I found I had to mount it about 5 times before it would stay mounted.

While I waited for the drivers to download, I put the Jornada on it's cradle, and connected the USB cable to my laptop. Nothing happened, the Jornada didn't do anything, and no messages turned up in dmesg.

I don't think the Jornada was on the cradle properly, when I fiddled with it, the Jornada popped up and said it was connecting to the desktop, and sat there. After I minute I realised it had locked up.

Ah, Windows.

I reset it, and it tried again, I looked in dmesg, and saw:

[6953432.202000] usb 1-2: new full speed USB device using uhci_hcd and address 4[6953434.404000] usbcore: registered new driver usbserial
[6953434.405000] drivers/usb/serial/usb-serial.c: USB Serial support registered for Generic
[6953434.409000] usbcore: registered new driver usbserial_generic
[6953434.409000] drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0
[6953434.706000] drivers/usb/serial/usb-serial.c: USB Serial support registered for PocketPC PDA
[6953434.706000] drivers/usb/serial/ipaq.c: USB PocketPC PDA driver v0.5
[6953434.708000] ipaq 1-2:1.0: PocketPC PDA converter detected
[6953434.711000] usb 1-2: PocketPC PDA converter now attached to ttyUSB0
[6953434.711000] usbcore: registered new driver ipaq
[6953441.036000] usb 1-2: USB disconnect, address 4
[6953441.037000] PocketPC PDA ttyUSB0: PocketPC PDA converter now disconnected from ttyUSB0
[6953441.038000] ipaq 1-2:1.0: device disconnected


During that, the Jornada waited 6 seconds, and said it couldn't connect.

I googled around, and found reference to "SynCE", Linux software for syncing with CE units. I used apt to install synce-dmm, which is used for the connection, but it still didn't connect. I installed a few other bits and pieces it recommended, but it still made no difference.

I told apt to install synce-kde, but it needed new kde libraries. When I tried to install something to do with multisync, it wanted to upgrade a bunch of stuff, remove things, including kernel files, udev stuff, I assume as part of the Dapper upgrade.

I didn't want to do that, so I cancelled out.

The download finished, and I extracted the drivers, grabbed the WinCE3 files, and copied them to the CF. I unmounted it, put it back in the Jornada, and went to run setup.

It kept coming up telling me that "Setup is not a valid Windows CE executable". WTF. I wondered if it didn't download properly or something, or perhaps not copied properly, because of the mounting issues I had.

I remounted it in the laptop, and did MD5SUMs of all the files, and they matched.

I had a look in the hardware compatibility list on hpcfactor, and found different drivers for the card, and downloaded them, but they turned out to be exactly the same, MD5SUMs too, and I had the same error.

I then wondered if perhaps the install was supposed to be run on a windows desktop machine, and it would load them on the unit from there or something.

I tried running the setup in windows that I run in a VMWare VM, and the program came up and said it required ActiveSync 2 or something.

I went and downloaded activesync, installed it, which then wanted to connect to the device. Argh. I went and plugged it into the machine that runs VMWare, hoping the USB would pass through.

It didn't see the device. I then remembered that I had to connect the device to the VM, in VMWare. I tried doing that, but because the Jornada only tries to connect for 6 seconds, it didn't seem long enough for VMWare to notice the device, and allow me to connect it to the VM.

I fiddled around with that for a bit, and found that if the VMWare window is active, USB devices are automatically passed to it. I tried that again, but it was still no good, and then I found it was because the machine running VMWare was loading the ipaq kernel module, like my laptop did, so VMWare wasn't able to grab it.

I aborted that, hoping that I could find another way to get the files. I ran the setup of the wireless drivers, and it ran through, and said they would get installed the next time the unit was synced (synced?).

I then tried to find where it had put the files, to see if I could put them on the CF/Jornada manually. I couldn't work out where they were, I was expecting them to be hidden in Documents and Settings somewhere.

I ran the setup again, and with it running, it dropped some files in the temp directory. I've used this before to scab files from setup programs that fail with an error, and delete their files.

I found an inf file in there, it mentioned "Program Files\Microsoft ActiveSync\Agere Systems".

I went and looked in there, and found a bunch of cab files. I copied those to my laptop, and I copied the "ARM720" cab onto the CF card, having the mounting issues again.

I tried to run the cab file on the Jornada, but it was telling me that "The application cannot run on this device type". Hmm.

I looked, and none of the other cabs looked appropriate, but I just decided to try them all, so I copied them all on the card.

I ran them one at a time, getting the same error. Eventaully I saw the "SA1100" cab, and that rang a bell from when I read about the innards of the Jornada. I ran it, and it asked me where I wanted to install the drivers, defaulting to the windows directory.

I told it to do that, and it dropped a bunch of files in there.

I then put the wireless card in again, and it still just came up about "Unidentified PCCard Adapter", and asked for the driver.

I googled around, and found references to needing to tell Cisco cards to use the "aironet" driver, which I'd seen in there, so I went about trying to work out what the driver name would be.

I saw files called "wmags46" so tried that, no good, "agere", no good. I looked in the Network applet in the control panel, and saw references to "WLAGS461" and "WLAGS46b1", I tried these, neither did anything.

I started poking around in the cab file, and looking at different files. I found reference to "WLAGS46", and tried that, it worked.

The wireless client applet popped up, but it couldn't see any WLANs, just kept saying it was scanning. I attached the aerial, in case that was the problem, but it didn't help.

I tried another card I've got, a newer orinoco_cs card, out of a broken Linksys WET11 I ended up with. I had to tell it what driver to use too, and it did the same thing.

I put the older Orinoco back in, and fiddled around in the client a bit. I turned the radio off, and then on again, and it suddenly saw my WLAN.

It looked like it was connected, but then the card seemed to lockup, I couldn't scan, couldn't disable the radio again or anything.

I tried the other card, it did the same thing, except for locking up, but I couldn't scan properly.

I installed ministumbler, that was the same process as before, run the setup on windows, and grab the files out of the ActiveSync directory, copy them onto the CF, and install.

I didn't have any luck though. The card that locks up would return "Error OR-4" in ministumbler, and the newer card would just say "Error 80004005".

Neither card would try for dhcp address, IPCop had no references to current leases for the MACs of the wireless cards.

I saw references to using "wlluc46" as the driver, and I tried that, but it didn't do anything, I think that's the Proxim driver, and I'm using the Agere driver.

After about 3 hours, I give up. I either need a different wireless card, different drivers, or I just need to try it under linux.

Once I get a bigger, non counterfeit CF card, I'll have a go.

Sunday, July 02, 2006

I bought a 2GB SanDisk Ultra II CF card, and a 1GB Sony Memory Stick off eBay a few days ago.

I got the CF for $87, and the MS for $47.

I picked up the parcel from the post office, and when I decided to check up about counterfeit memory, I discovered that both the CF, and the MS were fake.

The CF didn't have a SanDisk hologram on the box, the box said it had a lifetime warranty, but a folded up photocopy in the box said it had a 5 year warranty.

The CF was in a little plastic case, that was too small for the card to fit in properly, and the serial number looked dodgy. The sticker on the card didn't have the proper rounded corners either.

The Memory Stick looked dodgy, like there was a gap in the plastic near the contacts on the front. When I investigate fake MS, it was too, because the packet was glued sht, with little dots, rather than being heat sealed.

I contacted the seller, and I told him that the memory was fake, and that I wanted my money back. A couple of hours later, he replied that he would refund my money, and asked for my paypal, with no argument.

I replied and told him my paypal, and that I would mail the unopened memory back once I had my refund. At some point later he sent my money back, and paypal accepted it.

I sent the memory back to him, at my expense. I'd rather be $7 out of pocket, than $154 though.

I didn't contact eBay, I initially thought about it, but what's the point? there are tons of scammers selling fake memory, getting one guy kicked off isn't going to do anything.

He'll leave me bad feedback, and then just sign up under another name and keep selling crap.

This annoys me, because I've wasted time on this, when I could have been getting legit memory from somewhere else.

I stuck my head in Dick Smith, to find out their prices for a laugh. They've only got 1GB CF, and wanted $145 or something, and they only had 512MB MS, and want $100.