summaryrefslogtreecommitdiff
path: root/firmware/lib/rgb/rgb.h
blob: 2c153f1d77dc2440cc7d809501bfe32e4b103986 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once

#include "settings.h"
#include <Arduino.h>

class RGB
{
public:
    uint8_t currentR;
    uint8_t currentG;
    uint8_t currentB;

    RGB();
    void init();
    void setColorRGB(uint8_t red, uint8_t green, uint8_t blue, bool saveColor);
    void fadeColor(uint8_t red, uint8_t green, uint8_t blue, int duration);
    void blink(int cycles, int interval);
    void breathe(int cycles, int period);
    void rainbowCycle(int duration, float speed);

private:
    int scaleColor(uint8_t val);
};