Files
speedypotato_Pico-Game-Cont…/src/controller_config.h
T
2022-04-05 22:01:20 -04:00

60 lines
1.7 KiB
C

#ifndef CONTROLLER_CONFIG_H
#define CONTROLLER_CONFIG_H
#define SW_GPIO_SIZE 9 // Number of switches
#define ENC_GPIO_SIZE 2 // Number of encoders
#define ENC_PPR 24 // Encoder PPR
#define MOUSE_SENS 5 // Mouse sensitivity multiplier
#define ENC_DEBOUNCE true // Encoder Debouncing
#define SW_DEBOUNCE_TIME_US 4000 // Switch debounce delay in us
#define ENC_PULSE (ENC_PPR * 4) // 4 pulses per PPR
#define REACTIVE_TIMEOUT_MAX 1000000 // HID to reactive timeout in us
#define WS2812B_LED_SIZE 32 // Number of WS2812B LEDs
#define WS2812B_LED_ZONES 1 // Number of WS2812B LED Zones
#ifdef PICO_GAME_CONTROLLER_C
typedef struct {
uint8_t r, g, b;
} RGB_t;
const RGB_t COLOR_BLACK = {0, 0, 0};
const RGB_t SW_LABEL_COLORS[] = {
{255, 255, 255}, // START
{255, 255, 255}, // BT-A
{255, 255, 255}, // BT-B
{255, 255, 255}, // BT-C
{255, 255, 255}, // BT-D
{255, 255, 255}, // FX-L
{255, 255, 255}, // FX-R
};
const RGB_t SW_COLORS[] = {
{0, 0, 255}, // START
{255, 255, 255}, // BT-A
{255, 255, 255}, // BT-B
{255, 255, 255}, // BT-C
{255, 255, 255}, // BT-D
{255, 0, 0}, // FX-L
{255, 0, 0}, // FX-R
};
// MODIFY KEYBINDS HERE, MAKE SURE LENGTHS MATCH SW_GPIO_SIZE
const uint8_t SW_KEYCODE[] = {
HID_KEY_D, HID_KEY_F, HID_KEY_J, HID_KEY_K, HID_KEY_C,
HID_KEY_M, HID_KEY_A, HID_KEY_B, HID_KEY_1,
};
const uint8_t SW_GPIO[] = {
29, 3, 4, 5, 17, 12, 0, 8, 1,
};
const uint8_t ENC_GPIO[] = {27, 6}; // L_ENC(0, 1); R_ENC(2, 3)
const bool ENC_REV[] = {false, false}; // Reverse Encoders
const uint8_t WS2812B_GPIO = 2;
#endif
extern bool joy_mode_check;
#endif