diff --git a/fw/.cproject b/fw/.cproject
index 9b11f6c..f852c90 100644
--- a/fw/.cproject
+++ b/fw/.cproject
@@ -35,6 +35,7 @@
+
@@ -67,6 +68,7 @@
+
@@ -97,6 +99,7 @@
+
@@ -136,6 +139,7 @@
+
@@ -167,6 +171,7 @@
+
diff --git a/fw/Core/Inc/rgbled.h b/fw/Core/Inc/rgbled.h
deleted file mode 100644
index 1f78d53..0000000
--- a/fw/Core/Inc/rgbled.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * rgbled.h
- *
- * Created on: Nov 11, 2021
- * Author: dooku
- */
-
-#ifndef INC_RGBLED_H_
-#define INC_RGBLED_H_
-
-#include "stm32l0xx_ll_tim.h"
-#include "stddef.h"
-
-/*
- * Return values for I2C functions
- */
-
-#define RGBLED_OK 0
-#define RGBLED_ERROR -1 // generic error
-#define RGBLED_WRONG_CHANNEL -2 // channel number not in {1,2,3,4}
-
-/*
- * Defaults used for LL timer (PWM) initialization
- */
-
-#define RGBLED_PRESCALER 0
-#define RGBLED_PERIOD 255
-#define RGBLED_MAX_INTENSITY 100
-
-/*
- * Shorthands for colors
- */
-
-#define RGBLED_RED 255,0,0
-#define RGBLED_GREEN 0,255,0
-#define RGBLED_BLUE 0,0,255
-#define RGBLED_WHITE 255,255,255
-#define RGBLED_YELLOW 255,255,0
-#define RGBLED_OFF 0,0,0
-#define RGBLED_MAGENTA 255,0,255
-
-/*
- * Type definitions
- */
-
-typedef struct {
- // tim2 ch1 B
- // tim22 ch1 G
- // tim22 ch2 R
- // TODO union, aby se dalo nastavovat LED v cyklu (set_color)
- union {
- struct {
- TIM_TypeDef *R;
- TIM_TypeDef *G;
- TIM_TypeDef *B;
- } timer;
- TIM_TypeDef *timer_array[3];
- };
- union {
- struct {
- uint8_t R;
- uint8_t G;
- uint8_t B;
- } channel;
- uint8_t channel_array[3];
- };
-
-} rgbled_context_t;
-
-/*
- * Function declarations
- */
-
-int8_t rgbled_init(rgbled_context_t *context);
-int8_t rgbled_set_color(uint8_t R, uint8_t G, uint8_t B);
-int8_t rgbled_set_intensity(uint8_t intensity);
-int8_t rgbled_get_intensity(uint8_t *intensity);
-int8_t rgbled_off(void);
-
-
-#endif /* INC_RGBLED_H_ */
diff --git a/fw/Core/Src/rgbled.c b/fw/Core/Src/rgbled.c
deleted file mode 100644
index af24f58..0000000
--- a/fw/Core/Src/rgbled.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * rgbled.c
- *
- * Created on: Nov 11, 2021
- * Author: dooku
- */
-
-#include "rgbled.h"
-
-static rgbled_context_t *rgbled_context;
-static uint8_t rgbled_intensity = RGBLED_MAX_INTENSITY; /* LED intensity from 0 (off) to RGBLED_MAX_INTENSITY (full power) */
-
-int8_t rgbled_init(rgbled_context_t *context)
-{
- if (context == NULL) {
- return RGBLED_ERROR;
- }
- rgbled_context = context;
-
- return RGBLED_OK;
-}
-
-int8_t rgbled_set_color(uint8_t R, uint8_t G, uint8_t B)
-{
- uint8_t colors[3];
- uint8_t i;
-
- colors[0] = (uint32_t)R * rgbled_intensity / RGBLED_MAX_INTENSITY;
- colors[1] = (uint32_t)G * rgbled_intensity / RGBLED_MAX_INTENSITY;
- colors[2] = (uint32_t)B * rgbled_intensity / RGBLED_MAX_INTENSITY;
- for (i = 0; i < 3; i++) {
- if (colors[i] > RGBLED_PERIOD) {
- return RGBLED_ERROR;
- }
- }
- for (i = 0; i < 3; i++) {
- switch (rgbled_context->channel_array[i]) {
- case 1:
- LL_TIM_OC_SetCompareCH1(rgbled_context->timer_array[i], (uint32_t)(RGBLED_PERIOD - colors[i]));
- break;
- case 2:
- LL_TIM_OC_SetCompareCH2(rgbled_context->timer_array[i], (uint32_t)(RGBLED_PERIOD - colors[i]));
- break;
- case 3:
- LL_TIM_OC_SetCompareCH3(rgbled_context->timer_array[i], (uint32_t)(RGBLED_PERIOD - colors[i]));
- break;
- case 4:
- LL_TIM_OC_SetCompareCH4(rgbled_context->timer_array[i], (uint32_t)(RGBLED_PERIOD - colors[i]));
- break;
- default:
- return RGBLED_WRONG_CHANNEL;
- }
- }
- return RGBLED_OK;
-}
-
-int8_t rgbled_set_intensity(uint8_t intensity)
-{
- if (intensity > RGBLED_MAX_INTENSITY) {
- return RGBLED_ERROR;
- }
- rgbled_intensity = intensity;
-}
-
-int8_t rgbled_get_intensity(uint8_t *intensity)
-{
- if (intensity == NULL) {
- return RGBLED_ERROR;
- }
- *intensity = rgbled_intensity;
-}
-
-int8_t rgbled_off(void)
-{
- rgbled_set_color(RGBLED_OFF);
-}
diff --git a/fw/Libs/rgbled b/fw/Libs/rgbled
index 4ab95c1..212249e 160000
--- a/fw/Libs/rgbled
+++ b/fw/Libs/rgbled
@@ -1 +1 @@
-Subproject commit 4ab95c1da96078adda09aa32f78c7da3a326d2fc
+Subproject commit 212249edf6abf7e9ba25a295c6697bd819cc94d4