Hi, i'd like to have the functionality given by the diff below, before cleaning up another diff making use of it.
with "# envstat -Td bmx280temp0 -i 1" i get output like: Current Max Min Avg Unit temperature: 25.070 25.070 25.060 25.067 degC pressure: 100.860 100.867 100.856 100.861 kPa and with "# envstat -d bmx280temp0": Current CritMax WarnMax WarnMin CritMin Unit temperature: 25.080 degC pressure: 100.865 kPa my sensor does fill ->value_cur with mPa, so pressure does fit into the "everything else"-else{} with ->cur_value / 1000000.0 for printout in kPa. did i miss anything? -Artturi diff --git a/sys/dev/sysmon/sysmon_envsys_tables.c b/sys/dev/sysmon/sysmon_envsys_tables.c index 75fed669892a..ceec07b8e93a 100644 --- a/sys/dev/sysmon/sysmon_envsys_tables.c +++ b/sys/dev/sysmon/sysmon_envsys_tables.c @@ -53,6 +53,7 @@ static const struct sme_descr_entry sme_units_description[] = { { ENVSYS_BATTERY_CHARGE, -1, "Battery charge" }, { ENVSYS_SRELHUMIDITY, -1, "relative Humidity" }, { ENVSYS_LUX, -1, "Illuminance" }, + { ENVSYS_SPRESSURE, -1, "Pressure" }, { -1, -1, "unknown" } }; diff --git a/sys/sys/envsys.h b/sys/sys/envsys.h index b3f2e7662b2b..2bd8df824990 100644 --- a/sys/sys/envsys.h +++ b/sys/sys/envsys.h @@ -65,6 +65,7 @@ enum envsys_units { ENVSYS_BATTERY_CHARGE, /* Battery charging/discharging */ ENVSYS_SRELHUMIDITY, /* relative humidity */ ENVSYS_LUX, /* illuminance in lux */ + ENVSYS_SPRESSURE, /* Pressure in mPa */ ENVSYS_NSENSORS }; @@ -163,7 +164,7 @@ typedef struct envsys_tre_data envsys_tre_data_t; #ifdef ENVSYSUNITNAMES static const char * const envsysunitnames[] = { "degC", "RPM", "VAC", "V", "Ohms", "W", - "A", "Wh", "Ah", "bool", "integer", "drive", "%rH", "lux", "Unk" + "A", "Wh", "Ah", "bool", "integer", "drive", "%rH", "lux", "kPa", "Unk" }; static const char * const envsysdrivestatus[] = { "unknown", "empty", "ready", "powering up", "online", "idle", "active", diff --git a/usr.sbin/envstat/envstat.8 b/usr.sbin/envstat/envstat.8 index b6f5f402ef0a..e023969153eb 100644 --- a/usr.sbin/envstat/envstat.8 +++ b/usr.sbin/envstat/envstat.8 @@ -168,6 +168,8 @@ Watts Watt-hours .It %rH relative Humidity +.It kPa +Pressure in kilopascals .El .Sh EXAMPLES To display the diff --git a/usr.sbin/envstat/envstat.c b/usr.sbin/envstat/envstat.c index f5a7422917b0..8d33fcc8304f 100644 --- a/usr.sbin/envstat/envstat.c +++ b/usr.sbin/envstat/envstat.c @@ -1023,6 +1023,8 @@ do { \ stype = "Ah"; else if (strcmp(sensor->type, "relative Humidity") == 0) stype = "%rH"; + else if (strcmp(sensor->type, "Pressure") == 0) + stype = "kPa"; else stype = "?";