Requirements

From OLPC
Jump to: navigation, search
  english | 한국어 HowTo [ID# 149837]  +/-  


  This page is monitored by the OLPC team.
542-stopicon.png This page has a more up-to-date location: Releases


Journal/Datastore

(This is work in process, week of 1/14/08)

  • J1 Journal features
    • J1.1 Versioning and auto-save
    • J1.2 Delta Compression
    • J1.3 Full text search in the journal
  • J2 Journal Backup - Smart Dropoff
    • J2.1 Transparent backup between XO and School Server
    • J2.2 History list is always available on the XO; items that are stored on the School Server are still available
    • J2.3 When the journal approaches 'full'; need a notification
    • J2.4 User can check the items in the journal that should not drop off (click on the star)
    • J2.5 User dialog (control panel?) to ask if auto drop-off should happen
    • J2.6 Items that are backed-up to the school server CAN be removed locally
    • J2.7 Some meta data stays in the journal; it is gone until someone searches and clicks it in the journal
  • J3 Datastore features for reliability and performance
    • J3.1 Fault-tolerance
    • J3.2 Rebustness
    • J3.3 Performance
    • J3.4 Better transparency - finding items with tools other than the journal
  • J4 Activities (specific to the datastore)


The journal will never delete something unless it is the only way to keep the XO running.

Control Panel/Preferences

See Sugar_Control_Panel for how to activate in Update.1

  • CP1 Network control options
    • CP1.1 Automatic MPP enabled/disabled
    • CP1.2 Set order of automatic connection (XO Mesh before AP, for example)
    • CP1.3 Set which jabber/school server
    • CP1.4 Select channels of operation
    • CP1.5 Turn Radio on/off
    • CP1.6 Control whether the radio turns off while the laptop is suspended
    • CP1.7 Turn IPv4 on/off
    • CP1.8 Turn IPv6 on/off
    • CP1.9 Flush Network Manager history
    • CP1.10 Turn off probe requests
    • CP1.11 Switch for classroom (dense) environment, to turn off mDNS repeating
  • CP2 Accessibility options
    • CF2.1 Turn high-contrast mode on/off
    • CF2.2 Default font size
    • CF2.3 Turn on/off system sounds
    • CF2.4 Set mouse parameters
  • CP3 Language options
    • CP3.1 Change locale for sugar environment
    • CP3.2 Set XKB configuration for supporting multiple languages, styles (e.g., Dvorak), dead key vs combining key, etc.
    • CP3.3 Set default font
  • CP4 Sugar options
    • CP4.1 Change XO colors
    • CP4.2 Change XO knot points
    • CP4.3 Change nickname
    • CP4.4 Turn 'traditional" desktop on/off
    • CP4.5 Turn ALL CAPS mode on/off
    • CP4.6 Flush "recent document" list
    • CP4.7 Set default printer
    • CP4.8 Set timezone
    • CP4.9 Set default font
    • CP4.10 Enable/Disable default boot sound and graphics
    • CP4.11 Turn on/off mouse-tap for left button push
  • CP5 Security
    • CP5.1 Enable/disable developer mode (requires developer key)
    • CP5.2 Force system update
  • CP6 Legal
    • CP6.1 Set/change default license
  • CP7 Browser Options
    • CP7.1 Set default URL for browser
    • CP7.2 Set default browser font size

Mesh / Connectivity Requirements

These requirements describe the connectivity of laptops to a school server mesh, to an infrastructure Access Point, and to each other through a local (not internet connected) mesh.

School Server

  • M1 Laptops can connect to a school server mesh when booted up without any user intervention.
    • M1.1 Files, services, and internet connectivity on the school server are available to the laptop.
    • M1.2 Laptops on a mesh served by a school server can see each other in neighborhood mesh view.
    • M1.3 Laptops on a mesh served by a school server can share activities.

Infrastructure AP

  • M2 Laptops can connect to infrastructure Access Points:
    • M2.1 Open, automatically if there is no school server mesh
    • M2.2 Open, by clicking on the Access Point in the neighborhood mesh view
    • M2.3 WEP enabled
      • M2.3.1 Sugar should ask for a key for the first connection attempt to each secured AP.
      • M2.3.2 Sugar should allow the following key formats to be entered:
        • 64-bit hex
        • 128-bit hex
        • 64-bit ASCII
        • 128-bit ASCII
      • M2.3.3 Once a successful connection has been established, Sugar should remember the key used.
    • M2.4 WPA enabled
      • M2.4.1 Sugar should ask for a key for the first connection attempt to each secured AP.
      • M2.4.2 Once a successful connection has been established, Sugar should remember the key used.

No Internet Access

  • M3 Laptops can connect to each other when used in locations with no access to the internet (no infrastructure AP, school server, or other networks).
    • M3.1 Each laptop can see the other laptop(s) in the neighborhood mesh view and share activities.

Power Management Requirements

Most of the power management is behind the scene and should be invisible to the student. For update1 release there will be no difference in power management whether the laptop is using external power adapter or its battery.

The Power Management Table details what sections of the laptop are powered in different states. A more detailed description of the implementation is available at Hardware Power Domains.

Sleep Mode

The purpose of the 'Sleep' button (power on button) on the laptop is to allow a child to leave the laptop open with the antenna up (and potentially having set up a good RF relay); and go into suspend with only the wireless on.

  • PW1.1: In sleep mode, the screen goes blank
  • PW1.2: Power LED blinks slowly
  • PW1.3: Wireless continues to work (Wireless LEDS continue to work)
  • PW1.4: Comes out of Sleep mode by pressing power button; no other buttons will bring the laptop out of sleep mode.

Suspend

The purpose of suspend is behind the scenes processor suspension to save power during regular use.

  • PW2.1: After a short delay the screen dims
  • PW2.2: After additional delay the processor suspends and the power LED blinks slowly
  • PW2.3: At this second delay, the screen goes blank (not currently in update1)
  • PW2.4: Wireless continues to work (wireless LEDS visible)
  • PW3.5: Any key or the touchpad brings the laptop out of suspend; and is an active key (not lost), even if the screen was blank.

Lid Close

  • PW3.1: Closing the lid should go into 'Sleep Mode'
  • PW3.2: Wireless should turn off (not in update1)
  • PW3.3: Even after opening the lid, the power button is used to come out of sleep mode.

Ebook mode

Behind the scenes, reading should consume the least amount of power after 'suspend'. The student shouldn't notice anything when in ebook mode.

  • PW4.1: A student can download a pdf file, and click on it. It will format and open for reading on the screen in low power mode. The screen brightness button can be used to reduce the power consumption even more.
  • PW4.2: The student can convert the laptop to tablet mode and use the directional keys for scrolling through the text.
  • PW4.3: If the student presses the rotate button, the screen will rotate 90 degrees. (This is in any mode, not just ebook mode !)
  • PW4.4: In ebook mode, the screen may be turned off (see Screen Off) if there is no input activity for a fixed time period.

Laptop Activation

  • ACT1 A Laptop that has not been activated will not complete the boot up process and will display an activation failure message for 5 minutes before terminating in a powered down state.
  • ACT2 A Laptop that has been activated with the correct activation code, will boot completely into the start up screen, requesting the student to enter start-up data (name, XO color).
  • ACT3 A Laptop that tries to activate against an incorrect activation code, will not boot completely and will display an activation error message for 5 minutes and terminate in the powered down state.

Laptop Upgrade via USB

  • UP1 It is possible for a student to upgrade his XO image from a USB stick.
    • UP1.1 This software will first allow for backing up user data; do the upgrade; and allow for restore of user data.
    • UP1.2 Problems with the backup, upgrade, or restore should provide an appropriate error message with suggestion for how to recover.

Audio Requirements

  • AU1 The student should be able to download standard MIDI files from the internet and play them on the laptop.
  • AU2 Activities should be able to access a local, shared audio sample library.
  • AU3 The laptop should provide ways to play audio files of all common audio formats at any sampling rate
  • AU4 The laptop should provide a common format for sharing audio and music file between activities


Clipboard Requirements

The main purpose of the clipboard is to provide the students with an easy access location to store things to be referenced or used at other times or with other activities. Whenever possible drag and drop should be available; and CTL-C and CTL-V for cut and paste should also be available.


  • CL1 Activities should allow the student to save the output to the clipboard. Once it is there, an icon representation shows up on the left hand task bar. (demoable in trial-2)
    • CL1.1 The sugar task bar should appear if a student is dragging something to the left. The object should be copied to the clipboard, showing up as an icon on the left hand side of the taskbar.
    • CL1.2 After the drag and copy to clipboard are complete, the sugar task bar should disappear again until the student mouses over it.
    • CL1.3 Paint should allow saving the highlighted selection to clipboard via an edit command or with CTL-C, or by dragging it to the left hand task bar. If nothing is highlighted, the entire picture is saved to the clipboard. (trial-3?)
    • CL1.4 Abiword should allow saving the highlighted selection to the clipboard via an edit command, CTL-C, or by dragging it to the left hand task bar. If nothing is highlighted, the entire picture is saved to the clipboard. (trial-3?)
    • CL1.5 Record should allow saving a photo or movie to the clipboard via command or drag. (trial-3?)
    • CL1.6 Browse should allow saving a URL, an image, or a highlighted section to the clipboard via an edit command, CTL-C, or by dragging it to the clipboard. (trial-3?)
    • CL1.7 The Journal should allow moving any activity generated file to the clipboard via a command or by dragging it to the left hand task bar. (trial-2)
  • CL2 Something that has been saved to the clipboard, should be easily inserted into the student's active application, such as an Abiword document, Chat session, or Paint activity, as appropriate. (demoable in trial-2)
    • CL2.1 The clipboard should allow any stored item to be 'pasted' into the active activity via a command on the flyover.
    • CL2.2 The Abiword activity should allow dragging from the clipboard into the document. (Demoable in trial-2)
    • CL2.3 The Paint activity should allow dragging from the clipboard into its document. (trial-3)
    • CL2.4 Pasting from the clipboard into the Chat activity would make the clipboard file available to everyone logged into the chat. (trial-3?)
    • CL2.5 The Browse activity should allow a clipboard item to be dragged into the URL input to try to execute it as a url.

AbiWord Sharing Requirements

  • AB1.0 The student can create an AbiWord doc and share it.
    • AB1.1 Another student can click on the shared copy from the neighborhood mesh and will see the same document.
    • AB1.2 Changes made by either student while the document is open and shared can be seen by both students.
    • AB1.3 Documents with embedded images are sharable.
  • AB2.0 One student makes changes to the document while at home, then returns to school, then shares it again.
    • AB2.1 Other students can click on the shared doc and see the updated version.
  • AB3.0 If two or more students make changes to the same document while not connected; they can decide which of the versions they want to share with others. That student can share the document and others can retrieve that version.
  • AB4.0 If two or more students make changes to the document and both of them share it, there will be two different documents in the neighborhood mesh view. They are no longer in sync and the second one shared will be forced to have a new name.