Power Log Collector: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
<noinclude>[[Category:Battery & Power]]
<noinclude>[[Category:Battery & Power]]
</noinclude>
</noinclude>
This Power Log Collector boots an XO-1 or XO-1.5 and copies the power logs to itself before shutting the laptop down.
The Power Log Collectors boot an XO and copy the power logs to itself before shutting the laptop down.


'''Note''': will not work on secured laptops without signing.
'''Note''': will not work on secured laptops without signing.


There are two versions provided here. One uses Tiny Core Linux, and the other uses OpenFirmware. The Tiny Core Linux version does not work for XO-1.75 yet, see the [[#OpenFirmware]] section for an XO-1.75 version.
Does not work for XO-1.75 yet.


== How to Use ==
== Tiny Core Linux ==
=== How to Use ===


* Download [[media:Power-log-collector.tar.bz2|Power-log-collector.tar.bz2]] and unpack onto a USB flash drive,
* Download [[media:Power-log-collector.tar.bz2|Power-log-collector.tar.bz2]] and unpack onto a USB flash drive,
Line 16: Line 17:
The XO will collect the power logs, print a message saying has done so and then shut down.
The XO will collect the power logs, print a message saying has done so and then shut down.


== Theory of Operation ==
=== Theory of Operation ===
* Based on [[Tiny Core Linux]],
* Based on [[Tiny Core Linux]],
* An [[Custom_bootloader#A_single_bootloader_for_both_XO-1_and_XO-1.5|Open Firmware Boot Script]] selects the XO-1 or XO-1.5 kernel,
* An [[Custom_bootloader#A_single_bootloader_for_both_XO-1_and_XO-1.5|Open Firmware Boot Script]] selects the XO-1 or XO-1.5 kernel,
Line 22: Line 23:
* executes rc.local on that drive, which does the collection.
* executes rc.local on that drive, which does the collection.


== How it was Made ==
=== How it was Made ===


It was made by remastering Tiny Core Linux.
It was made by remastering Tiny Core Linux.
Line 34: Line 35:
Then assemble into a .tar.bz2 for download.
Then assemble into a .tar.bz2 for download.


== rc.local ==
=== rc.local ===


The script that does the collection:
The script that does the collection:
Line 66: Line 67:
poweroff
poweroff


== OpenFirmware Alternative ==
== OpenFirmware ==


A bootable filesystem for USB drive which will save the power logs from a set of OLPC laptops for later analysis, for use on XO-1.75, XO-1.5, and XO-1.
Place this as boot/olpc.fth on an ext2 USB drive:


=== Preparing the drive ===
\ OLPC Power Log Collection Script

Select a USB drive with at least 128MB capacity, and preferably nothing important on it.
visible

no-page
* download [http://dev.laptop.org/~quozl/save-power-logs-1.0.zip save-power-logs-1.0.zip],
." Power Log Collection" cr
* unpack onto a USB drive.
dir int:2,\home\olpc\power-logs\pwr*

This will create a ''boot'' directory containing the program.
: force-overwrite ( path$ -- continue? ) type cr true ;

patch force-overwrite ?delete-file $copy1
This works with either the common FAT filesystem or ext2. For FAT filesystems, please use dosfsck, scandisk, Disk Utility or other tools to ensure the filesystem is without errors.

." Copying, please standby." cr
=== Using the drive ===
copy int:2,\home\olpc\power-logs\pwr* u:\

* ensure the laptop is off,
." Power Logs Recovered" cr
* insert the drive,
." Shutting down in 10 seconds" cr
* press the power button,
." You may remove the USB drive now" cr
green-screen
* wait for the green screen,
* remove the drive,
d# 10000 ms
* move to the next laptop.
power-off

The data will be placed in a ''pwr.tar'' file on the USB drive.

=== Theory of operation ===

The first time it is booted, the program creates a ''pwr.tar'' file on the USB drive containing the power logs.

The second and subsequent boots append new entries to the ''pwr.tar'' file.

Running the collector twice on a laptop is harmless, in that the duplicate entries added to the file supersede the previous entries.

Revision as of 08:09, 26 March 2012


The Power Log Collectors boot an XO and copy the power logs to itself before shutting the laptop down.

Note: will not work on secured laptops without signing.

There are two versions provided here. One uses Tiny Core Linux, and the other uses OpenFirmware. The Tiny Core Linux version does not work for XO-1.75 yet, see the #OpenFirmware section for an XO-1.75 version.

Tiny Core Linux

How to Use

The XO will collect the power logs, print a message saying has done so and then shut down.

Theory of Operation

  • Based on Tiny Core Linux,
  • An Open Firmware Boot Script selects the XO-1 or XO-1.5 kernel,
  • The initial ramdisk mounts /dev/sda (which should be the first USB drive), and
  • executes rc.local on that drive, which does the collection.

How it was Made

It was made by remastering Tiny Core Linux.

Unpack the initial ramdisk to the current directory:

# gunzip <../initrd.gz | cpio -i

Modify the files as needed, then repack the initial ramdisk:

# find | sudo cpio -o -H newc --quiet | gzip -2 > ../initrd.gz

Then assemble into a .tar.bz2 for download.

rc.local

The script that does the collection:

#!/bin/sh

uname -a | grep _xo1-
if [ $? -eq 0 ]
then
       echo detected xo-1.0
       XO_ROOT=mtdblock0
       XO_FS=jffs2
else
       echo detected xo-1.5
       XO_ROOT=mmcblk0p2
       XO_FS=ext3
fi

mkdir -p /mnt/$XO_ROOT

mount -t $XO_FS -o ro /dev/$XO_ROOT /mnt/$XO_ROOT
mkdir -p /mnt/sda1/power-logs
cp /mnt/$XO_ROOT/home/olpc/power-logs/* /mnt/sda1/power-logs
umount /mnt/$XO_ROOT
mount /dev/sda1 /mnt/sda1 -o remount,ro
sync
echo Power Logs Recovered
echo Shutting down in 10 seconds
echo You may remove the USB now
sleep 10
poweroff

OpenFirmware

A bootable filesystem for USB drive which will save the power logs from a set of OLPC laptops for later analysis, for use on XO-1.75, XO-1.5, and XO-1.

Preparing the drive

Select a USB drive with at least 128MB capacity, and preferably nothing important on it.

This will create a boot directory containing the program.

This works with either the common FAT filesystem or ext2. For FAT filesystems, please use dosfsck, scandisk, Disk Utility or other tools to ensure the filesystem is without errors.

Using the drive

  • ensure the laptop is off,
  • insert the drive,
  • press the power button,
  • wait for the green screen,
  • remove the drive,
  • move to the next laptop.

The data will be placed in a pwr.tar file on the USB drive.

Theory of operation

The first time it is booted, the program creates a pwr.tar file on the USB drive containing the power logs.

The second and subsequent boots append new entries to the pwr.tar file.

Running the collector twice on a laptop is harmless, in that the duplicate entries added to the file supersede the previous entries.