Created
October 19, 2022 08:43
-
-
Save t-huyeng/16fe2cd9bb217844f62e8c1e08137e52 to your computer and use it in GitHub Desktop.
Not working paxcounter.conf see https://github.com/cyberman54/ESP32-Paxcounter/discussions/896
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// clang-format off | |
// ----- Paxcounter user config file ------ | |
// | |
// --> adapt to your needs and use case <-- | |
// | |
// Notes: | |
// 1. After editing, before "build", use "clean" button in PlatformIO! | |
// 2. Clear NVRAM of the board to delete previous stored runtime settings (pio run -t erase) | |
// Device options | |
#define VERBOSE 1 // set to 0 to silence the device, 1 enables additional debug output | |
#define BOOTMENU 0 // 0 = no bootmenu, 1 = device brings up boot menu before starting application | |
#define BOOTDELAY 30 // time [seconds] while devices waits in boot menue for input | |
#define BOOTTIMEOUT 300 // time [seconds] while devices waits to finish upload a firmware file | |
// Payload send cycle and encoding | |
#define SENDCYCLE 15 // payload send cycle [seconds/2], 0 .. 255 | |
#define SLEEPCYCLE 6 // sleep time after a send cycle [seconds/10], 0 .. 65535; 0 means no sleep [default = 0] | |
#define PAYLOAD_ENCODER 2 // payload encoder: 1=Plain, 2=Packed, 3=Cayenne LPP dynamic, 4=Cayenne LPP packed | |
#define COUNTERMODE 0 // 0=cyclic, 1=cumulative, 2=cyclic confirmed | |
// default settings for transmission of sensor data (first list = data on / second line = data off) | |
#define PAYLOADMASK \ | |
((GPS_DATA | MEMS_DATA | COUNT_DATA | SENSOR1_DATA | SENSOR2_DATA | SENSOR3_DATA) & \ | |
(~BATT_DATA) & (~RESERVED_DATA)) | |
// MAC sniffing parameters | |
#define BLECOUNTER 0 // set to 0 if you do not want to install the BLE sniffer | |
#define WIFICOUNTER 0 // set to 0 if you do not want to install the WIFI sniffer | |
// BLE scan parameters | |
#define BLESCANTIME 0 // [seconds] scan duration, 0 means infinite [default], see note below | |
#define BLESCANWINDOW 80 // [milliseconds] scan window, see below, 3 .. 10240, default 80ms | |
#define BLESCANINTERVAL 80 // [illiseconds] scan interval, see below, 3 .. 10240, default 80ms = 100% duty cycle | |
/* Note: guide for setting bluetooth parameters | |
* | |
* |< Scan Window > |< Scan Window > | ... |< Scan Window > | | |
* |< Scan Interval >|< Scan Interval >| ... |< Scan Interval >| | |
* |< Scan duration >| | |
* | |
* Scan duration sets how long scanning should be going on, before starting a new scan cycle. 0 means infinite (default). | |
* Scan window sets how much of the interval should be occupied by scanning. Should be >= BLESCANINTERVAL. | |
* Scan interval is how long scanning should be done on each channel. BLE uses 3 channels for advertising. | |
* -> Adjust these values with power consumption in mind if power is limited. | |
* -> Scan interval can be changed during runtime by remote comammand. | |
*/ | |
// WiFi scan parameters | |
#define WIFI_CHANNEL_MIN 1 // start channel number where scan begings | |
#define WIFI_CHANNEL_MAX 13 // total channel number to scan | |
#define WIFI_MY_COUNTRY "EU" // select locale for Wifi RF settings | |
#define WIFI_CHANNEL_SWITCH_INTERVAL 50 // [seconds/100] -> 0,5 sec. | |
// LoRa payload default parameters | |
#define MEM_LOW 2048 // [Bytes] low memory threshold triggering a send cycle | |
#define RETRANSMIT_RCMD 5 // [seconds] wait time before retransmitting rcommand results | |
#define PAYLOAD_BUFFER_SIZE 51 // maximum size of payload block per transmit | |
#define PAYLOAD_OPENSENSEBOX 0 // send payload compatible to sensebox.de (swap geo position and pax data) | |
#define LORADRDEFAULT 5 // 0 .. 15, LoRaWAN datarate, according to regional LoRaWAN specs [default = 5] | |
#define LORATXPOWDEFAULT 14 // 0 .. 255, LoRaWAN TX power in dBm [default = 14] | |
#define MAXLORARETRY 500 // maximum count of TX retries if LoRa busy | |
#define SEND_QUEUE_SIZE 10 // maximum number of messages in payload send queue [1 = no queue] | |
// Hardware settings | |
#define RGBLUMINOSITY 30 // RGB LED luminosity [default = 30%] | |
#define DISPLAYREFRESH_MS 40 // OLED refresh cycle in ms [default = 40] -> 1000/40 = 25 frames per second | |
#define DISPLAYCONTRAST 80 // 0 .. 255, OLED display contrast [default = 80] | |
#define DISPLAYCYCLE 3 // Auto page flip delay in sec [default = 2] for devices without button | |
#define HOMECYCLE 30 // house keeping cycle in seconds [default = 30 secs] | |
// Settings for BME680 environmental sensor | |
#define BME_TEMP_OFFSET 5.0f // Offset sensor on chip temp <-> ambient temp [default = 5°C] | |
#define STATE_SAVE_PERIOD UINT32_C(360 * 60 * 1000) // update every 360 minutes = 4 times a day | |
#define BMECYCLE 1 // bme sensor read cycle in seconds [default = 1 secs] | |
// OTA settings | |
#define USE_OTA 0 // set to 0 to disable OTA update | |
#define WIFI_MAX_TRY 5 // maximum number of wifi connect attempts for OTA update [default = 20] | |
#define OTA_MAX_TRY 5 // maximum number of attempts for OTA download and write to flash [default = 3] | |
#define OTA_MIN_BATT 50 // minimum battery level for OTA [percent] | |
#define RESPONSE_TIMEOUT_MS 60000 // firmware binary server connection timeout [milliseconds] | |
// settings for syncing time of node with a time source (network / gps / rtc / timeserver) | |
#define TIME_SYNC_LORAWAN 1 // set to 1 to use LORA network as time source, 0 means off [default = 1] | |
#define TIME_SYNC_LORASERVER 0 // set to 1 to use LORA timeserver as time source, 0 means off [default = 0] | |
#define TIME_SYNC_INTERVAL 60 // sync time attempt each .. minutes from time source [default = 60], 0 means off | |
#define TIME_SYNC_INTERVAL_RETRY 10 // retry time sync after lost sync each .. minutes [default = 10], 0 means off | |
#define TIME_SYNC_SAMPLES 1 // number of time requests for averaging, max. 255 | |
#define TIME_SYNC_CYCLE 60 // delay between two time samples [seconds] | |
#define TIME_SYNC_TIMEOUT 400 // timeout waiting for timeserver answer [seconds] | |
#define TIME_SYNC_COMPILEDATE 0 // set to 1 to use compile date to initialize RTC after power outage [default = 0] | |
#define TIME_SYNC_TIMEZONE "CET-1CEST,M3.4.0/2,M10.4.0/3" // Timezone in POSIX format (example shows Germany/Berlin) | |
// Ports on which the device sends and listenes on LoRaWAN and SPI | |
#define COUNTERPORT 1 // counts | |
#define MACPORT 0 // network commands | |
#define RCMDPORT 2 // remote commands | |
#define STATUSPORT 2 // remote command results | |
#define CONFIGPORT 3 // config query results | |
#define GPSPORT 4 // gps - NOTE: set to 1 to send combined GPS+COUNTERPORT payload | |
#define BUTTONPORT 5 // button pressed signal | |
#define RESERVEDPORT 6 // reserved (unused) | |
#define BMEPORT 7 // BME680 sensor | |
#define BATTPORT 8 // battery voltage | |
#define TIMEPORT 9 // time query and response | |
#define SENSOR1PORT 10 // user sensor #1 | |
#define SENSOR2PORT 11 // user sensor #2 | |
#define SENSOR3PORT 12 // user sensor #3 | |
// Cayenne LPP Ports, see https://community.mydevices.com/t/cayenne-lpp-2-0/7510 | |
#define CAYENNE_LPP1 1 // dynamic sensor payload (LPP 1.0) | |
#define CAYENNE_LPP2 2 // packed sensor payload (LPP 2.0) | |
#define CAYENNE_GPS 3 // full scale GPS payload | |
#define CAYENNE_ACTUATOR 10 // actuator commands | |
#define CAYENNE_DEVICECONFIG 11 // device period configuration | |
#define CAYENNE_SENSORREAD 13 // sensor period configuration | |
#define CAYENNE_SENSORENABLE 14 // sensor enable configuration | |
// MQTT settings, only needed if MQTT is used (#define HAS_MQTT in board hal file) | |
#define MQTT_ETHERNET 1 // select PHY: set 0 for Wifi, 1 for ethernet (Wifi not yet implemented!) | |
#define MQTT_INTOPIC "paxin" | |
#define MQTT_OUTTOPIC "paxout" | |
#define MQTT_PORT 1883 | |
#define MQTT_SERVER "public.cloud.shiftr.io" | |
#define MQTT_USER "public" | |
#define MQTT_PASSWD "public" | |
#define MQTT_RETRYSEC 20 // retry reconnect every 20 seconds | |
#define MQTT_KEEPALIVE 10 // keep alive interval in seconds | |
//#define MQTT_CLIENTNAME "my_paxcounter" // generated by default |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment