diff options
author | Arjan van de Ven <arjan@linux.intel.com> | 2011-04-27 18:04:40 -0400 |
---|---|---|
committer | Arjan van de Ven <arjan@linux.intel.com> | 2011-04-27 18:08:03 -0400 |
commit | a0519253b23d06b5e2aac793ae49bf82c761676e (patch) | |
tree | 337f211fb3ec563d94969afe5eaab46ddfdb9c90 | |
parent | e0b2b5915ebbbea065efdf11c230b6b7b7874ae3 (diff) | |
download | powertop-a0519253b23d06b5e2aac793ae49bf82c761676e.tar.gz |
more Extech integration
-rw-r--r-- | README | 14 | ||||
-rw-r--r-- | main.cpp | 5 | ||||
-rw-r--r-- | measurement/measurement.cpp | 20 | ||||
-rw-r--r-- | measurement/measurement.h | 2 |
4 files changed, 33 insertions, 8 deletions
@@ -66,3 +66,17 @@ Specifically PowerTOP contains code from nl80211 userspace tool - Copyright 2007, 2008 Johannes Berg <johannes@sipsolutions.net> + + +Extech Power Analyzer / Datalogger support +------------------------------------------ +I use, and our analysis teams use, the Extech Power Analyzer/Datalogger +(model number 380803) quite a lot, and PowerTOP supports using this +device over the serial cable. Just pass the device node on the command line +like this + +powertop --extech=/dev/ttyUSB0 + +(where ttyUSB0 is the devicenode of the serial-to-usb adapter on my system) + + @@ -65,6 +65,7 @@ static const struct option long_options[] = {"help",no_argument, NULL, 'u'}, /* u for usage */ {"calibrate",no_argument, NULL, 'c'}, {"html", optional_argument, NULL, 'h'}, + {"extech", optional_argument, NULL, 'e'}, {NULL, 0, NULL, 0} }; @@ -79,6 +80,7 @@ static void print_usage() printf(_("--debug \t run in \"debug\" mode\n")); printf(_("--version \t print version information\n")); printf(_("--calibrate \t runs powertop in calibration mode\n")); + printf(_("--extech=devnode \t uses an Extech Power Analyzer for measurements\n")); printf(_("--html[=FILENAME]\t\t generate a html report\n")); printf(_("--help \t\t print this help menu\n")); printf("\n"); @@ -245,6 +247,9 @@ int main(int argc, char **argv) exit(0); break; + case 'e': /* Extech power analyzer support */ + extech_power_meter(optarg ? optarg : "/dev/ttyUSB0"); + break; case 'u': print_usage(); exit(0); diff --git a/measurement/measurement.cpp b/measurement/measurement.cpp index 9953183..1a67363 100644 --- a/measurement/measurement.cpp +++ b/measurement/measurement.cpp @@ -109,14 +109,6 @@ void detect_power_meters(void) DIR *dir; struct dirent *entry; - if (0) { - class extech_power_meter *meter; - - meter = new class extech_power_meter("/dev/ttyUSB0"); - - power_meters.push_back(meter); - } - dir = opendir("/proc/acpi/battery"); if (!dir) return; @@ -136,3 +128,15 @@ void detect_power_meters(void) closedir(dir); } + +void extech_power_meter(const char *devnode) +{ + DIR *dir; + struct dirent *entry; + + class extech_power_meter *meter; + + meter = new class extech_power_meter(devnode); + + power_meters.push_back(meter); +} diff --git a/measurement/measurement.h b/measurement/measurement.h index d40fcdc..e225606 100644 --- a/measurement/measurement.h +++ b/measurement/measurement.h @@ -49,6 +49,8 @@ extern double global_joules_consumed(void); extern double global_time_left(void); extern void detect_power_meters(void); +extern void extech_power_meter(const char *devnode); + extern double min_power; |