Power Log Collector: Difference between revisions
(no, it doesn't use powerd at all, it only collects logs.) |
m (Reverted edits by Rizwan1218 (Talk) to last revision by Quozl) |
||
(11 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
<noinclude>[[Category:Battery & Power]] |
|||
⚫ | |||
</noinclude> |
|||
⚫ | |||
'''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 Open Firmware. |
|||
Does not work for XO-1.75 yet. |
|||
{| border="1" cellspacing="0" cellpadding="2" width="100%" class="wikitable" |
|||
⚫ | |||
! collector |
|||
! supported hardware |
|||
! minimum firmware |
|||
! time taken |
|||
|- |
|||
|[[#Tiny Core Linux|Tiny Core Linux based]] |
|||
| XO-1 XO-1.5 |
|||
| none |
|||
| a couple of minutes |
|||
|- |
|||
|[[#Open Firmware|Open Firmware based]] |
|||
| XO-1 XO-1.5 XO-1.75 |
|||
| [[OLPC_Firmware_q2f09|Q2F09]] [[OLPC_Firmware_q3c05|Q3C05]] [[OLPC_Firmware_q4d12|Q4D12]] |
|||
| less than a minute |
|||
|} |
|||
== Tiny Core Linux == |
|||
⚫ | |||
* 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 14: | Line 34: | ||
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 20: | Line 40: | ||
* 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. |
||
Unpack the initial ramdisk to the current directory: |
Unpack the initial ramdisk to the current directory: |
||
# gunzip <../initrd.gz | cpio -i |
# gunzip <../initrd.gz | cpio -i |
||
Modify the files as needed, then repack the initial ramdisk: |
Modify the files as needed, then repack the initial ramdisk: |
||
# find | sudo cpio -o -H newc --quiet | gzip -2 > ../initrd.gz |
# find | sudo cpio -o -H newc --quiet | gzip -2 > ../initrd.gz |
||
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 62: | Line 83: | ||
sleep 10 |
sleep 10 |
||
poweroff |
poweroff |
||
== Open Firmware == |
|||
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. |
|||
* download [http://dev.laptop.org/~quozl/save-power-logs-1.0.zip save-power-logs-1.0.zip], |
|||
* unpack onto a USB drive. |
|||
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, |
|||
* for ext2 filesystems, please use Open Firmware [[OLPC_Firmware_q4d12|Q4D12]] or later. |
|||
=== 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. |
Latest revision as of 20:31, 25 July 2013
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 Open Firmware.
collector | supported hardware | minimum firmware | time taken |
---|---|---|---|
Tiny Core Linux based | XO-1 XO-1.5 | none | a couple of minutes |
Open Firmware based | XO-1 XO-1.5 XO-1.75 | Q2F09 Q3C05 Q4D12 | less than a minute |
Tiny Core Linux
How to Use
- Download Power-log-collector.tar.bz2 and unpack onto a USB flash drive,
- Shut down the XO,
- Insert the USB drive, and
- Turn on the XO.
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
Open Firmware
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.
- download save-power-logs-1.0.zip,
- unpack onto a USB drive.
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,
- for ext2 filesystems, please use Open Firmware Q4D12 or later.
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.