[Community-news] OLPC News 2007-08-11

Walter Bender walter.bender at gmail.com
Sat Aug 11 13:28:08 EDT 2007

1. C-Test: C-Test is underway. These XOs are fully textured (the flat
exterior plastic has beaded surface); the keyboard is improved and
included a beveled space bar. The most significant electrical change
is the new ENE 3700B embedded controller (EC), which includes hardware
support for the single-wire protocol used to communicate with the

2. Kathmandu: Shankar Pokharel, from the self-organized OLPC Nepal,
organized a curriculum workshop in coordination with Nepalese
department of education. Forty-eight educationists and developers
participated in the workshop which was inaugurated by Minister of
Education Pradip Nepal. The participants outlined the steps needed for
local content creation and digitization.

3. Builds: Dan Winship, who joined the Red Hat team a month ago, had a
busy week: he has branched x11-xorg-utils package so that we don't
have to pull in libGL; made fallback X logins work; fixed some startup
issues; and removed some packages to save some disk space. John
Palmieri has been cleaning up start-up scripts—for both the machine
itself and the graphical environment. Startup speed has improved and
we are saving a significant amount of memory (and complexity). John is
taking advantage the work that Red Hat's Richard Hughes has done
around D-Bus system activation.

4. Sugar: Dan modified the wedges in the "activity ring" on the home
screen reflect memory usage. He also made added rollovers to the
activity widgets for "resume" and "stop." He ported our web activity
to WebKit, the rendering engine used in both Apple's Safari and the
KDE desktop. He found that memory usage was greatly reduced and
performance much better. (The WebKit project is not quite ready for
production use yet, but it shows real promise.) Finally, Dan got
installation of  activities from USB working.

Marco Gritti was (mostly) on vacation this week, but managed to rework
the palette implementation to enable proper packaging of widgets; he
made some API improvements and fix some bugs in the process; and he
reviewed some patches and did some bug triage.

Ben Saller spent most of the week fixing bugs and also working on a
version of the data store that supports versioning.

Tomeu Vizoso moved the activity-registration service from the shell to
a shell-service process. This service will contain the clipboard and
the object-type registry. He moved Sugar, Journal and the Browse
Activity to the new activity register.

The Collabora team refined the definition of buddy and activity
properties in anticipation of the first release of the software; once
these properties are in the field, the are difficult to change.

Simon Schamijer has been working on the sharing feature in the Browse
Activity; a web page to be "shared" appears as a thumbnail in a tray
at the bottom of the page. From there you can select which page you
want to view. Most of the parts are working and Simon hopes to have
something ready for testing soon. Simon has also been adding a simple
opcode to Csound that enables the reading of ogg vorbis files. The
reason to use Csound rather than gstreamer is that is uses less then
half of the CPU power and due to the concept of instruments you can
playback different files at the same time easily. John Fitch and Eric
de Castro Lopo are currently working on getting the ogg playback
upstream into libsndfile, which is normally used in Csound5 to handle
I/O of sound files.

5. Repair: After Mitch Bradley asserted that a 10-year old could
replace an XO motherboard, Joel Stanley was tasked with overseeing
just that. On Tuesday, 10-year old Philip and his 8-year old sister
Sophie were given an XO; using the instructions on the OLPC wiki they
disassembled and reassembled it (for the most part independently). It
didn't work the first time, so they proceeded to disassemble,
troubleshoot a loose wire, and reassemble the XO. This second pass,
when they were on their own, was successful (See

6. Firmware: IPv6 in the firmware is basically working. Lilian Walter
has succeeded in downloading files via HTTP from the IPv6 internet. In
other words, she has implemented code to support router solicitation
and advertisement. Lilian is currently working on DNS AAAA support via
an IPv4 DNS server and then she will see if she can get to an IPv6 DNS
server. Mitch Bradley still needs to do application testing with the
school server. In coordination with with Ivan Krstić and Michael
Stone, Mitch Bradley has defined the format for firmware security

7. Manufacturing software installation: Dave Woodhouse and Mitch
Bradley build a manufacturing software installation system using
multicast. Rafael Ortiz and Chris Ball worked on testing it with them.
Wireless installation of OS images to the NAND flash is looking
promising—we now have a simple tool that sends NAND flash blocks in
UDP packets (by IPv4 or IPv6, multicast or unicast), with one parity
packet per erase block (to allow for a small amount of packet loss).
We also have a corresponding client that listens for these packets,
checks a
simple CRC32 on each one, and reassembles the erase blocks, writing
them to a file or to a flash device. Mitch is implementing the client
for OpenFirmware.

The interesting part turns out to be 802.11 multicast. First, the
access point (AP) will retransmit any multicast packets generated by
clients—so to avoid wasting bandwidth we actually want the AP itself
to generate them in the first place (perhaps bridged from its wired
interface). Second, and more importantly, most equipment sends
multicasts at the lowest "basic rate"—rates which are mandatory for
all clients to support—which tends to be 1Mb/s, and is not fast enough
to be useful. One way to fix this is to configure the AP not to
include the lower rates in its basic set. This approach has been
successfully tested in QSMC, but only by using a Broadcom 4306
wireless device in a laptop as the AP, using the "hostapd" software.
Unfortunately, the Broadcom drivers are not reliable at rates above
11Mb/s, so testing at higher rates has not been possible. We need to
find a standalone access point where the basic rate can be tuned or,
perhaps, find a way to use the Marvell "libertas" devices for this
purpose. (There is a possibility that we could use mesh mode for this
purpose, but we may have issues with nodes retransmitting multicast
packets to each other.) Further testing of this aspect of the
distribution system is required.

8. Testing infrastructure: Chris Ball worked on Tinderbox additions.
Dan Williams gave Chris a recipe for measuring activity startup time;
the tinderbox will soon to be able to measure whether each activity in
a build starts up okay, and exactly how long each one takes to do so.

9. Wireless resume: Richard Smith, Ronak Chokshi, Marcelo Tosatti,
Javier Cardona, Jordan Crouse and others did a full-court press on the
wireless-resume problems. While several bugs were found that improved
suspend/resume behavior greatly, there is still uncertainty to the
cause of the remaining problem(s).

10. NAND data-corruption: Bug #1905, which has been seen in two XOs
(one B2 and one B4) has gotten the attention of Mitch Bradley, Dave
Woodhouse, Luna Huang, Brian Ma, and others.

11. Google Books: Luke Hutchison's team has metadata and cross-linkage
for most of Google's scanned PD books and can readily share images,
OCR text, and metadata for 100,000 volumes, given selection criteria.
Luke's summer work has been creating a way to run queries on the
existing metadata to make such selections. There are still issues with
copyright, surprisingly, as "public domain" in the US does not mean
public everywhere; their current stance is to avoid worrying about
international copyright law by only providing works through US-based
servers, but making a quick selection will soon be possible.

12. Our Stories: The Our Stories team is preparing interfaces for
online browsing and uploading stories and have a localization team on
reserve to localize interfaces and other materials the last week in
August. John Huang, who is maintaining the client Activity for the
project that records and uploads stories expects to publish some
recording code by the end of August.

13. Wikireader: Renaud Gaudin of Mali has been working on Moulin, an
off-line wikireader, and is working on making it display well on the
XO (See http://moulinwiki.org/). He is also developing ways to let
people pass edits upstream through a moderated proxy server.

14. Maps: Schuyler Erle and UNICEF are working on an implementation of
OpenLayers and the related FeatureServer to support children creating
local maps of their villages, and on building lightweight regional map
packs from public data.  OpenLayers runs smoothly on a B4 without
modification, providing another format for creators: a map layer and
associated data.


Walter Bender
One Laptop per Child

More information about the Community-news mailing list