Sentinel
Loading...
Searching...
No Matches
config.h
Go to the documentation of this file.
1
7
8#ifndef CONFIG_H
9#define CONFIG_H
10
11#include <freertos/FreeRTOS.h>
12#include <freertos/semphr.h>
13
14#define DEBUG 0
15
16// fallback to secrets.h.default
17#ifdef __has_include
18 #if __has_include("secrets.h")
19 #include "secrets.h"
20 #define USING_SECRETS_H
21 #elif __has_include("secrets.h.default")
22 #include "secrets.h.default"
23 #warning "secrets.h not found, using secrets.h.default. Please copy secrets.h.default to secrets.h and configure your settings."
24 #define USING_SECRETS_DEFAULT
25 #else
26 #error "Neither secrets.h nor secrets.h.default found. Please ensure secrets.h.default exists."
27 #endif
28#else
29 // Fallback for compilers that don't support __has_include
30 #include "secrets.h.default"
31 #warning "Compiler doesn't support __has_include, using secrets.h.default as fallback."
32 #define USING_SECRETS_DEFAULT
33#endif
34
35// DEVICE_ID for API
36#define DEVICE_ID "SENTINEL-001" <
37
38// Mutex declarations
39extern SemaphoreHandle_t serialMutex;
40extern SemaphoreHandle_t modemMutex;
41extern SemaphoreHandle_t networkEventMutex;
42
43// Modem settings (NETWORK_APN is set in secrets.h)
44// #define TINY_GSM_RX_BUFFER 1024
45// #define LILYGO_T_A7670 //temp
46#define TINY_GSM_USE_GPRS true
47#define TINY_GSM_USE_WIFI false
48
49
54#ifdef LILYGO_T_A7670
55// RGB macros
56#define RGB_RED_PIN 16
57#define RGB_GREEN_PIN 15
58#define RGB_BLUE_PIN 7
59#elif LILYGO_T_SIM7670G_S3
60#define RGB_RED_PIN 13
61#define RGB_GREEN_PIN 14
62#define RGB_BLUE_PIN 21
63#endif
64
69#define DHTTYPE DHT22
70#ifdef LILYGO_T_A7670
71#define DHT_PIN 32
72#elif LILYGO_T_SIM7670G_S3
73#define DHT_PIN 7
74#endif
75#define TEMP_DELTA_THRESHOLD 0.1
76#define HUM_DELTA_THRESHOLD 1.0
77
82#define STRAP_NAME "POLAR H9 EC351E2B"
83#define STRAP_ADDRESS "a0:9e:1a:ec:35:1e"
84#define HEARTRATE_SERVICE_UUID "180D"
85#define HEARTRATE_CHAR_UUID "2A37"
86
91#ifdef LILYGO_T_A7670
92#define GAS_PIN (32)
93#elif LILYGO_T_SIM7670G_S3
94#define GAS_PIN (15)
95#endif
96// #define GAS_BOARD "ESP-32"
97// #define GAS_TYPE "MQ-2"
98// #define GAS_VOLTAGE_RESOLUTION 12
99// #define GAS_ADC_BIT_RESOLUTION 12
100#define GAS_RATIO_CLEANAIR 9.83
101#define GAS_DELTA_THRESHOLD 5.0
102/*
103 Exponential regression:
104 Gas | a | b
105 H2 | 987.99 | -2.162
106 LPG | 574.25 | -2.222
107 CO | 36974 | -3.109
108 Alcohol| 3616.1 | -2.675
109 Propane| 658.71 | -2.168
110*/
111#define GAS_SETA 658.71
112#define GAS_SETB -2.168
113
119#ifdef LILYGO_T_A7670
120#define SDA_PIN 21
121#define SCL_PIN 22
122#elif LILYGO_T_SIM7670G_S3
123#define SDA_PIN 6
124#define SCL_PIN 5
125#endif
126
127#define MPU6500_ADDR 0x68
128
133#define ACC_THRESHOLD 2.0
134#define ANGLE_THRESHOLD 60.0
135#define MAX_TIME_BETWEEN 2000
136#define STEP_THRESHOLD 1.2
137#define STEP_DEBOUNCE_MS 300
138
143#define X_OFFSET 0.0737
144#define Y_OFFSET -0.6132
145#define Z_OFFSET -0.9986
146
147#endif
SemaphoreHandle_t modemMutex
Modem mutex for thread-safe modem operations.
Definition main.cpp:36
SemaphoreHandle_t networkEventMutex
Mutex for network event handling.
Definition main.cpp:37
SemaphoreHandle_t serialMutex
Serial mutex for thread-safe printing.
Definition main.cpp:35