~ruther/qmk_firmware

ref: 78a76b6c1e60e606eebc7cf571ee4251fc47d92a qmk_firmware/platforms/avr/drivers/ws2812_i2c.c -rw-r--r-- 482 bytes
78a76b6c — Danny Iris keymap update (#23635) 1 year, 1 day ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "ws2812.h"
#include "i2c_master.h"

#ifdef WS2812_RGBW
#    error "RGBW not supported"
#endif

#ifndef WS2812_I2C_ADDRESS
#    define WS2812_I2C_ADDRESS 0xB0
#endif

#ifndef WS2812_I2C_TIMEOUT
#    define WS2812_I2C_TIMEOUT 100
#endif

void ws2812_init(void) {
    i2c_init();
}

// Setleds for standard RGB
void ws2812_setleds(rgb_led_t *ledarray, uint16_t leds) {
    i2c_transmit(WS2812_I2C_ADDRESS, (uint8_t *)ledarray, sizeof(rgb_led_t) * leds, WS2812_I2C_TIMEOUT);
}
Do not follow this link