adding flasher
This commit is contained in:
@@ -4,9 +4,22 @@
|
||||
#include "freertos/FreeRTOS.h"
|
||||
#include "freertos/task.h"
|
||||
#include "freertos/semphr.h"
|
||||
#include "freertos/queue.h"
|
||||
#include "esp_bt_defs.h"
|
||||
|
||||
#define DISABLE_GUI
|
||||
|
||||
#define MAX_PAIRED_DEVICES 10
|
||||
#define DEVICE_NAME_MAX_LEN 32
|
||||
|
||||
// Forward declaration of paired_device_t
|
||||
typedef struct {
|
||||
char name[DEVICE_NAME_MAX_LEN];
|
||||
esp_bd_addr_t bda;
|
||||
uint32_t last_connected;
|
||||
bool is_connected;
|
||||
} paired_device_t;
|
||||
|
||||
enum
|
||||
{
|
||||
ANGLE_XY = 0,
|
||||
@@ -34,6 +47,10 @@ typedef struct SystemState_s
|
||||
|
||||
// BT event data
|
||||
int btDeviceIndex;
|
||||
|
||||
// NVS cached data
|
||||
paired_device_t pairedDevices[MAX_PAIRED_DEVICES];
|
||||
size_t pairedDeviceCount;
|
||||
|
||||
} SystemState_t;
|
||||
|
||||
@@ -88,5 +105,36 @@ int system_getBtDeviceIndex(void);
|
||||
void system_requestVolumeUp(void);
|
||||
void system_requestVolumeDown(void);
|
||||
|
||||
// NVS Service
|
||||
typedef enum {
|
||||
NVS_OP_SAVE_DEVICE,
|
||||
NVS_OP_LOAD_DEVICES,
|
||||
NVS_OP_REMOVE_DEVICE,
|
||||
NVS_OP_IS_DEVICE_KNOWN,
|
||||
NVS_OP_GET_DEVICE_COUNT,
|
||||
NVS_OP_UPDATE_TIMESTAMP
|
||||
} nvs_operation_type_t;
|
||||
|
||||
typedef struct {
|
||||
nvs_operation_type_t operation;
|
||||
paired_device_t device;
|
||||
esp_bd_addr_t bda;
|
||||
TaskHandle_t requestor;
|
||||
esp_err_t result;
|
||||
bool response_ready;
|
||||
} nvs_request_t;
|
||||
|
||||
void system_initNvsService(void);
|
||||
void system_processNvsRequests(void);
|
||||
esp_err_t system_savePairedDevice(const paired_device_t *device);
|
||||
esp_err_t system_loadPairedDevices(paired_device_t *devices, size_t *count);
|
||||
esp_err_t system_removePairedDevice(esp_bd_addr_t bda);
|
||||
bool system_isDeviceKnown(esp_bd_addr_t bda);
|
||||
esp_err_t system_getKnownDeviceCount(size_t *count);
|
||||
esp_err_t system_updateConnectionTimestamp(esp_bd_addr_t bda);
|
||||
const paired_device_t* system_getPairedDevices(size_t *count);
|
||||
|
||||
|
||||
#define NVS_TIMEOUT_MS 5000
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user