diff --git a/epicardium/modules/light_sensor.c b/epicardium/modules/light_sensor.c
index c4429479202cca3af06ae6403275b5f1729b4afb..61e99955aeae566493a1c1586d6800398cd86b13 100644
--- a/epicardium/modules/light_sensor.c
+++ b/epicardium/modules/light_sensor.c
@@ -11,11 +11,11 @@
 static uint16_t last_value;
 static TaskHandle_t poll_task;
 
-    int epic_light_sensor_init()
+int epic_light_sensor_init()
 {
 	const sys_cfg_adc_t sys_adc_cfg = NULL; /* No system specific configuration needed. */
 	if (ADC_Init(0x9, &sys_adc_cfg) != E_NO_ERROR) {
-        return EINVAL;
+        return -EINVAL;
 	}
 	GPIO_Config(&gpio_cfg_adc7);
     return 0;
@@ -71,7 +71,7 @@ int epic_light_sensor_get(uint16_t* value)
 {
     if (!poll_task)
     {
-        return EINVAL;
+        return -ENODATA;
     }
 	*value = last_value;
     return 0;
diff --git a/pycardium/modules/light_sensor.c b/pycardium/modules/light_sensor.c
index 04e9b484f826e0326d434450001bf81e8de3e03f..9bc62e17a42b144a12238bb36cb9694485d55914 100644
--- a/pycardium/modules/light_sensor.c
+++ b/pycardium/modules/light_sensor.c
@@ -14,7 +14,7 @@ STATIC mp_obj_t mp_light_sensor_get_reading()
 {
     uint16_t last;
     int status = epic_light_sensor_get(&last);
-    if (status == EINVAL)
+    if (status == -ENODATA)
     {
         mp_raise_ValueError("sensor not running");
         return mp_const_none;