OLPC News (2008-02-09)

Walter Bender walter at laptop.org
Sat Feb 9 11:39:33 EST 2008

1. Embedded controller: Richard Smith found a few more "corner cases"
where the the EC side of the command protocol can "wedge." He also
discovered—while looking at the kernel's EC SCI handler—that the
"unwedge" workaround only works when the EC is reporting up a single
byte. EC command failure does not seem to show up on Richard's testbed
and there have not been many reports from the Joyride users with
symptoms that would match this failure mode; therefore, these fixes
will not make Update.1—we don't want to hold up the release for the
necessary testing and QA; they should appear in the next release. The
current round of EC code appears to be holding up well.

2. Batteries: Field reports of batteries that will not charge continue
to trickle in. The symptoms are all identical: during a charge the
voltage profile changes in such a way that the EC thinks the battery
is fully charged and it marks it as such; but since it only received a
few mAh of charger when the XO goes on to battery power is shuts off
in a few minutes. Nothing so far indicates that it is a EC software
problem, but Richard is not ruling it out until he has had a chance to
work with the suspect batteries. A sampling of RMA with these
batteries are on their way to Richard for examination and return to
the manufacture for deeper analysis.

3. Power usage: Richard continues to gather data and analyze the power
consumption of the XO laptop while trying to auto-suspend under "real
world" conditions. (Many people have offered to gather data for him.)
Based on data gathered in the OLPC offices, laptops don't stay in
auto-suspend while not being actively used: there is a constant stream
of wake-ups. This skews the result heavily towards a shorter battery
runtime. To get an accurate profile of the actual activity level,
these wake-ups need to be eliminated or minimized. The prime suspect
is the WLAN: an XO laptop that auto-suspends not in the noisy RF
environment of the OLPC offices will stay in suspend until user
activity or the low battery wakeup occurs.

Chris Ball provided Richard with some power readings from our newly
enhanced power tinderbox running a C2 (mass production) laptop. It
allows us to sample the power draw of the various sub-systems while in
sleep, something that the olpc-logbat script cannot do. The top
auto-suspend power-draw breakdown:

WLAN:	734 mW
backlight:	362 mW
memory:	239 mW
LCD:		218 mW
EC:		108 mW
other:		339 mW
total:		2064 mW

The "other" category seems high, but it includes the switching
regulator efficiency loss across all categories. A more details audit
of these numbers will happen in the future. The good news is that the
2W total matches what olpc-logbat reports as being the average for a
4.5 hour uninterrupted suspend session so measured matches reality.
The bad news is that this works out to only about 8.5 hours of battery
life with no wakups. To get to greater than 10 hours, we are going to
have work out methods of determining when we have been inactive for
extended periods and turn off both the LCD and backlight under those
conditions. We have timers in the system that will do this under
normal non-suspended operation, but auto-suspend currently prevents
these timers from ever expiring. For long auto-suspends, the only LCD
and backlight power savings we get are from freezing the display and
dimming the backlight. Recovering over 500mW in the extended-suspend
case would make a big difference in the "no interruptions" test case
which is an upper bound. (Note that in "eBook" mode, the backlight is
off, providing additional power savings.)

A next step will be to see if the wireless power can be reduced during
suspend. Currently the suspend/non-suspend power draw for the WLAN
module is the same. When the driver and firmware are mature enough, we
will be able to fine-tune the power draw under both conditions.

The EC also has a low-power mode that is not utilized in suspend. More
recent requirements of the EC have it doing things that involve
watching timers. Refactoring the code such that the EC can sleep and
still do its chores will be a pretty invasive change. But as the more
low-hanging fruit is picked, turning that 100mW into 1mW will be

4. School server: John Watlington spent time this week working with a
three-server mesh at the OLPC office in Cambridge. Scott Ananian
turned the mesh testbed back on and we quickly saw the network become
unusable. We are working on registering every laptop in the office to
see if that helps. In the meantime, he has setup a school server on a
different mesh channel in preparation for next week's learning
workshop. It has already been used to show that problems with sharing
and inviting friends to join activities experienced around the office
are related to the network load, not the presence of a school server.

5. Multi-battery charger: Bitworks has provided Richard and Lilian
Walter with the second-round prototypes of the charger PCB with five
channels loaded. This lets the firmware development continue. Various
discussions with the manufacturer of the DC–DC converter chip have
flushed out the causes of higher than expected temperatures; a third
round of prototypes should fix these issues. The first test plastic
and sheet-metal parts from the fabrication tools have been produced
and Gecko has been working with the manufacturer fixing the issues
that always arise with new tooling. A full set of parts to assemble
some complete units are expected at the end of February.

6. Tech team: As part of the restructuring required to meet new
challenges, a technology team has been formed to focus on HW/SW
development, testing, support, and systems administration (IT). Over
the next week we will define goals, work with the other teams
(development and deployment) to understand their needs, and outline a
plan for resourcing and meeting those goals.

7. Schedule/testing: Update.1 RC2 (release candidate 2) was made
available on Friday
(http://download.laptop.org/xo-1/os/candidate/691/jffs2/); it is
signed and ready for testing. Please help test this build (See
http://wiki.laptop.org/go/Test_issues and

8. SysAdmin/IT: Welcome to Henry Hardy, who joined us this week as
OLPC systems administrator.

9. HW/SW Development: This week the first 100 G1G1 users had Build 656
pushed to them automatically. We are only pushing this build to people
running Build 649, 650, or 653. Basic information about update streams
(and how to unsubscribe your laptop) is available in the wiki (See
http://wiki.laptop.org/go/Update_streams). Expect to see Build 656
pushed more broadly over the coming weeks.

Scott also shepherded Update.1 rc2, 691 (See
http://download.laptop.org/xo-1/os/candidate/691/jffs2/). Preliminary
release notes are at

10. Sugar: Reinier Heeres finished up his coop for OLPC.  Not only did
Reinier finish up the the calculator activity in the OLPC system he
created, he also fixed many other bugs in Sugar as part of the UI team
during his coop period.

Simon Schampijer debugged a visual-control problem with Xulrunner
(Ticket #6133) with Marco Pesenti Gritti. (It is probably an X driver
bug.) He provided a first fix for a problem with the browser crashing
when visiting certain web sites (Ticket #6108). The rest of the week
was spent in testing.

Marco started on the code refactoring planned for Update.2. In
particular the toolkit modules was split out into a separate package
to ease maintenance and make licensing more clear. Also it's not
necessary anymore to set SUGAR_PATH and SUGAR_PREFIX to run sugar or
scripts such as the control panel. Marco built packages of Sugar and
dependencies for Fedora 8 (this work is still in progress). The goal
is to have something easier than jhbuild for people to develop
activities or try out Sugar on a non-OLPC distribution. With Jani
Monoses working on the Ubuntu packages, we should be able to cover a
large part of the user community.

Marco also worked with the Pentragram and Eben Eliason on a Sugar demo
for an upcoming MoMA exhibition, which will be open to the public.

Tomeu Vizoso is work on a possible solution to the slow startup time
for activities. It is still too soon to know if or when his patches
will land in our builds, but looks promising. Potentially, we could
eliminate all initializing work not
specific to activities.

Tomeu added some notes about he Sugar architecture to the wiki (See
http://wiki.laptop.org/go/Sugar_Architecture). The page is still
incomplete; if you are interested in working on it, Tomeu will gladly
answer any questions. He also added pointers to tickets to the pages
in the wiki about the datastore redesign (See

And, working with Jani, he fixed some license issues in the Sugar
packages that will allow our packages to get into the Ubuntu 8.04
release in April. If things go as expected, Ubuntu users will be able
to choose at boot Sugar as a desktop. Hopefully this will attract more
users and developers to Sugar.

Sayamindu Dasgupta spent time helping Simon and Marco track down the
cause of Browse activity slowing down after an upgrade from the Ship.2
release to the Update.1 RC release (Ticket #6046). It turns out that
this is being caused by a combination of different issues—we believe
that we have tracked them all down. Sayamindu has a new fontconfig
package that takes care of issue #6048 along with a new version of
Rainbow. The package is in Joyride and will be in the Update.1

Erik Blankinship and Faisal Anwar at Media Mods created a
screencasting activity this week to make it easy to create videos of
what is happening on your screen, complete with audio narration. Also,
Media Mods' newest version of the Record activity, which offers
improved stability, made it into the Update.1 Release Candidate this
week. Coming next to the Record activity is a control panel for
adjusting image and audio settings, exif data, and some new recording
modes: stop-motion and time-lapse.

Arjun Sarwal continues to work on the Measure activity; he is
exploring graphing/plotting packages that can display logged data
within Measure in a variety of different representations. After
discussions it emerges that such graphing functionality would be
useful in conjunction with a spreadsheet-like interface that can read
data logged by the Distance activity (Acoustic Tape Measure) as well.
Arjun is working on making Measure read and write data in CSV format
so that the SocialCalc activity might be able to load and display the
logged values.

Arjun discussed with Richard Boulanger the sensor opcode in Csound;
more development on that front is expected to happen in the coming
weeks. Finally, he spent time talking with Alexis Soffler regarding
how she may be able to incorporate low-cost sensor peripherals into a
chemistry curriculum that she is developing for the XO laptop, the
first one being a low-cost temperature sensor probe.

11. Presence server: Morgan Collett has been working on documentation
for presence and collaboration. See
http://wiki.laptop.org/go/Category:Collaboration for the pages of
Telepathy and Presence Service. Morgan also started a roadmap for
presence that currently just documents open Trac items, but as we
discuss priorities and features he'll add more description:
http://wiki.laptop.org/go/Talk:Presence_Service#Roadmap (feel free to
comment there on anything not suited for a Trac comment).

Guillaume Desmottes changed the presence-server
Jabber-account-registering policy (#6295) and resurrected the
video-chat activity, which is now launchable again. He is waiting on
new Farsight/Stream-engine packages to start testing; he also fixed
some hyperactivity issues and track Salut crashers.

12. Translation: Sayamindu Dasgupta reports have new teams for
Italian, Marathi, Sinhala, Vietnamese and Gujarati. He has an
automated testing script for testing all the translated PO files for
errors in the Pootle server. It currently tests only Spanish and
Mongolian but Sayamindu plans on covering all languages by the next
week. This should prevent build regression bugs due to malformatted or
wrong PO files. He has added notes in the wiki on how to utilize the
translation testing features in our web based translation management
system, Pootle (http://wiki.laptop.org/go/Localization/Testing#Testing_the_PO_files).
Sayamindu also discovered a few cases where Pootle can become very
slow, and discussed these with the upstream developers. They have
suggested a few solutions, and he's trying to implement them in our
deployment. The shifting of Pootle to the new server had caused some
issues to crop up with the GIT integration—he managed to track them
down and fix them. Sayamindu is at Gnunify, one of the grassroots
level FOSS conferences in India, speaking about the OLPC.

Arjun built the xkeyboard-config package locally, in order to catch
all of the recent changes to the xkb symbol files. Dennis Gilmore has
built it on Koji; Arjun has tested it in Joyride and it is now
approved to go into Update1.

13. Kernel: Andres Salmon pushed more (kernel) code upstream, uploaded
mock to Debian ("and hey, it actually works; nice to be able to create
Fedora chroots"), and updated yum packages for Debian.

14. Security: Michael Stone helped Tomeu debug his "prefork
Rainbow-hack: and provided a tentative Rainbow rpm for Scott's
"faster" branch. (These are all efforts towards tuning performance.)
Michael merged Marcus Leech's "olpc-audit" filesystem permissions
checker into olpc-utils; he prototyped patches to Sugar for improving
sugar-install-bundle and for making the Journal automatically
recognize developer keys and designated bundles on USB keys. Michael
"stubbed out" wiki pages for several OLPC-maintained software
artifacts and filed packaging tickets on behalf of John and Scott so
that he and Dennis can track progress on the relevant packaging work.

15. Network: Michail Bletsas met with Latif Ladid, Chairman of the
IPv6 Forum. The principle request on our part is for the forum to help
us with setting up the necessary school-to-school IPv6 paths that will
enable collaboration between children in different schools, countries,
continents. Latif followed up with introductions to the two largest
commercial IPv6 network operators.

Michail had a conference call with SES-Americom. They agreed to
provide the (C-Band) space segment and internet termination (via their
Maryland teleport) for our upcoming deployment in Haiti.

16. In the community: Peter Harrison and Michael Burns worked
throughout the last two weeks to prepare the merging of the
olpchelp.org and olpc.osuosl.org forums, which can be found at
http://forum.laptop.org/. The migration happened Friday night without
a hitch and we have more than doubled (800 users, 4,000 comments) the
community discussing and supporting the XO laptop for Give 1, Get 1
donors. The support gang hopes to extend the site to all XO laptop
users throughout the world with regional, language-specific forums
over time.

Arjun Sarwal worked with advisors Josh Hehner and Jim Hopper to
prepare a draft of the role of advisors document and channels of
advising. The draft is posted on the Health page (See
http://wiki.laptop.org/go/Health); feedback is invited from all. The
agenda and other details of a conference call scheduled for 1PM (EST)
on Sunday, 10 February, are also posted. Many thanks to all advisors
for their support in this initiative.

Yoshiaki Sonoda, an enthusiastic grass-root volunteer and supporter of
OLPC in Japan, is going to make two presentations about OLPC in Japan
this month. The objectives are purely to draw people's attention to
OLPC and to foster better understanding of OLPC philosophy in Japan.
In addition, he hopes more people in Japan will take an interest in
OLPC and subsequently contribute their ideas and resources to OLPC

"OLPC roles in Human Security—from the aspect of Network Centric
Strategy" Feb. 8, 2008, at Sunshine Convention Hall, Ikebukuro, Tokyo.
"Learning learning on Macintosh: Squeak Etoys and OLPC" at the
Nagasaki Macintosh User Group Monthly Meeting (supported by Apple,
Japan) Feb. 23, 2008, at Nagasaki International University, Nagasaki

These activities are supported continually by Mr. Abe, Squeakland.jp
and other OLPC Japanese volunteer members.

Walter Bender
One Laptop per Child

More information about the Devel mailing list