Release notes/623: Difference between revisions
m (OLPC Ship.1 Software Release Notes moved to Release Notes/623: Organizing release notes under common directory) |
m (Release Notes/623 moved to Release notes/623: Use proper lower-case page title convention.) |
Revision as of 22:28, 26 August 2008
This page details a stable software image, Ship.1, formerly Trial-3. Important changes are noted below. This image is "late beta-test" software; there is much you can now do with the laptop out of the box (See 542 Demo Notes and 608 Demo Notes). General – somewhat outdated – instructions on how to use the Sugar interface can be found here. Also of note are the Trial-2 Release Notes. These latter pages detail issues with particular versions of the hardware. The Library Release Notes page has information about the early stages of our sample content library. Finally, the OLPC Human Interface Guidelines describe our vision of where we are heading, only partially reflected in our current software.
The software is just maturing to the point where we can embark upon later-stage trials for feedback and polish. Please review the #Notes below and please report any new bugs to our trac system (See http://dev.laptop.org).
Overview
Most of the first-generation vision for our system is now present and working:
- The Journal
- Presence service
- Easy real-time collaboration in many of our activities including:
- Read, Write, Chat, Browse, Record, EToys, TamTam Jam, Memorize, Connect, Calculate, and Measure
- Mesh networking
- Automatic configuration of ad-hoc meshes, allowing collaboration without any infrastructure or Internet access
- Automatic configuration of school server mesh
- Anti-theft activation on installation
- Registration with a school server
- Backup to the school server
The software has been rebased onto Fedora Core 7 and Python 2.5.
Remaining tasks:
- Bug fixes for first deployment
Important notes
At this time, we do not recommend installing the Trial-3 software on B2 systems due to some driver incompatibilities and excessive RAM and CPU usage.
Stable builds
The release notes on this page apply to the stable software release: Build 623 (2007-10-29). We recommend that you follow the instructions found on the Autoreinstallation image page to upgrade to this image. If you are already at build 612 or higher, you can upgrade using the olpc-update 6xx command from a virtual terminal. (Information regarding the latest development builds – non-stable builds – can be found here: Test_Group_Release_Notes.)
- USB Update key needed to upgrade systems in the field#1748
- Note that the Autoreinstallation image has latent support for preserving the user files on the system in the olpc.fth file. The USB key must be large enough to hold both the image to be installed and any and all files the user may have created in /home/OLPC.
Base-system notes
The system is now based on Fedora 7, and OLPC's kernel is based on Linux 2.6.22.
Suspend/resume and power management
- Suspend/Resume#60
- Note that a number of the bugs in the tracker bug are likely duplicates. Suspend and resume using the power button currently wakes up for various types of wireless LAN traffic.
Placeholder for suspend/resume bugs
Other
New Features:
Private invitation:
- Start an activity (such as Write);
- From either the Neighborhood (Mesh) view or the Friends view, find someone with whom to share;
- Hover over the XO icon of the invitee and click on 'Invite' (This sends an invitation to participate in your current activity);
- The invitation will appear as an icon in your colors on the taskbar tray of the invitee's laptop;
- This activity is started by clicking on it (in the usual manner of all activities), but it starts up as a shared activity.
Sharing a bookmark in Browse:
- Open the browser;
- Share the activity either by issuing a private invitation as per above or by selecting 'share with neighborhood' from the menu under the Activity tab;
- Go to a URL of interest;
- From the Browse tab, click on the star in the upper right of the toolbar (This will create a bookmark that appears in a tray at the bottom of the activity window on each laptop that is sharing the activity);
Open Issues
- Network connectivity
- An XO that is acting as an MPP (mesh portal point) cannot participate in local mesh collaboration. (Until there has been more testing for an XO acting as an MPP vis-a-vis mesh collaboration, we have diabled automatic MPP mode. To manually enable this mode, please refer to the instructions here.)
- Some activities share well in link-local; but don't share properly over the internet using the Jabber server. Activities that don't share well across the internet (G1G1) include Record photos and video (audio?), book reader, eToys, large files in Abiword may cause the activity to stop sharing. (This has been fixed in subsequent versions of the sharing/network software.)
- Connect to an Airport Extreme access point with a WEP key.
- You need to follow these steps when you login in the Airport configuration utility:
- Choose a network security level of 40-bit or 128-bit WEP.
- Set any password(you may tick the plain text option) and Update.
- After the update login again and note the HEX password in the summary view.
- On the XO neighborhood view click the access point.
- In the security popup type $:XXXXX, where XXXXX is the HEX password.
- Choose the Shared Key option.
- If the AP changes or removes its WEP key, the XO will not realize it directly. You will need to
- Remove /home/olpc/.sugar/default/nm/networks.cfg
- Reboot
- Save photos
- Record has changed a lot, and as a result, old entries cannot be opened on the new build
- Follow these steps to save photos; unfortunately, videos will be lost.
- Drag photos from record onto the clipboard.
- Scroll over the clipboard images, and select "add to journal"
- Sharing a Write document works well for text, but if you add too many images (large docs) don't share properly.
- This is fixed in future builds.
- Journal
- Sugar
- The battery indicator on the home sugar page only updates when the power adapter is plugged in or removed. #2861
- If the network neighborhood mesh view stops showing other laptops or access points, reboot sugar with CTL-ALT-ERASE
Transporting photos, audio, and video from Record to USB sticks (Clipboard objects don't work)
- Drag media to the clipboard
- The files will be automatically added to the journal (named Audio by {XO_name}, Video by {XO_name}, and Photo by {XO_name}
- Drag these files from the journal to the USB stick, and any other laptop will be able to see and open them.
- If you add the clipboard objects to the journal, they will not save correctly.
- These objects will be able to be opened with different activities, but if you transfer them to a USB, you will not see them.
- Changing the names of the items in the journal will force them to create correct names and file extensions.
- After changing the name, drag the item from the journal to the USB stick.
- Now, a non-XO laptop will be able to see and open the items on the USB stick.
IMPORTANT (unless we are going to have people install the rpm's to use olpc-update instead of doing the upgrade with a USB stick)
- You must have the laptop plugged in with the AC adapter to upgrade firmware. Otherwise you will get a failure message; and you may need to boot on the backup image (holding down the gamekey O while booting) to try the upgrade again.
- Update to latest firmware before updating to latest image.
- The new firmware (Q2C28 and later) will check that the image is not corrupt before installing it, whereas the old firmware will wipe the nand and then run into trouble trying to install the new image.
- Basically, using the new firmware will keep you safe from possibly losing your data due to a corrupt image.
Note that for long term storage, removing the battery pack after a full charge is best practice; this is true for all battery powered devices.
- RestrictedFormats
- In some jurisdictions, patents on algorithms apply, and royalty payments may be required. Examples include MP3, and MPEG-4. This is a particular nuisance for media players, for which many of the common codecs algorithms are patented. In other jurisdictions, software patents do not apply and there are usually freely available implementations for these algorithms available. Sometimes, as in Adobe Flash, or the Real Helix player there are free (as in beer) implementations available, where those corporations have paid these patent royalties and made usually (binary) versions of codecs available. This has direct consequences as OLPC does not want to burden all machines with what may be unnecessary duplicate patent royalties: OLPC must therefore leave the customization of the distribution for these formats for "in country". For jurisdictions in which such patent laws apply, there are now solutions such as those sold by Fluendo to these issues. The Flash format (whether Adobe's Flash 9 or Gnash) illustrates this problem well; even though we can include gnash, as built it does not have support for MP3 or MPEG-4, which should work correctly if Gnash is rebuilt.
- fontconfig cache is invalidated too easily on mtime check
- Applications can take a very long time to start, due to a fontconfig caching bug provoked by the time being set incorrectly (which can happen easily if the battery is replaced or the time is set badly). To work around this problem, use the "date" command from a console to set the current time and date.
X Window System
- X Window System open issues
- specific to OLPC are found in trac.
User Interface: Sugar
- Shutdown
- to shutdown completely, hover over the XO in the home view and click on 'Shutdown'. This is a graceful shutdown, preferred to holding the power button for more than 4 seconds, which summarily resets the machine.
- Suspend
- Momentarily press the power button.
- Screen Capture
- Alt-1 does a screen capture and stores the result in the Journal.
- USB Keys
- USB keys are automatically mounted and their contents are viewable from within the Journal. Files can be dragged from the Journal or Clipboard onto the USB key from within the Journal. (USB file systems are still accessible from console and the developer's console through the standard Linux mechanisms.)
Many of the user interface issues we intend to fix. Among the most notable issues are:
- New networking UI needs documentation#989
- To choose a network, push the first of the four circular "mesh view" keyboard buttons (or "F1" in an emulator), hover over each triangle until you find the access point you want to associate with, and then click on it. (Note that the access points are color-coded based upon a hash of the AP SSID. Therefore, once you learn the color of your desired access point, you can subsequently find it quickly.) You may be prompted for an access point's password.
- Network Autoconfiguration
- an XO will now autoconfigure the network. If no school server mesh, or previously connected Infrastructure Access Point can be found, an ad-hoc mesh will be formed using private networks. It will also associate with conventional access points using WEP or WPA. If it associates via WEP or WPA, the mesh portal functions cannot work, however.
- Clipboard interaction (on the Frame)
- is not fully developed in all activities. Some activities can copy and paste (using Ctrl-C and Ctrl-V) or drag to and from the clipboard, but some do not.
- Groups
- are not yet exposed in the interface. Sharing, chat, etc. are shared with the neighborhood (open to everyone connected to the mesh) or by invitation to individuals (and groups, where the invitations are issued one at a time).
Presence Service
- PS open issues
- can be found in trac
- Connections
- Telepathy connections are supported via the school server - a jabber XMPP server with some particular required features - as well as over the mesh network using Link Local XMPP. If you have no Internet access, link local is the default and you will see XOs in Neighborhood view who are on the mesh network. If you do have Internet access, link local presence will be switched off and you will only see XOs who are connected to the server.
- Default Server
- The default XMPP server is now jabber.laptop.org, so if you have internet connectivity you should see other users from around the globe in Neighborhood view, via this server.
- Server Connections
- Activity icons appearing in the mesh should disappear when everybody leaves that (shared) activity. However if the PS fails to announce somebody leaving (for example quitting the jhbuild emulator with alt-Q while in the activity#2616), then the icon remains on the mesh view#1935.
Developer Console
The developer console provides a set of tabs in a popup window on top of activities. It is launched by typing Alt-=.
- The XO Resources tab shows basic information about the system, the recent CPU usage and flash usage
- The Memphis tab returns information about executing processes. Memphis)
- The Log Viewer tab allows exploration of many key system logs.
- The Terminal tab provides a terminal emulator and shell.
- The Presence tab provides logs of the presence service in raw form (the mesh view is a graphical interpretation of these logs), to aid in debugging one of our key new services.
Journal and Datastore
The Journal is a log of all of the activity on the laptop. The Journal uses the underlying Datastore facility.
- Datastore issues are in our trac system.
- Journal issues can be found in our trac system.
- The datastore indexes all information on an external device; this issue—Datastore should check versions and recreate indexes automatically#2627—has caused some trouble during its development, which we hope to prevent in the future.
- Removable media support is now present. When a USB key is inserted, Sugar will now automatically mount the USB stick and put an icon on the bottom of the journal; if you click on the icon, the journal on the USB stick will be shown. You can also unmount the stick using that icon by using the pop-up menu. On an external device, the file name bears some resemblance of the name that may have been given to the journal entry, so you should be able to take a FAT formatted USB stick from an OLPC and mount it on Linux, Windows or MacIntosh to interchange files; on the JFFS2 file system right now it is simply a numeric has, which is arguably unfriendly.
Pre-installed Activities
A number of activities come pre-installed on the laptop. Instructions on loading additional activities is found here.
Chat
Chat open issues can be found in trac.
Chat has been restored to our builds. It now uses the Presence Service, so instead of a global chatroom, if you start Chat from the frame it will create its own room for you. When others join in the Neighborhood view, the activity shows who has joined or left, and if you join it will display those who are already in the chat room.
- Use either "share with neighborhood" or "invite" to advertise your chatroom to other people.
- There is also chat and "push-to-talk" capability built into Etoys.
Browse
File:Web.png Activity Version = 59
Our Xulrunner-based browser uses the scaling engine from Firefox 1.9. This greatly improves browser behavior on our high-resolution display. More performance enhancement needs to be done, particularly in regard to the scaling of images. All of the Google Apps now work well. Please let us know (by filing a trac bug report) when you find web sites with formatting problems.
- Web Browser Open Issues can be found in trac.
- Donut loses its center#3353. When the browser opened a second instance (by opening a link to a "target") the donut becomes a solid circle and the individual instances of the browser are obscured. This bug has been fixed in later builds.
- Plug-ins should be installed in the directory /usr/lib/mozilla/plugins.
- The current version ships with a FOSS version of Flash called Gnash; it has improved substantially from Trial-1. Adobe's Flash plug-in can be loaded on the laptop—in some situations it may be preferable to the current version of Gnash. As noted in RestrictedFormats, we cannot distribute Gnash with patented codecs, though Gnash can be rebuilt to support a wide range of datatypes.
- There is no Linux support for Shockwave; consequently Shockwave does not work in the browser.
- The web browser does not ship with Java plug-in. Sun's Java and web browser plug-in work fine.
- The web browser has no tabs, no zoom (yet), and only partial provision for ebook mode (yet).
- User experience has problems with pop windows.
- Most media objects stored in the Journal can be opened in the browser by "resuming from the Journal". Please report any problems with resume (by filing a trac bug report).
- browser cannot open files generated by view source#4022 View source is invoked by typing either CTRL-U or FN-Space (FN-Gear-key). The page source is displayed in the Write activity—where it can be edited—and saved as a Journal entry. The Journal entry cannot be resumed in either Browse or Write (this is a regression that will be fixed in a later build). It can be copied from the Journal to the clipboard (but cannot be dragged into Write—another regression).
- Use either "share with neighborhood" or "invite" to advertise your browse session to other people with whom you can share bookmarks.
Write
The Write activity is based on AbiWord. This activity is fully integrated in the Sugar environment, and provides an efficient, light weight text editor. It has support for reading various documents formats, such as Microsoft Word (.doc, .rtf), OpenDocument (.odt), (X)HTML (.html), and plain text (.txt). The core of this activity might be used for editing text in the wiki as well.
- Write activity issues can be found in trac.
- Write must expose UI to allow specifying output format.#4165 The Write activity has all the internal hooks for saving files out to arbitrary formats, but this feature is not exposed to the user. (You can use CTRL-SHIFT-S to invoke a "save-as" dialog, but it will save the file outside of the Sugar interface.) This will be fixed in later build.
- Write activity doesn't share inserted pictures.#4108 This is a bug due to the sharing mechanism that is in Build 623. It has been corrected in later builds.
- Use either "share with neighborhood" or "invite" to advertise your Write session to other people with whom you can do simultaneous editing.
- Most text document types can be resumed in the Write activity from the Journal.
- Images can be imported into Write by dragging them from the clipboard or by using an import dialog from the Journal.
- Etoys can also be used to author text and multimedia presentations.
Record
The primary record activity has support for still images, video, and audio. (The Etoys activity also includes support for the camera.) Playback of media (still, video, and audio) captured by Record can be resumed from Browse or Etoys. Still images captured by Record can be imported into Write through a Journal search dialog or from the clipboard.
- Record open issues can be found in trac.
- Green LEDs illuminate above the microphone and camera when the Record activity is running.
- The Build 623 version of Record does not utilize the game-pad buttons. In later builds, these buttons can be used as a shutter.
- Record does not work properly in "rotate screen" mode.
- Record saves video as .ogg, which cannot be directly imported to youtube.com.
- The icons under the Record Tab are ambiguous. These have been redone in latter builds.
- Audio recording saves a still image, but that image is not displayed when resuming from the Journal.
Draw
The application is fully written in Python, using only GTK features. It is being developed at LSI-USP in Brazil.
- Paint (Oficina) Issues can be found in the trac system.
- Not able to import image from the Journal into Draw#2657. This is fixed in later builds.
- Etoys can also be used for drawing.
TamTam
TamTam is a suite of music activities that span networked "jam sessions" to composition to a synthesizer lab. The release notes for TamTamJam, TamTamEdit, and SynthLab are available here.
- TamTam open issues can be found in trac.
Etoys
The Etoys learning environment has been integrated into the Sugar environment, and you are encouraged to visit the Squeakland site. Sugar Etoys has information specific to Etoys in our Sugar environment.
- Etoys open issues can be found in trac.
- Most media objects can be resumed into Etoys from the Journal.
- Most media objects can be dragged from the clipboard into Etoys.
- Etoys has rich-media capabilities: it can be used for painting, writing, presentations, video capture and playback, etc.
- Etoys has numerous modes of network-enable interaction: sharing of objects, sharing of desktops, chat, push-to-talk, etc.
Turtle Art
Turtle Art is a logo-like application that draws colorful art via a turtle and scratch-like visual programming elements that snap together in compilable ways.
- Turtle Art open issues can be found in trac.
- Integration with the Journal is not complete.
Pippy
- Pippy is a simple Python programming environment.
- Pippy open issues can be found in trac.
- Cut and paste is not working in this version of Pippy.
Calculate
The calculate activity provides a generic calculator. The interface provides the simplest functions directly and should therefore be easy to use for the youngest children. However, it does support more complicated math and variables.
- Calculator open issues can be found in trac.
- When "sharing", Calculate allows the sharing of variables and calculations across the network.
- The calculator does not save its variable data to the Journal.
Measure
The Measure activity is used to measure DC and AC voltages by observing them on a oscilloscope like interface, being able to watch waveforms in frequency domain (spectrum analyzer), logging data at a specified time interval and drawing the graph of logged data.
- Measure open issues can be found in trac.
- Sharing is not enabled in this version of Measure.
News Reader
Based on PenguinTV. A few RSS feeds of educational interest have been preprogrammed as examples:
- Astronomy Picture of the Day
- BBC News
- EPOD - Earth Science Picture of the Day
- Merriam-Webster's Word of the Day
- Planet OLPC
Other feeds can easily be added/substituted.
- News open issues can be found in trac.
Read
Read is opened as a "helper" application to the browser. PDF files are opened in an ebook reader.
- Read open issues can be found in trac.
- Screen rotate works well within the Read activity, but the buttons don't remap to the current orientation.
- Read can be used to share "books".
Memorize
- Memorize open issues can be found in trac.
The game memorize is about finding matching pairs. A pair can consist of any multimedia object. At the moment these are images, sounds and text but this could be extended to animations or movie snippets as well. Which pairs do match is up to the creator of the game.
Connect
A version of Connect-4 that supports network play, and is useful as an example of how to use Sugar's collaboration facilities.
- Connect open issues can be found in trac.
- Connect requires two players to function - the game cannot be played until you share it and another player joins. At this time there is no support for starting a new game once somebody wins - that will be a future feature.
Additional Activities
Many activities are under development and they can be found with their status in the wiki while the Activity Grid has the status of all of the activities that have systematic testing.
Most activities are installed by first downloading a .xo file from the web; second, open the activity from the Journal. The activity is installed in /home/olpc/Activities and on the Frame.
Watch and Listen
File:Watch&listen.png Activity Version = 8
Videos and DVD's can be played back on the system, including RealNetwork formats. A Sugar version of Real's Helix player is available and installed; only Ogg format media is in the base install for the reasons outlined in RestrictedFormats. Please see the Helix Media Activity release notes for further details. A browser plug-in version for media playback is expected soon. Watch & Listen is not preinstalled. It can be installed from File:Watch & Listen-8.xo
- Watch and Listen open issues can be found in trac.
Watch and Listen is opened as a "helper" application to the browser.
Temporary placeholders and Missing Pieces
There is no user interface for controlling the audio input and mixing. The workaround right now is to use "alsamixer" in a terminal window. Speaker volume is controllable by the slider. There is currently no visual feedback for changing the volume.
Our plans include a web server and wiki system MikMik, using an WYSIWYG editor based on the write activity (currently Abiword). This has a collaborative write capability we exploit.
Backlight control
The backlight can be controlled using F9 (dimmer) and F10 (brighter); With the backlight completely off, there is no color; hardware anti-aliasing for the color screen is also disabled (Screen resolution is maximized in this mode). Likewise, volume is controlled by F11 (quieter) and F12 (louder).
School Server Notes
The school server software is not quite ready.
Laptop Registration
To register with a school server, you execute the command olpc-register from a command line in the developer console. This establishes the relationship of the laptop with the school server (named "schoolserver" in the local DNS domain). It also establishes a jabber server used by the presence service of the laptop. This should have a UI by Update.1.
Laptop Backup to server
In the Journal, there is a Backup tab; you select that tab, and if your laptop is registered, it will backup to the school server.
OLPC Platform
Inventory of "permanent" packages
Inventory of "debug" packages
Inventory of "optional" packages (?)
Development environment
Languages - Logo, javascript, Python
Libraries
Where to find source
Many of the OLPC activities, kernel, and other software are in our git repository.
Internationalization/Localization (see Category:Language support & Category:Languages (international))
Other Multimedia Software
Other software that has been tested on the OLPC systems includes Adobe Flash, and Real's Helix® and Sun's Java.
Finding the Latest Test Builds
Development and stable builds can be downloaded. Boot firmware is kept in this wiki. The latest stable firmware and system image combined into an easy to use package with a script to automate installation of the firmware and base image makes upgrades to the latest stable software extremely easy.
Enabling logging
Activity logging is now turned off by default. To turn on logs:
- edit ~/.xinitrc and uncomment the line that imports .sugar.debug (It is the second last line of the file and there are commented instructions over it in the file itself)
- in ~/.sugar.debug, add these lines -
export JOURNAL_DEBUG=yes (to enable Journal Logs)
export SHELL_DEBUG=yes (to enable Shell Logs)
export ACTIVITYNAME_DEBUG=yes (to enable activity Logs where ACTIVITYNAME is that given in activity.info file)
export SUGAR_EMULATOR=yes (this shows me logs of all activities without having to enable logging for each activity)