diff --git a/src/ietf-hardware/IETFHardware.cpp b/src/ietf-hardware/IETFHardware.cpp
index 43a79d7..e138e51 100644
--- a/src/ietf-hardware/IETFHardware.cpp
+++ b/src/ietf-hardware/IETFHardware.cpp
@@ -150,6 +150,13 @@
     switch (type) {
         case SensorType::Temperature:
             return "temp"s + std::to_string(sysfsChannelNr) + "_input";
+        case SensorType::Current:
+            return "curr"s + std::to_string(sysfsChannelNr) + "_input";
+        case SensorType::Power:
+            return "power"s + std::to_string(sysfsChannelNr) + "_input";
+        case SensorType::VoltageAC:
+        case SensorType::VoltageDC:
+            return "in"s + std::to_string(sysfsChannelNr) + "_input";
     }
 
     __builtin_unreachable();
@@ -163,6 +170,34 @@
     {"sensor-data/value-precision", "0"},
     {"sensor-data/oper-status", "ok"},
 };
+template <> const DataTree sysfsStaticData<SensorType::Current> = {
+    {"class", "iana-hardware:sensor"},
+    {"sensor-data/value-type", "amperes"},
+    {"sensor-data/value-scale", "milli"},
+    {"sensor-data/value-precision", "0"},
+    {"sensor-data/oper-status", "ok"},
+};
+template <> const DataTree sysfsStaticData<SensorType::Power> = {
+    {"class", "iana-hardware:sensor"},
+    {"sensor-data/value-type", "watts"},
+    {"sensor-data/value-scale", "micro"},
+    {"sensor-data/value-precision", "0"},
+    {"sensor-data/oper-status", "ok"},
+};
+template <> const DataTree sysfsStaticData<SensorType::VoltageAC> = {
+    {"class", "iana-hardware:sensor"},
+    {"sensor-data/value-type", "volts-AC"},
+    {"sensor-data/value-scale", "micro"},
+    {"sensor-data/value-precision", "0"},
+    {"sensor-data/oper-status", "ok"}
+};
+template <> const DataTree sysfsStaticData<SensorType::VoltageDC> = {
+    {"class", "iana-hardware:sensor"},
+    {"sensor-data/value-type", "volts-DC"},
+    {"sensor-data/value-scale", "micro"},
+    {"sensor-data/value-precision", "0"},
+    {"sensor-data/oper-status", "ok"}
+};
 
 template <SensorType TYPE>
 SysfsValue<TYPE>::SysfsValue(std::string componentName, std::optional<std::string> parent, std::shared_ptr<sysfs::HWMon> hwmon, int sysfsChannelNr)
@@ -187,7 +222,11 @@
     return res;
 }
 
+template struct SysfsValue<SensorType::Current>;
+template struct SysfsValue<SensorType::Power>;
 template struct SysfsValue<SensorType::Temperature>;
+template struct SysfsValue<SensorType::VoltageAC>;
+template struct SysfsValue<SensorType::VoltageDC>;
 
 EMMC::EMMC(std::string componentName, std::optional<std::string> parent, std::shared_ptr<sysfs::EMMC> emmc)
     : DataReader(std::move(componentName), std::move(parent))
