From e40b917699c0a2a8bd3d72919ec97c9794ce8422 Mon Sep 17 00:00:00 2001
From: Martin/Geno <geno+dev@fireorbit.de>
Date: Tue, 27 Aug 2019 11:45:48 +0200
Subject: [PATCH] review fix of get rocket state

---
 epicardium/modules/leds.c    | 9 ++++++++-
 pycardium/modules/py/leds.py | 3 ++-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/epicardium/modules/leds.c b/epicardium/modules/leds.c
index c4e2ef7b..eec9b5cb 100644
--- a/epicardium/modules/leds.c
+++ b/epicardium/modules/leds.c
@@ -102,7 +102,14 @@ void epic_leds_set_rocket(int led, uint8_t value)
 }
 uint8_t epic_leds_get_rocket(int led)
 {
-	pmic_get_led(led);
+	uint8_t ret = 0;
+	while (hwlock_acquire(HWLOCK_I2C, pdMS_TO_TICKS(1)) < 0) {
+		vTaskDelay(pdMS_TO_TICKS(1));
+	}
+
+	ret = pmic_get_led(led);
+	hwlock_release(HWLOCK_I2C);
+	return ret;
 }
 
 void epic_set_flashlight(bool power)
diff --git a/pycardium/modules/py/leds.py b/pycardium/modules/py/leds.py
index e2314f22..ad1d0145 100644
--- a/pycardium/modules/py/leds.py
+++ b/pycardium/modules/py/leds.py
@@ -87,7 +87,8 @@ def get_rocket(led):
        +-------+--------+----------+
        | ``2`` | Green  | Right    |
        +-------+--------+----------+
-    :return int:  Brightness of LED (value between 0 and 31).
+    :rtype: int
+    :returns: Brightness of LED (value between 0 and 31).
     """
     return sys_leds.get_rocket(led)
 
-- 
GitLab