From 3446061aaef0cd4dc066edb14f25b27e041a77ea Mon Sep 17 00:00:00 2001 From: jkerdreux-imt <jerome.kerdreux@imt-atlantique.fr> Date: Mon, 27 Jan 2025 23:51:16 +0100 Subject: [PATCH] Add normalizeUnit --- utils.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/utils.go b/utils.go index acc2eb5..c42eb8d 100644 --- a/utils.go +++ b/utils.go @@ -96,6 +96,22 @@ func roundToDecimal(value float64, places int) float64 { return math.Round(value*pow) / pow } +func normalizeUnit(value float64, unit string) (float64, error) { + switch unit { + case "lqi": + return value * 100 / 255, nil + case "°F": + return (value - 32) * 5 / 9, nil + case "°K": + return value - 273.15, nil + case "mV", "mW", "mA": + return value / 1000, nil + case "V", "%", "A", "W", "Wh": + return value, nil + } + return 0, fmt.Errorf("Unknown unit %s", unit) +} + // convert Mired to Kelvin and Kelvin to Mired // Mired = 1,000,000 / Temperature in Kelvin func convertMired(value int) int { -- GitLab