User:Mchua/Braindumps/system testbed

Jump to: navigation, search

This is a testbed/space proprosal. It has not yet been implemented, nor are there concrete plans to do so.


To provide a dedicated, RF-isolated* test/devel bed for large-scale XO/XS systems similar to the technical setup one might see in an OLPC country deployment. This will eliminate the XO-finding, XO-flashing, XS-connecting, etc. overhead associated with making up these testbeds ad hoc as needed.

  • not that there won't be any other RF activity in the location, but that no other machines will be on the testbed's mesh network.


  • OLPC QA team - to reproduce and test release-related bugs involving large numbers of XOs and/or a XS ("does our software perform the way it's specified to in a large-scale XO system?")
  • OLPC System Support - to reproduce and develop fixes for large deployments in the field ("this large-scale system in the field experienced these errors; let's fix their problem, then push the fix upstream as a new feature if applicable")
  • OLPC volunteers - to assist with the above, and to run their own experiments (when the testbed is otherwise idle) involving large numbers of XOs


Equipment under test

  • 30-100 XOs
  • 1 XS
  • 1-4 APs (depending on the number of XOs; no less than 1 AP for every 50 XOs)

Supporting devices

  • 1 non-XO laptop for recording data / looking up reference information / communicating with developers outside the testbed location
  • Digital camera
  • 10-20 1 GB USB thumbdrives (for holding collector keys, clean-install builds, olpc-updates, etc.)
  • 5-10 USB-to-ethernet dongles for isolating connectivity issues
  • Power supplies, extension cords, and power strips for all of the above
  • 2-5 USB keyboards and mice for faster XO input from adult hands, when needed
  • A labelmaker
  • Shelves for holding test equipment
  • Super-sticky post-its in various colors for flagging machines
  • Dry erase markers and dry-erase surfaces by every XO for temporary test-specific notes

Future plans

  • Develop ways to specify system test cases - a "please run this test" request so that all tests can be run or recreated by people other than the ones requesting them
  • Develop automated scripts and tools that can take the above specifications and use them to set up and run the test cases requested, as much as possible (may require additional equipment)
    • mass-reinstall solution dwoodhouse developed in Mongolia?
    • mncharity's X master/slave script?