My target was to capture a 4 way handshake from an AP - Client that are inside a concrete building ( with windows ) from 250 meters.

For this I used:
AP: Cisco WAP610N
Client: - Iphone 4

Pickup truck with:
Alpha AWUS036NH
Alpha AWUS036H
California 24 db antenna

Clear sunny day.

Finally this all worked, but I did encounter a new problem

When using long usb cables I lost data and the handshake was unusable.
when analyzing the handshake using pyrit i got:
 Parsing file 'whatever.cap' (1/1)...
Traceback (most recent call last):
  File "/usr/local/bin/pyrit", line 6, in <module>
  File "/usr/local/lib/python2.6/dist-packages/", line 117, in initFromArgv
    func(self, **options)
  File "/usr/local/lib/python2.6/dist-packages/", line 165, in new_f
    f(*args, **kwds)
  File "/usr/local/lib/python2.6/dist-packages/", line 449, in analyze
    parser = self._getParser(capturefile)
  File "/usr/local/lib/python2.6/dist-packages/", line 181, in _getParser
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/", line 696, in parse_pcapdevice
    for pckt in reader:
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/", line 589, in next
    pckt =
  File "/usr/local/lib/python2.6/dist-packages/cpyrit/", line 577, in read
    r =
IOError: libpcap-error while reading: truncated dump file; tried to read 356 captured bytes, only got 110
After much trial and error I discovered that the cause of the problem was the lenght of the usb cables. I was using 5.5 meters of usb from laptop to card. I after some test i found out that anything under 3 m works under any conditions.

Voltage drops along the cables reduced the output power of the cards and also data was lost from the card to the laptop.
Since there are a lot of failed wpa handshake threads out there I figured this might help at least one other person.