OLPC Trial-2 Software Release Notes: Difference between revisions

From OLPC
Jump to navigation Jump to search
(In progress.)
(Proper name for Open Firmware)
 
(84 intermediate revisions by 13 users not shown)
Line 1: Line 1:
{{OLPC}}
{{OLPC}}
{{Latest Releases | firmware = inline | server = inline }}
{{TOCright}}
{{TOCright}}
=OLPC Trial-2 Software Release Notes=
{{Latest Releases | firmware = inline | extra = inline }}
This page has information about the build 542 software image from 2007. It appears this was provided for some [[XO B2|XO Beta 2]] hardware units. Important changes are [[#Important Notes|noted below]]. This image is "late alpha-test" software; there is much you can now do with the laptop out of the box (See [[542 Demo Notes]]). General – somewhat outdated – instructions on how to use the Sugar interface can be found [[Sugar_Instructions|here]]. Also of note are the [[BTest-1 Release Notes]], [[BTest-2 Release Notes]] and [[BTest-4 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).
==Software Release Notes==


==Overview==
Please set a "watch" (the little tab on top of the wiki page) on this page to be notified when the release notes change.
Most of the first-generation vision for our system is now present and working:

These are exciting days for the OLPC software (''late alpha test''); there is much you can do with the laptop out of the box (See '''[[Demo Notes]]'''), which are very useful to understand the system and some of what is available. There are also some general instructions on how to use the Sugar interface '''[[Sugar_Instructions|here]]''', though these have not been updated yet.

Please read these release notes for particularly important software issues you should be aware of. Please also read the '''[[BTest-1 Release Notes]]''', '''[[BTest-2 Release Notes]]''' and [[BTest-4 Release Notes]]''' for hardware problems applying to particular versions of the hardware. The [[Library Release Notes]] has information about the early stages of our sample content library.

The software is late ''alpha test''. Please refer to the [[OLPC Human Interface Guidelines]] for the vision of where we would like the software to lead, only partially reflected in our current software.

Most of the first generation vision for our system is now present and working:
* The Journal
* The Journal
* Presence service
* Presence service
* Easy real time collaboration in many of our activities including:
* Easy real-time collaboration in many of our activities including:
** Read, Write, Chat, Record, Etoys, TamTam Jam, Memorize, Connect4
** Write
** Read
** Chat
** Record
** EToys
** TamTam Jam
** Memorize
** Connect4
* Mesh networking
* Mesh networking
** Automatic configuration of Mesh Portal Points (MPP)
** Automatic configuration of Mesh Portal Points (MPP)
Line 32: Line 20:
* Backup to the school server
* Backup to the school server


The software has been rebased onto Fedora Core 7, and Python 2.5.
The software has been rebased onto Fedora Core 7 and Python 2.5.


Remaining Tasks:
Remaining tasks:
* Finish building out collaboration in our other activities
* Finish building out collaboration in our other activities
* Anti-theft leases
* Anti-theft leases
Line 41: Line 29:
* Download and installation of activities
* Download and installation of activities


==Important Notes==
The software is just maturing to the point where we can embark upon later-stage trials for feedback and polish. Please work with us on these trials so that we can learn as much as possible from your experience.
At this time, '''we do not recommend installing the Trial-2 software on B2-1 systems''' (128 meg of RAM), due to excessive RAM usage. We are working on fixing the increased memory consumption.


==Stable Builds==
==Stable Builds==
The release notes on this page apply to an '''outdated''' software release.


;{{ticket|1748|USB Update key needed to upgrade systems in the field}}: Note that the [[Autoreinstallation image]] has latent support for preserving the user files on the system in the ''olpc.fth'' file; it has not yet been extensively tested. To boot with backup edit the ''olpc.fth'' file to change 'false' to 'true' in line 11. 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.
The release notes here apply to this release. The [[Autoreinstallation image]] enables easy updates of systems. We recommend this method of reinstallation, as it handles activation of the
laptop.


=Base System Notes=
Release note information for non-stable builds can be found here: [[Test_Group_Release_Notes]]
The system is now based on [http://fedoraproject.org/relnotes.html Fedora Core 7], and [http://dev.laptop.org/git.do?p=olpc-2.6;a=summary OLPC's kernel] is based on [http://lwn.net/Articles/240973/ Linux 2.6.22].


==Suspend/Resume and Power Management==
==Base System Notes==
;{{ticket|60|Suspend/Resume}}: Note that a number of the bugs in the tracker bug are likely duplicates. Suspend and resume using the power button should function on B2, B3 and B4 systems. Only B3 and B4 systems can resume on a keystroke, touchpad touch, or button press. The most interesting of these bugs are the following:
;[[Customizing NAND images]]: It is easy to customize a build for your own environment, as outlined here.


;{{ticket|1752|USB wireless suspend/resume failure at setup phase}}: The Marvell firmware does not always wakeup properly. You may need to power the laptop all the way down by holding the suspend button for >5 seconds. Then power up.
;Python Performance: Python 2.5 has much better heap performance. The Geode LX processor in BTest-3/4 has again greatly increased performance due to its larger cache..


;{{ticket|2631|Coming out of DPMS on resume seems to be failing in OHM}}: if the screen has been turned off due to the display power management system, the screen may not be turned back on on resume. You may need to power the laptop all the way down by holding the suspend button for >5 seconds. Then power up.
;[https://bugs.freedesktop.org/show_bug.cgi?id=10900 fontconfig cache is invalidated too easily on mtime check]: Applications can take a <i>very</i> 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 gets set badly). To work around this problem, use the "date" command from a console to set the current time and date.


;{{ticket|2401|Wakeup event is repeated continuously}}: This bug in the embedded controller code, now understood and soon repaired, causes repeated button/gamepad events on wakeup, getting in the way of ebook reading with aggressive power savings by causing constant scrolling. This support is already present in the book reader (''touch /home/olpc/ebook-enable-sleep'' and restart the reader to turn this on).
;Network Autoconfiguration: an XO will now autoconfigure the network. If no Internet access can be found, an ad-hoc mesh will be formed using private networks. If an XO is either associated with a conventional access point or preferably interfaced via a ethernet USB interface, it will automatically become a mesh portal point (MPP), and gateway the mesh network to the Internet. It will also associate with conventional access points using WEP. If it associates via WEP, the mesh portal functions cannot work, however.


;{{ticket|2660|Laptop wakes up and doesn't sleep again when it should}}: The laptop suspends when you close the lid (currently leaving wireless on, which may or may not be wrong); but if you insert or remove power to the laptop, it wakes up again despite being closed.
;[http://dev.laptop.org/ticket/623 Booting is slow, but better than it was]: A [http://dev.laptop.org/ticket/693 fix for jffs2 garbage collection scheduling] is new to Build 303, and significantly decreases boot time. We understand where much of the rest of the boot time is currently going, as you can see by checking the bugs referred to in 623. Boot time, however, is not our highest priority; we'll certainly make some of the improvements pretty soon anyway, and CAFE as an ASIC has higher performance that also helps BTest-2 and later.


;{{ticket|2237|Display driver needs to enable/disable the dcon power control line}}: This is consuming significant power in suspend even when the screen is off.
;[http://dev.laptop.org/ticket/584 WPA/WPA2 not working with Marvell Libertas]: This is waiting on driver/firmware fixes. WPA networks will not show up in the UI's network list. To be fixed by BTest-4.


==Other==
;[http://dev.laptop.org/ticket/217 Battery problems]: (including [http://dev.laptop.org/ticket/217 failure to charge], [http://dev.laptop.org/ticket/667 overcharge], [http://dev.laptop.org/ticket/596 incorrect capacity reporting], [http://dev.laptop.org/ticket/553 battery draining quickly when turned off]) A raft of problems with batteries has been fixed by EC firmware patches up through Q2B83. Most, but not all, dead batteries can be recovered in the field with existing BTest-2 systems (See [[Battery Charging]] for more details). [http://dev.laptop.org/ticket/1051 LiFe batteries incorrectly flash red light] was fixed in firmware Q2B87. 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. On BTest-2 systems, average NiMH lifetime in a test of multiple machines (Screen on, backlight fully on, wireless associated, all functional units including GPU on, but processor idle) was tested to be approximately 2h40m, LiFePo batteries were approximately 3h 10m, using BTest-2 systems. This will improve as our power management improves and unused devices are powered down when not in use.


;{{ticket|2319|Horrible noise in TamTam upon resume}}: Start TamTam. Close lid. Wait 3 seconds. Reopen the lid: Bad noise. Close lid. Noise stops Wait 3 seconds. Reopen the lid: BAD noise. Close lid. Noise stops. etc etc... Nothing short of shutting the system down will cure this noise. Needless to say, we'll fix this as soon as possible. This can also occur with games that may have audio playing; it is not TamTam's fault.
;Sugar crashes and hangs: Trac [http://dev.laptop.org/ticket/1235 #1235], [http://dev.laptop.org/ticket/1228 #1228], possibly [http://dev.laptop.org/ticket/1245 #1245], the fontconfig library version 2.4.1 had a nasty bug that could affect nearly any application. We have seen this problem for an extended period, but it became much more common in build 368. Disentangling this from the problems in the presence system which uses the Avahi library has been challenging. Fontconfig was updated to version 2.4.2 as of 379, and the Sugar crashes stopped.


;{{ticket|1905|Field Return: flash corruption - Open Firmware complaining of 'unknown node type}}: If you see this, please add your serial number information to this trac ticket.
;[[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 [http://www.fluendo.com/ 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.


;Activity sharing: will only work correctly when all XOs that wish to participate are using the same connection method. I.e., all must be either ''only'' link-local, or ''only'' server-connected.
;[http://dev.laptop.org/ticket/1292 JFFS file system pathological use.]: Writing log files (or similar files) one short piece at a time (unbuffered) and then flushing them to stable storage is bad for the flash, as it causes many unnecessary writes to the flash; much better would be to defer such writing until some amount of time has passed, and then flush, so that multiple small writes can be merged into a single write. Do not build applications with such behavior.


;[[Customizing NAND images]]: It is easy to customize a build for your own environment, as outlined here.
;[http://dev.laptop.org/ticket/68 Network adapter causes slowdown]: Fixed in Q2B81 firmware and later. Any network adapter, if configured, (including the built in Marvell wireless) would cause the system to slow as much as 33%.


;Python Performance: Python 2.5 has much better heap performance. The Geode LX processor in BTest-3/4 has again greatly increased performance due to its larger cache..
;[http://dev.laptop.org/ticket/1210 Recent devel-ext3 builds not booting]: Fixed in Q2B85 firmware: [[OFW]] was not handling extended attributes correctly.


;{{ticket|623|Booting time continues to improve}}: We understand where much of the rest of the boot time is currently going, as you can see by checking the bugs referred to in 623. Boot time, however, is not our highest priority; suspend/resume is clearly more important.
;[http://dev.laptop.org/ticket/42 The sensor input mode of the audio hardware is not supported in the audio driver of build 239]: Fixed in Build 303.


;{{ticket|217|Battery problems}}: (including {{ticket|217|failure to charge}}, {{ticket|667|overcharge}}, {{ticket|596|incorrect capacity reporting}}, {{ticket|553|battery draining quickly when turned off}}) All known battery charging problems have been resolved. 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. A raft of problems with batteries has been fixed by EC firmware patches up through Q2B83. Most, but not all, dead batteries can be recovered in the field with existing BTest-2 systems (See [[Battery Charging]] for more details). {{ticket|1051|LiFe batteries incorrectly flash red light}} was fixed in firmware Q2B87. On BTest-2 systems, average NiMH lifetime in a test of multiple machines (Screen on, backlight fully on, wireless associated, all functional units including GPU on, but processor idle) was tested to be approximately 2h40m, LiFePo batteries were approximately 3h 10m, using BTest-2 systems. Early tests with BTest-4 systems show an idle system lifetime (no suspend) between four and five hours, depending on circumstances and battery type. The LiFePo batteries have significantly higher lifetime. This will improve as our power management improves and remaining unused devices are powered down when not in use.
;[http://dev.laptop.org/ticket/508 Suspend/Resume not yet implemented]: The preparatory work in the firmware is complete, and in development, the hardware is suspending and resuming. We hope to deploy working suspend/resume by BTest-3, though several hardware bugs are annoying and will be fixed in BTest-3. Resume time is now under 1/4 second!


;[[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 [http://www.fluendo.com/ 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.
;[http://dev.laptop.org/ticket/511 LED illumination driver needs writing]: This is now implemented - FN-space bar will turn it on and off. Note that the keyboard illumination is being dropped in BTest-3 and after.


;{{ticket|1292|JFFS file system pathological use}}: Writing log files (or similar files) one short piece at a time (unbuffered) and then flushing them to stable storage is bad for the flash, as it causes many unnecessary writes to the flash; much better would be to defer such writing until some amount of time has passed, and then flush, so that multiple small writes can be merged into a single write. Do not build applications with such behavior.
;[http://dev.laptop.org/ticket/214 CAFÉ NAND ECC poorly understood and needs optimization]: This can cause dramatically differing performance if you happen to hit some bad sectors.


;{{ticket|68|Network adapter causes slowdown}}: Fixed in Q2B81 firmware and later. Any network adapter, if configured, (including the built in Marvell wireless) would cause the system to slow as much as 33%.
;Flash and system installs off SD: You can install the flash and system image off an SD card. Rather than using the "disk:" in the instructions for reflashing, you can install using the name "sd:". The auto updater does not work off of SD, however.


;Flash and system installs off SD: You can install the flash and system image off an SD card. Rather than using the "disk:" in the instructions for reflashing, you can install using the name "sd:". The auto updater does not work off of SD, however, at this time.
== X Window System ==


;[https://bugs.freedesktop.org/show_bug.cgi?id=10900 fontconfig cache is invalidated too easily on mtime check]: Applications can take a <i>very</i> 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.
;[http://dev.laptop.org/ticket/741 Alpha-blended animation is very slow].


==[http://www.x.org X Window System]==
The X server now uses MMX optimized routines for many operations and has improved greatly. We're still not hitting the hardware fast paths very much in the driver; the change to the LX will help here.


;[http://dev.laptop.org/query?status=new&status=assigned&status=reopened&group=component&component=x+window+system&order=priority X Window System open issues]: specific to OLPC are found in trac.
The X Window System does support the RandR extension, (rotation of the screen) and a button on the front face of the brick controls rotation. Not all of the additional software work is complete and rotation might crash the X server, causing a UI restart.


;Performance optimization: Much performance optimization work is possible, and awaits our time or volunteers to work on. Some work has been done by Jordan Crouse and others and performance is substantially better than initially.
If a console application manages to somehow [http://dev.laptop.org/ticket/367 modify the colormap], the system won't recover without rebooting the machine.


The BTest-1 touchpad worked particularly badly: much of this is caused by capacitive issues; a mylar sheet increased the capacitance and BTest-2's touchpad now functions pretty well. The writing (stylus) mode of the touchpad is enabled and works correctly in BTest-2, although additional software work is needed. When taking a unit off of power supply onto battery (or vice versa), the touch pad may need recalibration: simultaneously press the four keys in the extreme corners of the keyboard.
;B1 Touchpads: The BTest-1 touchpad worked particularly badly: much of this is caused by capacitive issues; a mylar sheet increased the capacitance and BTest-2's touchpad now functions pretty well. The writing (stylus) mode of the touchpad is enabled and works correctly in BTest-2, although additional software work is needed. When taking a unit off of power supply onto battery (or vice versa), the touchpad may need recalibration: simultaneously press the four keys in the extreme corners of the keyboard. BTest-4 touchpads seem to be more stable.


It may be possible to implement "tap" on the capacitive touch pad; we'd be interested in hearing opinions whether this is desirable for a child or not.
;Tap on the touchpad: It may be possible to implement "tap" on the capacitive touch pad; we'd be interested in hearing opinions whether this is desirable for a child or not.


Keyboard autorepeat has been "tuned". Most keys do not autorepeat, except for the arrow keys, erase key, space bar, and game pad and buttons by the screen.
;Keyboard autorepeat:has been "tuned". Most keys do not autorepeat, except for the arrow keys, erase key, space bar, and game pad and buttons by the screen.


;{{ticket|2617|Camera activity provokes X to screw up colormap on B2's}}: The X Window System Xvideo extension is supported in the X server; note that a slightly different colormap is loaded while video is playing to improve video quality; other colors in use may become slightly strange during this period. Note that there is a miswiring from the Geode to the DCON chip, fixed in BTest-3 and BTest4, that complicates this problem. The LX processor won't have this problem at all; the RGB-YUV conversion is correct on that video unit. '''This is only a problem for B1 and B2 systems.'''
Much performance optimization work is possible, and awaits our time or volunteers to work on. Some work has been done and performance is substantially better than initially.


==User Interface: [[Sugar]]==
The X Window System Xvideo extension is supported in the X server; note that a slightly different colormap is loaded while video is playing to improve video quality; other colors in use may become slightly strange during this period. Note that there is a miswiring from the Geode to the DCON chip, to be fixed in BTest-3, that complicates this problem. The LX processor won't have this problem at all; the RGB-YUV conversion is correct on that video unit.


;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.
;[http://dev.laptop.org/ticket/418 The keymaps for our initial set of keyboards are only installed when Build 185 is installed]: There are known issues with the keyboard descriptions. Thai-keyboard support only appears in builds 187+.


;Suspend: Momentarily press the power button.
The language switching key is still not working. So no English language input is possible on the default image targeted at non-Latin-based languages (e.g. Arabic and Thai). To enable English input on those machines, follow the following steps:
# After the system has booted, press <tt>ctrl+alt+f1</tt>
# Login in as root (no password required)
# Open the file /etc/X11/xorg.conf for editing (use vi or any editor you are comfortable with)
# In the first InputDevice section do the following modifications:
#* Modify XkbLayout setting from "us" to "us,ara" (for Arabic&mdash;use other symbol files for other languages)
#* Add an XkbOptions option with the value "grp:ctrl_shift_toggle"
# Save and close the file
# Either reboot the machine or restart X by issueing a "/sbin/telinit 3" command and then "/sbin/telinit 5"


;Performance: Sugar performance has improved, particularly on the Geode LX processor found on B3 and later systems. The [[Journal]] is now capturing a log of all activities on the laptop and can be used to search and sort through old work and relaunch activities.
After you make the modifications, the two lines in xorg.conf should be similar to the following
Option "XkbLayout" "us,ara"
Option "XkbOptions" "grp:ctrl_shift_toggle"


;Screen Capture: Alt-1 does a screen capture and stores the result in the Journal.
After X is restarted, the default language will be english (that can be changed by swapping ''us'' and ''ara'' above), and you will be able to switch between languages using the <tt>ctrl+shift</tt> key combination.


;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.)
==User Interface: Sugar==


;Mime Types: only a single activity can declare they handle a given mime type; the Journal does not yet provide a way to select which activity will be started.
The [[Sugar]] user interface environment for children is in place. The [[OLPC Human Interface Guidelines]] should be observed when building or repackaging applications. Conventional human interface guidelines have been designed for first world office workers, and are totally unsuitable for children who are just learning to read in any part of the world. As young children are the many/most of the intended audience of our system, their needs are being met first.


[http://dev.laptop.org/query?status=new&status=assigned&status=reopened&component=sugar&order=priority Many of the user interface issues] we intend to fix. Among the most notable issues are:
Conversion of applications to function under Sugar is very straightforward and most applications can work with little change.
;{{ticket|989|New networking UI needs documentation}}: 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.) The mesh, rather than being a triangle, is represented by a circular icon. You may be prompted for an access point's password.


;Network Autoconfiguration: an XO will now autoconfigure the network. If no Internet access can be found, an ad-hoc mesh will be formed using private networks. If an XO is either associated with a conventional access point or preferably interfaced via a ethernet USB interface, it will automatically become a mesh portal point (MPP), and gateway the mesh network to the Internet. 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.
If you are building applications, note that future models of the laptop may have touch screens or tablets, which enables almost any application to be useful in ebook mode, so take the fact your screen size may change aspect ratio seriously when designing your user interface.


;{{ticket|2019|WPA support}}: has been implemented in the most recent builds, to allow association with WPA enabled access points. If you have problems, please use the developer's console and execute the command ''touch /etc/NetworkManager/log-supplicant'' and try again. Please attach the resulting log files ''/var/log/messages'' and ''/var/log/wpa_supplicant.log'' to a trac ticket, along with the exact manufacturer and model of the access point.
===Intent and Goals===


;Bulletin board (shared workspace): support is not yet integrated into Sugar in a general way; harbingers of how it will work can be seen in the shared workspace in the Record activity.
The core ideas: Activities, Not Applications; Presence is Always Present; Tools of Expression; and Journaling are detailed [[OLPC Human Interface Guidelines#Core Ideas|here]].


;Clipboard interaction (on the Frame): is not fully developed in all activities. Some activities can copy and paste (using Ctrl-C and Ctrl-V) to and from the clipboard and some even support drag and drop to and from the clipboard, but many do not.
===Navigation===


;Groups: are not yet exposed in the interface. Sharing, chat, etc. are only supported at the mesh level (open to everyone on the mesh).
Navigation, including the [[OLPC Human Interface Guidelines#Zoom Metaphor|Zoom Metaphor]] and [[OLPC Human Interface Guidelines#The Frame|The Frame]], is detailed [[OLPC Human Interface Guidelines#The Laptop Experience|here]].


==Presence Service==
===Sugar Release Notes===


The Sugar activity launch has performance problems caused by Python's cache footprint. We know that moving to Python 2.5, rebuilt -PIC, should greatly improve performance, independent of work we are doing ourselves, and the LX improve performance still more. Moving to Python 2.5 should occur sometime in May or June. [http://dev.laptop.org/query?status=new&status=assigned&status=reopened&component=sugar&order=priority Many of the user interface issues] we intend to fix. Among the most notable issues are:
;[http://dev.laptop.org/query?status=new&status=assigned&status=reopened&group=milestone&component=presence-service&order=priority PS open issues]: can be found in trac
;[http://dev.laptop.org/ticket/989 New networking UI needs documentation]: 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.) The mesh, rather than being a triangle, is represented by a circular icon.
;[http://dev.laptop.org/ticket/1345 Presence API person_name dosen't accepts accents]: If you put accents or other non-ascii characters into nicknames, Sugar fails. Fixed in Build 406.
;[http://dev.laptop.org/ticket/1029 Sugar first boot screen is unintuitive]: Fixed in Build 354. The first time you boot sugar, you'll be asked for a nickname and to chose the colors for your icon representation in the interface. To progress past this screen, you must click on the right-arrow at the bottom to proceed. Just clicking the right-arrow will have no effect.
;[http://dev.laptop.org/ticket/375 Sugar needs a UI for exposing battery status]: Fixed in Build 354 or after. In the meantime, you can use `cat /sys/class/battery/PSU_0/capacity_percentage`.
;[http://dev.laptop.org/ticket/403 Sugar seems to lock up with the frame out]: Fixed in Build 354. Pressing F5 allows the Sugar to unhang, and you can then launch applications again.
;[http://dev.laptop.org/ticket/427 Sugar presumes applications exit]: Usually, you can find some other way to cause an application to exit. The specific Abiword bug is fixed.
;Launching activities are slow: This is now faster, and will improve yet further when a new version of python 2.5 is in the build. And on the LX processor, it is now running quite fast, even using Python 2.4.
;The timing of many of the user interactions, such as hover and the coming and going of the Frame are in need of fine-tuning. (Much improved in build 303).


;Connections: [http://telepathy.freedesktop.org/ Telepathy] connections are supported via the school server - a [http://www.jabber.org/ jabber] [http://www.xmpp.org/ XMPP] server with some particular required [http://www.xmpp.org/extensions/xep-0163.html features] - as well as over the mesh network using [http://www.xmpp.org/extensions/xep-0174.html Link Local XMPP].
===Programming Sugar===


;Default Server: Build 542 no longer registers automatically with olpc.collabora.co.uk as the server, so [[#Laptop_Registration|registration]] is required before other XOs can be seen via the server.
Sugar Activity Bundles are explained in detail [[Activity Bundles|here]].


;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 {{ticket|2616|quitting the jhbuild emulator with alt-Q while in the activity}}), then the {{ticket|1935|icon remains on the mesh view}}.
Sugar interfaces
goocanvas
GTK+
Cairo
Pango/ATK


;{{ticket|2253|Large data over Tubes}}: On server connections, large messages (such as images) are not broken up into chunks and hence fail, breaking sharing.
Also check the [[HIG|Human Interface Guidelines]] and the [[API]].


;{{ticket|2702|Link Local Connections}}: If you share an activity and are not the last to leave, you cannot rejoin the shared activity. This is being addressed for Trial 3.
==Activities==


=[[Activities]]=
===Web Browsing===
Many activities are under development and they can be [[Activities|found with their status in the wiki]] while the [[Activity Grid]] has the status of all of the activities that have systematic testing.
The Xulrunner based brower users the scaling engine from Firefox 1.9. Starting in build 303, this greatly improves browser behavior and font and image sizes more likely to be acceptable. Later builds improve yet further. With our high resolution screen, we have had to go "first" in innovation in web browser technology. Performance work still needs to be done, particularly to speed scaling of images. Google Maps and Google Talk now both work well. Please let us know when you find web sites with clear formatting problems.


==[http://wiki.laptop.org/go/Browse Web Browsing]==
Plug-ins should be installed in the directory /usr/lib/mozilla/plugins.
;[http://dev.laptop.org/query?status=new&status=assigned&status=reopened&group=component&component=web+browser&order=priority Web Browser Open Issues]: can be found in trac.


;{{ticket|542|SSL sites without official certificates fail to load}}
The current version ship with an free version of Flash, called [http://en.wikipedia.org/wiki/Gnash gnash]. [[RestrictedFormats|Adobe's Flash]] plug in works fine, which many may find preferable until gnash matures further. Video will likely work in Gnash in its next version.


;{{ticket|884|Web activity has trouble with Arabic and Urdu fonts}}: This is being fixed upstream and should be in a future OLPC build.
;[http://dev.laptop.org/ticket/864 Problems with flash plugin with the web activity]: Resolved in build 385. Sufficient font aliases have been added for old X11 core fonts that most applications not yet updated to the current X client-side font model should work: specifically, the menus in Adobe Flash 9 for Linux would crash the plug in and browser despite more than 4 years of deployment of the new font system. Note that proper internationalization is impossible using the old X Window System font system. We see use of these fonts as a crutch that must be removed to meet OLPC's worldwide mission. The "xset -fp /usr/share/fonts/dejavu-lgc" can be used to remove these aliases.


The Xulrunner based brower uses the scaling engine from Firefox 1.9. Starting in build 303, this greatly improves browser behavior and font and image sizes more likely to be acceptable. Later builds improve yet further. With our high resolution screen, we have had to go "first" in innovation in web browser technology. Performance work still needs to be done, particularly to speed scaling of images. Google Maps and Google Talk now both work well. Please let us know when you find web sites with clear formatting problems.
The web browser does not ship with Java plug-in. [[RestrictedFormats|Sun's Java]] and web browser plug-in work fine.


Plug-ins should be installed in the directory /usr/lib/mozilla/plugins.
Download and identification of media types (audio/video) and their hand off to the proper media type player has not been implemented: we hope this will make BTest-3. We were not expecting the availability of the Helix player or of a gstreamer based media player at this date.

The current version ship with an free version of Flash, called [http://en.wikipedia.org/wiki/Gnash gnash]; it has improved substantially from Trial-1. [[RestrictedFormats|Adobe's Flash]] plug in works fine, which many may find preferable until gnash matures further. As noted in [[RestrictedFormats]], we cannot distribute gnash with patented codecs, though gnash can be rebuilt to support a wide range of datatypes.

The web browser does not ship with Java plug-in. [[RestrictedFormats|Sun's Java]] and web browser plug-in work fine.


The web browser has no tabs, no zoom (yet), no provision for ebook mode (yet).
The web browser has no tabs, no zoom (yet), no provision for ebook mode (yet).
Line 182: Line 156:
User experience has problems with pop windows, Frame interfering with scrolling.
User experience has problems with pop windows, Frame interfering with scrolling.


;[http://dev.laptop.org/ticket/542 SSL sites without official certificates fail to load]
==[http://wiki.laptop.org/go/Calculate Calculate]==


A simple calculator activity contributed by Mauro Torres et al. of the Tuquito Linux project in Argentina was replaced by a completely unexpected, more functional Calc activity written by Reinier Heeres at Harvard in build 385. Our thanks to both Mauro and Reinier for their efforts.
;[http://dev.laptop.org/ticket/884 Web activity has trouble with Arabic and Urdu fonts]


==[http://wiki.laptop.org/go/Chat Chat]==
===xbook===
;[http://dev.laptop.org/query?status=new&status=assigned&status=reopened&group=component&component=chat-activity&order=priority 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 Neighbourhood view, the activity shows who has joined or left, and if you join it will display those who are already in the chat room.
File viewer through the browser, or as a sugar activity. The PDF format view is brought to you by the poppler library and [http://www.cairographics.org/ Cairo] graphics library.


It will convert URL's to clickable links for the web browser, and is a way to browse together until the web browser has shared browsing.
The xbook application has no provision for ebook mode (yet).


==[[Developer Console]]==
===Chat===


The developer console provides a set of tabs in a popup window on top of activities. It is launched by typing <tt>Alt-=</tt>.
We're unhappy enough about the jabber based chat program's state (which needs lots of tender loving care), that we temporarily pulled it from the build for our first trials. We suggest Google Talk, or similar web chat services, as a temporary measure.


The ''XO Resources'' tab shows basic information about the system, the recent CPU usage and flash usage
===Etoys===


The ''Memphis'' tab returns information about executing processes. [http://dev.laptop.org/git.do?p=projects/soc-memphis Memphis])
The [http://www.squeakland.org/ 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.


The ''Log Viewer'' tab allows exploration of many key system logs.
===TamTam===
{{Include Page|TamTam Release Notes}}


The ''Terminal'' tab provides a terminal emulator and shell.
===Write===


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.
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.


==[[Drawing Activity]]==
Since BTest-2 quite a number of bugs have been fixed and a few features have been added.<br>
*New features (since BTest-2):
** Toolbar bar buttons for open, save, justify
** Ability to insert freely positionable images, with automatic text wrapping


;[https://dev.laptop.org/query?status=new&status=assigned&status=reopened&component=drawing-activity+%28oficina%29&order=priority Paint (Oficina) Issues]: can be found in the trac system.
* Bugs fixes (since BTest-2)
** [http://dev.laptop.org/ticket/417 AbiWord doesn't render Arabic] is believed to be fixed
** Much less flicker on context changes and startup
** Speedups for scrolling
** Fixes for bugs 404, 822, 824, 823, 771, 826 and various other fixes.


The [[Drawing Activity|application]] is fully written in [[Python]], using only [[GTK]] features. It is being developed at [[LSI|LSI-USP]] in [[OLPC_Brazil|Brazil]].
Note: Scrolling when dragging images or text is slow in the current stable build, as the hardware can't keep up with all the scrolling events. This issue has been fixed, and will show up in future builds.


==[http://wiki.laptop.org/go/Etoys Etoys]==
===Terminal===


The [http://www.squeakland.org/ 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.
The terminal window ([http://dev.laptop.org/git.do?p=projects/soc-memphis Memphis]) is launched by typing <tt>Alt-=</tt>


==[[Journal]] and Datastore==
===Paint===
Note that 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.
A simple paint program is now in the distribution. It is considered just a beginning.


The journal uses the underlying [http://wiki.laptop.org/go/Sugar_Architecture/API/sugar.datastore Datastore facility] which is new; its [http://dev.laptop.org/query?status=new&status=assigned&status=reopened&component=datastore&order=priority issues] are in our trac system. Note that it indexes all information on an
===Blockparty===
external device; this issue:

;{{ticket|2627|Datastore should check versions and recreate indexes automatically}}: has caused some trouble during its development, which we hope to prevent in the future.
A famous, simple game of falling blocks, often known as Tetris. Contributed by [http://en.wikipedia.org/wiki/Vadim_Gerasimov Vadim Gerasimov].


;{{ticket|2544|Journal should give a choice of activities to resume an object with}}: Only a single activity can register right now for a given mime-type; it should be possible for multiple activities to handle the same mime-type and the user be asked which to invoke.
===Slideshow===


;[http://dev.laptop.org/query?status=new&status=assigned&status=reopened&component=journal-activity&order=priority Journal issues]: can be found in our trac system.
An image viewer that will display images taken earlier by the camera application.


===Newsreader===
==[http://wiki.laptop.org/go/News_Reader Newsreader]==


Based on [http://penguintv.sourceforge.net/ PenguinTV]. A few RSS feeds of educational interest have been preprogrammed as examples:
Based on [http://penguintv.sourceforge.net/ PenguinTV]. A few RSS feeds of educational interest have been preprogrammed as examples:
Line 246: Line 214:
Other feeds can easily be added/substituted.
Other feeds can easily be added/substituted.


==[[Photograph|Record]]==
===Calc===


The primary record (still- and video-camera) activity is written by Erik Blankinship and Bakhtiar Mikhak. (The [[Sugar_EToys|Etoys]] activity includes support for the camera.)
A simple calculator activity contributed by Mauro Torres et al. of the [http://en.wikipedia.org/wiki/Tuquito Tuquito] Linux project in Argentina was replaced by a completely unexpected, more functional Calc activity written by Reinier Heeres at Harvard in build 385. Our thanks to both Mauro and Reinier for their efforts.


The BTest-2 system does not have a LED to indicate if the camera or microphone is enabled. Such a LED is present on BTest-3 and later systems.
==Temporary placeholders and Missing Pieces==


Both the Record activity and Etoys can be used for playback; a version of Helix and a gstreamer player (roughly modeled on Totem) are available for Trial-2.
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.


==[http://wiki.laptop.org/go/Read Read (aka xbook)]==
Our plans include a web server and wiki system and journal, with a simple [http://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] editor based on the write activity (currently [http://www.abiword.org/ Abiword]). This has a collaborative write capability we will be exploiting.


File viewer through the browser, or as a sugar activity. The PDF format view is brought to you by the poppler library and [http://www.cairographics.org/ Cairo] graphics library.
===Backlight control===


The xbook application has latent provision for ebook mode, awaiting a couple key bug fixes.
The backlight button on the bezel does not work yet, but the backlight can be controlled using F6 (dimmer) and F7 (brighter); F8 turns on color; F9 turns off color.
[[Image:Key_slider.jpg|thumb|none|F6&ndash;F9 are under this key]]


==[[TamTam]]==
===Video/Camera Player===


;The [[TamTam Release Notes]]: are available.
The controls (brightness, hue, saturation) are not hooked up in the device driver or video player application in BTest-1 (build 185). The driver adding these controls to Alsa (the Advanced Linux Sound Architecture) will be merged in a build soon.


==[[Turtle Art]]==
The camera is exhibiting [http://dev.laptop.org/ticket/499 more noise than expected] in assembled units. On BTest-1 systems, one of the multiple source vendor's camera exhibits much higher exhibits much higher noise than on others.


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.
We have used mplayer on the machine, but as it pulls in many dependencies, we put together a simple gstreamer based application for demonstration of the camera and video playing.


Integration with the journal is not complete at this time, and users are wise to show children how to save their work.
The BTest-2 system does not have a LED to indicate if the camera or microphone is enabled. Such a LED will be present on a later system.


==[[Helix Media Activity|Watch and Listen]]==
A more evolved camera application, which records video and can find it and play it back, is under development.


Videos and DVD's can be played back on the system, including [http://www.helixcommunity.org 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.
The [[Sugar_EToys | eToys]] activity includes support for the Webcam and a lot of experimentation can be done using the [[Sugar_EToys | eToys]] scripting system.


Note that it is likely there will be no icon for this activity in future versions, media playing being started by journal or browser activity.
===Real's Helix Player Activity===


==[[Write]]==
Others have successfully played back videos and DVD's on the system, including [http://www.helixcommunity.org RealNetwork] formats. A Sugar version of Real's Helix player is available, though not
in the base install. Please see the [[Helix Media Activity]] release notes for further detail.
A browser plug-in version of this is expected soon.


;[http://dev.laptop.org/query?status=new&status=assigned&status=reopened&group=component&component=write-activity+%28abiword%29&order=priority Write activity issues]: can be found in trac.
==Base system==


;{{ticket|2253|Write share function FAIL after insert an image}}: Sharing an image in Write will cause sharing to fail.
===OLPC Platform===

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.

=Games=

==Blockparty==

A famous, simple game of falling blocks, often known as Tetris. Contributed by [http://en.wikipedia.org/wiki/Vadim_Gerasimov Vadim Gerasimov].

==Connect==

A version of Connect-4. Supports network play, and is useful [http://dev.laptop.org/git.do?p=projects/connect-activity;a=summary as an example] of how to use Sugar's collaboration facilities.

Note that 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 Trial 3 feature.

=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 [http://en.wikipedia.org/wiki/WYSIWYG WYSIWYG] editor based on the write activity (currently [http://www.abiword.org/ 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, and hardware anti-aliasing for the color screen is disabled.
Likewise, volume is controlled by F11 (quieter) and F12 (louder).
[[Image:Brightness-volume.png|thumb|none]]

=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 [http://www.jabber.org/ jabber] server used by the presence service of the laptop. This should have a UI by Trial-3.

==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 "permanent" packages
Line 291: Line 293:
Inventory of "optional" packages (?)
Inventory of "optional" packages (?)


===Development environment===
==Development environment==


Languages - Logo, javascript, [[Python]]
==Languages - Logo, javascript, [[Python]]==


Libraries
==Libraries==


Where to find source
==Where to find source ==
Many of the OLPC activities, kernel, and other software are in our [https://dev.laptop.org/git.do git repository].


Internationalization/Localization (see [[:Category:Language support]] & [[:Category:Languages (international)]])
Internationalization/Localization (see [[:Category:Language support]] & [[:Category:Languages (international)]])


==Other Multimedia Software==
=Other Multimedia Software=


Other software that has been tested on the OLPC systems includes
Other software that has been tested on the OLPC systems includes
[http://www.flash.com Adobe Flash], and Real's RealPlayer® and Helix player.
[http://www.flash.com Adobe Flash], and Real's RealPlayer® and Sun's Java.


==Finding the Latest Test Builds==
=Finding the Latest Test Builds=


[http://olpc.download.redhat.com/olpc/streams/development/ Development and stable builds] can be downloaded. [[Firmware|Boot firmware]] is kept in this wiki. The latest stable [[Autoreinstallation image|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.
[http://olpc.download.redhat.com/olpc/streams/development/ Development and stable builds] can be downloaded. [[Firmware|Boot firmware]] is kept in this wiki. The latest stable [[Autoreinstallation image|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 =
[[Category:Hardware]]

[[Category:Software development]]
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)

Latest revision as of 18:04, 6 October 2012

  This page is monitored by the OLPC team.


OLPC Trial-2 Software Release Notes

This page has information about the build 542 software image from 2007. It appears this was provided for some XO Beta 2 hardware units. Important changes are noted below. This image is "late alpha-test" software; there is much you can now do with the laptop out of the box (See 542 Demo Notes). General – somewhat outdated – instructions on how to use the Sugar interface can be found here. Also of note are the BTest-1 Release Notes, BTest-2 Release Notes and BTest-4 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, Record, Etoys, TamTam Jam, Memorize, Connect4
  • Mesh networking
    • Automatic configuration of Mesh Portal Points (MPP)
    • Automatic configuration of ad-hoc meshes, allowing collaboration without any infrastructure or Internet access
  • 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:

  • Finish building out collaboration in our other activities
  • Anti-theft leases
  • Execution of activities in containers
  • In-place robust updates
  • Download and installation of activities

Important Notes

At this time, we do not recommend installing the Trial-2 software on B2-1 systems (128 meg of RAM), due to excessive RAM usage. We are working on fixing the increased memory consumption.

Stable Builds

The release notes on this page apply to an outdated software release.

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; it has not yet been extensively tested. To boot with backup edit the olpc.fth file to change 'false' to 'true' in line 11. 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 Core 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 should function on B2, B3 and B4 systems. Only B3 and B4 systems can resume on a keystroke, touchpad touch, or button press. The most interesting of these bugs are the following:
USB wireless suspend/resume failure at setup phase#1752
The Marvell firmware does not always wakeup properly. You may need to power the laptop all the way down by holding the suspend button for >5 seconds. Then power up.
Coming out of DPMS on resume seems to be failing in OHM#2631
if the screen has been turned off due to the display power management system, the screen may not be turned back on on resume. You may need to power the laptop all the way down by holding the suspend button for >5 seconds. Then power up.
Wakeup event is repeated continuously#2401
This bug in the embedded controller code, now understood and soon repaired, causes repeated button/gamepad events on wakeup, getting in the way of ebook reading with aggressive power savings by causing constant scrolling. This support is already present in the book reader (touch /home/olpc/ebook-enable-sleep and restart the reader to turn this on).
Laptop wakes up and doesn't sleep again when it should#2660
The laptop suspends when you close the lid (currently leaving wireless on, which may or may not be wrong); but if you insert or remove power to the laptop, it wakes up again despite being closed.
Display driver needs to enable/disable the dcon power control line#2237
This is consuming significant power in suspend even when the screen is off.

Other

Horrible noise in TamTam upon resume#2319
Start TamTam. Close lid. Wait 3 seconds. Reopen the lid: Bad noise. Close lid. Noise stops Wait 3 seconds. Reopen the lid: BAD noise. Close lid. Noise stops. etc etc... Nothing short of shutting the system down will cure this noise. Needless to say, we'll fix this as soon as possible. This can also occur with games that may have audio playing; it is not TamTam's fault.
Field Return: flash corruption - Open Firmware complaining of 'unknown node type#1905
If you see this, please add your serial number information to this trac ticket.
Activity sharing
will only work correctly when all XOs that wish to participate are using the same connection method. I.e., all must be either only link-local, or only server-connected.
Customizing NAND images
It is easy to customize a build for your own environment, as outlined here.
Python Performance
Python 2.5 has much better heap performance. The Geode LX processor in BTest-3/4 has again greatly increased performance due to its larger cache..
Booting time continues to improve#623
We understand where much of the rest of the boot time is currently going, as you can see by checking the bugs referred to in 623. Boot time, however, is not our highest priority; suspend/resume is clearly more important.
Battery problems#217
(including failure to charge#217, overcharge#667, incorrect capacity reporting#596, battery draining quickly when turned off#553) All known battery charging problems have been resolved. 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. A raft of problems with batteries has been fixed by EC firmware patches up through Q2B83. Most, but not all, dead batteries can be recovered in the field with existing BTest-2 systems (See Battery Charging for more details). LiFe batteries incorrectly flash red light#1051 was fixed in firmware Q2B87. On BTest-2 systems, average NiMH lifetime in a test of multiple machines (Screen on, backlight fully on, wireless associated, all functional units including GPU on, but processor idle) was tested to be approximately 2h40m, LiFePo batteries were approximately 3h 10m, using BTest-2 systems. Early tests with BTest-4 systems show an idle system lifetime (no suspend) between four and five hours, depending on circumstances and battery type. The LiFePo batteries have significantly higher lifetime. This will improve as our power management improves and remaining unused devices are powered down when not in use.
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.
JFFS file system pathological use#1292
Writing log files (or similar files) one short piece at a time (unbuffered) and then flushing them to stable storage is bad for the flash, as it causes many unnecessary writes to the flash; much better would be to defer such writing until some amount of time has passed, and then flush, so that multiple small writes can be merged into a single write. Do not build applications with such behavior.
Network adapter causes slowdown#68
Fixed in Q2B81 firmware and later. Any network adapter, if configured, (including the built in Marvell wireless) would cause the system to slow as much as 33%.
Flash and system installs off SD
You can install the flash and system image off an SD card. Rather than using the "disk:" in the instructions for reflashing, you can install using the name "sd:". The auto updater does not work off of SD, however, at this time.
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.
Performance optimization
Much performance optimization work is possible, and awaits our time or volunteers to work on. Some work has been done by Jordan Crouse and others and performance is substantially better than initially.
B1 Touchpads
The BTest-1 touchpad worked particularly badly: much of this is caused by capacitive issues; a mylar sheet increased the capacitance and BTest-2's touchpad now functions pretty well. The writing (stylus) mode of the touchpad is enabled and works correctly in BTest-2, although additional software work is needed. When taking a unit off of power supply onto battery (or vice versa), the touchpad may need recalibration: simultaneously press the four keys in the extreme corners of the keyboard. BTest-4 touchpads seem to be more stable.
Tap on the touchpad
It may be possible to implement "tap" on the capacitive touch pad; we'd be interested in hearing opinions whether this is desirable for a child or not.
Keyboard autorepeat
has been "tuned". Most keys do not autorepeat, except for the arrow keys, erase key, space bar, and game pad and buttons by the screen.
Camera activity provokes X to screw up colormap on B2's#2617
The X Window System Xvideo extension is supported in the X server; note that a slightly different colormap is loaded while video is playing to improve video quality; other colors in use may become slightly strange during this period. Note that there is a miswiring from the Geode to the DCON chip, fixed in BTest-3 and BTest4, that complicates this problem. The LX processor won't have this problem at all; the RGB-YUV conversion is correct on that video unit. This is only a problem for B1 and B2 systems.

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.
Performance
Sugar performance has improved, particularly on the Geode LX processor found on B3 and later systems. The Journal is now capturing a log of all activities on the laptop and can be used to search and sort through old work and relaunch activities.
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.)
Mime Types
only a single activity can declare they handle a given mime type; the Journal does not yet provide a way to select which activity will be started.

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.) The mesh, rather than being a triangle, is represented by a circular icon. You may be prompted for an access point's password.
Network Autoconfiguration
an XO will now autoconfigure the network. If no Internet access can be found, an ad-hoc mesh will be formed using private networks. If an XO is either associated with a conventional access point or preferably interfaced via a ethernet USB interface, it will automatically become a mesh portal point (MPP), and gateway the mesh network to the Internet. 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.
WPA support#2019
has been implemented in the most recent builds, to allow association with WPA enabled access points. If you have problems, please use the developer's console and execute the command touch /etc/NetworkManager/log-supplicant and try again. Please attach the resulting log files /var/log/messages and /var/log/wpa_supplicant.log to a trac ticket, along with the exact manufacturer and model of the access point.
Bulletin board (shared workspace)
support is not yet integrated into Sugar in a general way; harbingers of how it will work can be seen in the shared workspace in the Record activity.
Clipboard interaction (on the Frame)
is not fully developed in all activities. Some activities can copy and paste (using Ctrl-C and Ctrl-V) to and from the clipboard and some even support drag and drop to and from the clipboard, but many do not.
Groups
are not yet exposed in the interface. Sharing, chat, etc. are only supported at the mesh level (open to everyone on the mesh).

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.
Default Server
Build 542 no longer registers automatically with olpc.collabora.co.uk as the server, so registration is required before other XOs can be seen via the 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.
Large data over Tubes#2253
On server connections, large messages (such as images) are not broken up into chunks and hence fail, breaking sharing.
Link Local Connections#2702
If you share an activity and are not the last to leave, you cannot rejoin the shared activity. This is being addressed for Trial 3.

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.

Web Browsing

Web Browser Open Issues
can be found in trac.
SSL sites without official certificates fail to load#542
Web activity has trouble with Arabic and Urdu fonts#884
This is being fixed upstream and should be in a future OLPC build.

The Xulrunner based brower uses the scaling engine from Firefox 1.9. Starting in build 303, this greatly improves browser behavior and font and image sizes more likely to be acceptable. Later builds improve yet further. With our high resolution screen, we have had to go "first" in innovation in web browser technology. Performance work still needs to be done, particularly to speed scaling of images. Google Maps and Google Talk now both work well. Please let us know when you find web sites with clear formatting problems.

Plug-ins should be installed in the directory /usr/lib/mozilla/plugins.

The current version ship with an free version of Flash, called gnash; it has improved substantially from Trial-1. Adobe's Flash plug in works fine, which many may find preferable until gnash matures further. As noted in RestrictedFormats, we cannot distribute gnash with patented codecs, though gnash can be rebuilt to support a wide range of datatypes.

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), no provision for ebook mode (yet).

User experience has problems with pop windows, Frame interfering with scrolling.

Calculate

A simple calculator activity contributed by Mauro Torres et al. of the Tuquito Linux project in Argentina was replaced by a completely unexpected, more functional Calc activity written by Reinier Heeres at Harvard in build 385. Our thanks to both Mauro and Reinier for their efforts.

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 Neighbourhood view, the activity shows who has joined or left, and if you join it will display those who are already in the chat room.

It will convert URL's to clickable links for the web browser, and is a way to browse together until the web browser has shared browsing.

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.

Drawing Activity

Paint (Oficina) Issues
can be found in the trac system.

The application is fully written in Python, using only GTK features. It is being developed at LSI-USP in Brazil.

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.

Journal and Datastore

Note that 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.

The journal uses the underlying Datastore facility which is new; its issues are in our trac system. Note that it 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.
Journal should give a choice of activities to resume an object with#2544
Only a single activity can register right now for a given mime-type; it should be possible for multiple activities to handle the same mime-type and the user be asked which to invoke.
Journal issues
can be found in our trac system.

Newsreader

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.

Record

The primary record (still- and video-camera) activity is written by Erik Blankinship and Bakhtiar Mikhak. (The Etoys activity includes support for the camera.)

The BTest-2 system does not have a LED to indicate if the camera or microphone is enabled. Such a LED is present on BTest-3 and later systems.

Both the Record activity and Etoys can be used for playback; a version of Helix and a gstreamer player (roughly modeled on Totem) are available for Trial-2.

Read (aka xbook)

File viewer through the browser, or as a sugar activity. The PDF format view is brought to you by the poppler library and Cairo graphics library.

The xbook application has latent provision for ebook mode, awaiting a couple key bug fixes.

TamTam

The TamTam Release Notes
are available.

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.

Integration with the journal is not complete at this time, and users are wise to show children how to save their work.

Watch and Listen

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.

Note that it is likely there will be no icon for this activity in future versions, media playing being started by journal or browser activity.

Write

Write activity issues
can be found in trac.
Write share function FAIL after insert an image#2253
Sharing an image in Write will cause sharing to fail.

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.

Games

Blockparty

A famous, simple game of falling blocks, often known as Tetris. Contributed by Vadim Gerasimov.

Connect

A version of Connect-4. Supports network play, and is useful as an example of how to use Sugar's collaboration facilities.

Note that 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 Trial 3 feature.

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, and hardware anti-aliasing for the color screen is disabled. Likewise, volume is controlled by F11 (quieter) and F12 (louder).

Brightness-volume.png

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 Trial-3.

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 RealPlayer® 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:

  1. 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)
  2. 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)