Wireless: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
<noinclude>{{Translations}}</noinclude>
<noinclude>{{Translations}}</noinclude>


=== Design Goals ===
== Design Goals ==
OLPC's laptops will be deployed in places where there will be very little or no infrastructure at all. We wanted to make sure that the laptops could connect to other laptops in their vicinity regardless of the presence or not of connectivity infrastructure. We also wanted to help kids share Internet connectivity without any additional infrastructure.
OLPC's laptops will be deployed in places where there will be very little or no infrastructure at all. We wanted to make sure that the laptops could connect to other laptops in their vicinity regardless of the presence or not of connectivity infrastructure. We also wanted to help kids share Internet connectivity without any additional infrastructure.


Line 8: Line 8:
To achieve our design goals we chose to add self organizing multihop (mesh) networking capabilities to the laptop's network adapter. The constraints imposed by our [[Mesh Network Details]] mandate the use of System on Chip (SoC) Wireless Adapter, with the mesh networking protocol running directly on the adapter's CPU.
To achieve our design goals we chose to add self organizing multihop (mesh) networking capabilities to the laptop's network adapter. The constraints imposed by our [[Mesh Network Details]] mandate the use of System on Chip (SoC) Wireless Adapter, with the mesh networking protocol running directly on the adapter's CPU.


=== Network Adapter ===
== Network Adapter ==
* Marvell [[88W8388]]
* Marvell [[88W8388]]
* Has onboard ARM 9 processor, ROM and RAM.
* Has onboard ARM 9 processor, ROM and RAM.
Line 14: Line 14:
* Dual adjustable, rotating diversity antennas ("Bunny Ears")
* Dual adjustable, rotating diversity antennas ("Bunny Ears")
* Further details on the chip can be learned by reading [http://www.commsdesign.com/showArticle.jhtml?articleID=57300160 Marvell adds TCP/IP offload support to WLAN chip]
* Further details on the chip can be learned by reading [http://www.commsdesign.com/showArticle.jhtml?articleID=57300160 Marvell adds TCP/IP offload support to WLAN chip]

=== Installing Wireless ===

<b>These instructions are old, and should NOT be followed. All OLPC software builds (for both the XO laptop and the XS server) already include these files.</b>

Please check what version of firmware you are currently running and be sure you want to upgrade. To check, log in as root and type: ''ethtool -i eth0''. After upgrading, reboot and check the firmware version again.


Tested with Build 76 by Quozl and JvC on OLPC hardware.
Verified it still works on Build 81 by Scytacki. rminnich just tested and build 83 works. Teus confirms that build 91 works.

* Attach antennae (so as to prevent damage)
* Obtain the firmware file usb8388_A1_W8015FP14_FW2.bin from https://www.marvell.com/drivers/driverDisplay.do?dId=160&pId=38
* Rename the file to /lib/firmware/usb8388.bin
* Reboot

On builds later than '''153''' the firmware is already in the image. With build '''179''' and later NetworkManager with WEP should be working. In those builds all you need to do is click on the wireless strength icon on the upper right hand corner and select your network from the drop down menu. If the device is protected with a WEP key you will be asked to enter it. Subsequent boots of the device should automatically find and associate to the networks it has used before.

----

The result was that '''eth0''' appeared in '''ifconfig''', and the browser was able to access google.com, thanks to the automatic network configuration.

If you need to setup specific Essids or Keys, look at '''/etc/sysconfig/network-scripts/ifup-wireless''' for documentation, and add appropriate variables to '''ifcfg-eth0'''

If the security properties of an access point change, NetworkManager may be unable to access it. In that case you can remove or edit '''/home/olpc/.sugar/default/nm/networks.cfg'''


=== Mesh Wireless ===
=== Mesh Wireless ===
Line 44: Line 19:
The Mesh wireless protocol it's an implementation of the [http://en.wikipedia.org/wiki/IEEE_802.11s 802.11s draft].
The Mesh wireless protocol it's an implementation of the [http://en.wikipedia.org/wiki/IEEE_802.11s 802.11s draft].


=== User Experience ===
== User Experience ==


There is quite a bit of complexity to properly configuring the wireless network in the variety of use scenarios that the children will be encountering. Our bias is towards making efficient use of mesh networking, but in some situations, infrastructure mode will be used. In those cases, the laptop will offer mesh portal (MPP) services to other laptops in the vicinity. If no mesh or access point is visible, then the laptop will become a mesh point on Channel 1. An additional bias to our approach is to use Channels 1, 11, and 6 when possible. This is an efficient use of spectrum as it lets us use three channels with essentially no overlap.
There is quite a bit of complexity to properly configuring the wireless network in the variety of use scenarios that the children will be encountering. Our bias is towards making efficient use of mesh networking, but in some situations, infrastructure mode will be used. In those cases, the laptop will offer mesh portal (MPP) services to other laptops in the vicinity. If no mesh or access point is visible, then the laptop will become a mesh point on Channel 1. An additional bias to our approach is to use Channels 1, 11, and 6 when possible. This is an efficient use of spectrum as it lets us use three channels with essentially no overlap.
Line 80: Line 55:


From the Mesh View, you should be able to jump directly into Steps 1, 16, or 19 above (search for mesh, select AP, select mesh point).
From the Mesh View, you should be able to jump directly into Steps 1, 16, or 19 above (search for mesh, select AP, select mesh point).
==== Capturing wireless traffic on the xo ====
=== Capturing wireless traffic on the xo ===
Here are the steps to capture wireless traffic on the xo:
Here are the steps to capture wireless traffic on the xo:


Line 105: Line 80:
https://cozybit1.dnsalias.org/~javier/patches/wireshark-0.99.5-fw-5.220.11-support.patch''
https://cozybit1.dnsalias.org/~javier/patches/wireshark-0.99.5-fw-5.220.11-support.patch''


== Antenna Reliability ==
=== Fragility of the ears ===
My experience with toys and kids (my own kids -- you cannot believe how many toys I fixed) and an attempt to design a teaching doll indicates that anything that can break will break, and the more moveable it is the more likely it will be broken. The ears look like handles and probably will be used as such. Stuff will be poured into the machine, scratches will appear on the screen (I scratched the LCD screen of my new PowerShot A570 IS after only 1 week of use -- I put it in my pocket), the keyboard will be pounded on by baby brother, etc.

Drop tests: I've had a lot of experience with drop tests: the machine should be able to survive at least e.g. 3 random kid-high drops (e.g. 3 feet) onto concrete (not a wooden floor or hardpack dirt) with full operational capability after the tests (do on a sequence of samples).


The antenna "ears" have been subjected to drop testing in both the open and close positions, and survive multiple drops onto concrete from desk height. They are made of rubber surface over a polycarbonate center section, allowing them to flex upon impact.
Rollover tests: Where I used to work (plasma-arc metal cutting equipment) we did 50 rollovers (from the CG) side to side in both directions, again with full operational capability after the test. This may not sound like much but at filrst the results were devastating and replicated HALT and HASS tests in chambers especially with regards to whether or not screws would back out, capacitors and chips and resistors would pop off boards, etc.


In the event of antenna breakage, there are two antenna. A laptop will continue to function satisfactorily with a single ear in a school setting, and should suffer only slight degradation in performance in more remote settings. The ear was redesigned late in the design process ([[Hardware_specification#Preproduction_Test_Systems_.28CTest-1.2C_or_C1.29|C-build]] and later) to simplify repair --- replacing an ear now requires the removal of only six screws, thanks to a connector embedded in the rotary hinge.
I was a proponent of the cruelest of all tests: we put all the tests in series and tested for operation after each test. Three machines had to survive the abuse. wvbailey, pierab@aol.com [[User:152.163.98.43|152.163.98.43]] 17:59, 23 July 2007 (EDT)


[[Category:OS]]
[[Category:OS]]

Revision as of 06:24, 10 November 2007

  english | 한국어 HowTo [ID# 76293]  +/-  


Design Goals

OLPC's laptops will be deployed in places where there will be very little or no infrastructure at all. We wanted to make sure that the laptops could connect to other laptops in their vicinity regardless of the presence or not of connectivity infrastructure. We also wanted to help kids share Internet connectivity without any additional infrastructure.

It became very clear that the utility of the usual laptop wired connectivity options (ethernet, modem) will be very limited under those constraints and a relative waste of our limited bill of materials budget. Instead we have to concentrate our resources to increase the utility and functionality of the wireless network adapter.

To achieve our design goals we chose to add self organizing multihop (mesh) networking capabilities to the laptop's network adapter. The constraints imposed by our Mesh Network Details mandate the use of System on Chip (SoC) Wireless Adapter, with the mesh networking protocol running directly on the adapter's CPU.

Network Adapter

Mesh Wireless

The Mesh wireless protocol it's an implementation of the 802.11s draft.

User Experience

There is quite a bit of complexity to properly configuring the wireless network in the variety of use scenarios that the children will be encountering. Our bias is towards making efficient use of mesh networking, but in some situations, infrastructure mode will be used. In those cases, the laptop will offer mesh portal (MPP) services to other laptops in the vicinity. If no mesh or access point is visible, then the laptop will become a mesh point on Channel 1. An additional bias to our approach is to use Channels 1, 11, and 6 when possible. This is an efficient use of spectrum as it lets us use three channels with essentially no overlap.

The basic flow:

  1. Start with Channel 1
  2. Try DHCP
  3. If successful, then CONNECTED/DONE (DHCP)
  4. Try AUTOID
  5. If successful, then CONNECTED/DONE (AUTOID)
  6. Goto Channel 11
  7. Try DHCP
  8. If successful, then CONNECTED/DONE (DHCP)
  9. Try AUTOID
  10. If successful, then CONNECTED/DONE (AUTOID)
  11. Goto Channel 6
  12. Try DHCP
  13. If successful, then CONNECTED/DONE (DHCP)
  14. Try AUTOID
  15. If successful, then CONNECTED/DONE (AUTOID)
  16. Try last successful AP
  17. If successful, then CONNECTED; offer MPP/DONE.
  18. REPEAT DHCP/AUTOID loop on all channels.
  19. No connection? Become Mesh Point on Channel 1.

Rollover will reveal the difference between DHCP and AUTOID; IP address; Gateway; DNS;. AP or Mesh; ESSID; Channel Number; and Signal Strength (AP only).

  • AP icon on Mesh View should distinguish between access points that are open vs. requiring a key.
  • AP icon on Mesh View should distinguish between access points on Channels 1,11,6 and other channels.
  • AP icon should indicate that you are offering MPP service to others.
  • Ethernet icon should indicate you are offering MPP service to others.

From the Mesh View, you should be able to jump directly into Steps 1, 16, or 19 above (search for mesh, select AP, select mesh point).

Capturing wireless traffic on the xo

Here are the steps to capture wireless traffic on the xo:

  • Pre-req:
yum install tcpdump
killall NetworkManager
  • Then:
echo $TRAFFIC_MASK > /sys/class/net/msh0/device/libertas_rtap
ifconfig rtap0 up
tcpdump -i rtap0 -s 1500 -w capture.dump
TRAFFIC_MASK bits:
Data frames: 0x1
Mgmt frames but beacons: 0x2
Beacons: 0x4
  • Then open capture.dump with wireshark.

To interpret mesh traffic correctly, you will want to compile wireshark with this patch: https://cozybit1.dnsalias.org/~javier/patches/wireshark-0.99.5-fw-5.220.11-support.patch

Antenna Reliability

The antenna "ears" have been subjected to drop testing in both the open and close positions, and survive multiple drops onto concrete from desk height. They are made of rubber surface over a polycarbonate center section, allowing them to flex upon impact.

In the event of antenna breakage, there are two antenna. A laptop will continue to function satisfactorily with a single ear in a school setting, and should suffer only slight degradation in performance in more remote settings. The ear was redesigned late in the design process (C-build and later) to simplify repair --- replacing an ear now requires the removal of only six screws, thanks to a connector embedded in the rotary hinge.