boothifier/include/system.h

95 lines
1.6 KiB
C

#pragma once
#include <Arduino.h>
#include "my_board.h"
#include <FastLED.h>
#include "ATALights.h"
typedef struct {
bool enabled;
}BTN_SETTINGS;
typedef struct{
bool enabled;
int freq;
float min;
float max;
float def;
float deltaRate;
}PWM_OUT_SETTINGS;
typedef struct{
bool enabled;
bool vision;
uint8_t pwmOutIndex;
uint8_t btnIndex;
float min;
float max;
float step;
uint8_t skipCount;
}RAMP_LIGHT_SETTINGS;
typedef struct {
bool enabled;
int height;
int width;
}OLED_SETTINGS;
typedef struct {
bool enabled;
uint8_t addr;
float setpoint1;
float fanPower1;
float setpoint2;
float fanPower2;
float hyst;
uint8_t pwmIndex;
int intervalMs;
}TSENSOR_SETTINGS;
typedef struct {
bool enabled;
String name;
uint8_t core;
}BLE_SETTINGS;
typedef struct {
bool txEnabled;
bool rxEnabled;
}RF_REMOTE_SETTINGS;
typedef struct {
bool enabled;
String ssid;
String pass;
}WIFI_CLIENT_SETTINGS;
typedef struct {
bool enabled;
String ssid;
String pass;
uint8_t ip[4];
uint8_t gateway[4];
uint8_t subnet[4];
}WIFI_AP_SETTINGS;
typedef struct {
bool enabled;
}ADC_SETTINGS;
enum BOOTH_MODE { BOOTH_MODE_NONE=0, BOOTH_MODE_ROAMER=1, BOOTH_MODE_STIK=2 };
typedef struct {
BOOTH_MODE mode;
BOARD_PINS boardPins;
BTN_SETTINGS btnSettings[3];
PWM_OUT_SETTINGS pwmOutSettings[4];
RAMP_LIGHT_SETTINGS rampLightSettings[2];
OLED_SETTINGS oledSettings;
TSENSOR_SETTINGS tSensorSettings;
LEDSTRIP_SETTINGS* ledStripSettings[2];
BLE_SETTINGS bleSettings;
RF_REMOTE_SETTINGS rfRemoteSettings;
}SYS_SETTINGS;