From a1461be403a481a3db77eb1c2029e05104c51754 Mon Sep 17 00:00:00 2001 From: cyberman54 Date: Mon, 14 Feb 2022 21:34:19 +0100 Subject: [PATCH] make libpax count_payload_t varables local --- include/senddata.h | 2 -- src/display.cpp | 15 ++++++++------- src/ledmatrixdisplay.cpp | 15 ++++++++------- src/senddata.cpp | 35 ++++++++++++++++++++++------------- 4 files changed, 38 insertions(+), 29 deletions(-) diff --git a/include/senddata.h b/include/senddata.h index 3f269447..ff0a382b 100644 --- a/include/senddata.h +++ b/include/senddata.h @@ -9,8 +9,6 @@ #include "display.h" #include "sdcard.h" -extern struct count_payload_t count_from_libpax; - void SendPayload(uint8_t port); void sendData(void); void checkSendQueues(void); diff --git a/src/display.cpp b/src/display.cpp index 7fab780e..1cfff3e4 100644 --- a/src/display.cpp +++ b/src/display.cpp @@ -43,6 +43,7 @@ uint8_t DisplayIsOn = 0; uint8_t displaybuf[MY_DISPLAY_WIDTH * MY_DISPLAY_HEIGHT / 8] = {0}; static uint8_t plotbuf[MY_DISPLAY_WIDTH * MY_DISPLAY_HEIGHT / 8] = {0}; static int dp_row = 0, dp_col = 0, dp_font = 0; +static struct count_payload_t count; // libpax count storage hw_timer_t *displayIRQ = NULL; @@ -175,14 +176,14 @@ void dp_init(bool verbose) { void dp_refresh(bool nextPage) { // update counter values from libpax - libpax_counter_count(&count_from_libpax); + libpax_counter_count(&count); #ifndef HAS_BUTTON static uint32_t framecounter = 0; #endif // update histogram - dp_plotCurve(count_from_libpax.pax, false); + dp_plotCurve(count.pax, false); // if display is switched off we don't refresh it to relax cpu if (!DisplayIsOn && (DisplayIsOn == cfg.screenon)) @@ -240,7 +241,7 @@ void dp_drawPage(bool nextpage) { // display number of unique macs total Wifi + BLE if (DisplayPage < 5) { dp_setFont(MY_FONT_STRETCHED); - dp_printf("%-5d", count_from_libpax.pax); + dp_printf("%-5d", count.pax); } switch (DisplayPage) { @@ -264,21 +265,21 @@ void dp_drawPage(bool nextpage) { #if ((WIFICOUNTER) && (BLECOUNTER)) if (cfg.wifiscan) - dp_printf("WIFI:%-5d", count_from_libpax.wifi_count); + dp_printf("WIFI:%-5d", count.wifi_count); else dp_printf("WIFI:off"); if (cfg.blescan) - dp_printf("BLTH:%-5d", count_from_libpax.ble_count); + dp_printf("BLTH:%-5d", count.ble_count); else dp_printf(" BLTH:off"); #elif ((WIFICOUNTER) && (!BLECOUNTER)) if (cfg.wifiscan) - dp_printf("WIFI:%-5d", count_from_libpax.wifi_count); + dp_printf("WIFI:%-5d", count.wifi_count); else dp_printf("WIFI:off"); #elif ((!WIFICOUNTER) && (BLECOUNTER)) if (cfg.blescan) - dp_printf("BLTH:%-5d", count_from_libpax.ble_count); + dp_printf("BLTH:%-5d", count.ble_count); dp_printf("BLTH:off"); #else dp_printf("Sniffer disabled"); diff --git a/src/ledmatrixdisplay.cpp b/src/ledmatrixdisplay.cpp index e6b1d070..8940d6ec 100644 --- a/src/ledmatrixdisplay.cpp +++ b/src/ledmatrixdisplay.cpp @@ -13,6 +13,7 @@ uint8_t MatrixDisplayIsOn = 0; static uint8_t displaybuf[LED_MATRIX_WIDTH * LED_MATRIX_HEIGHT / 8] = {0}; static unsigned long ulLastNumMacs = 0; static time_t ulLastTime = time(NULL); +static struct count_payload_t count; // libpax count storage hw_timer_t *matrixDisplayIRQ = NULL; @@ -76,12 +77,12 @@ void refreshTheMatrixDisplay(bool nextPage) { case 0: // update counter values from libpax - libpax_counter_count(&count_from_libpax); + libpax_counter_count(&count); if (cfg.countermode == 1) { // cumulative counter mode -> display total number of pax - if (ulLastNumMacs != count_from_libpax.pax) { - ulLastNumMacs = count_from_libpax.pax; + if (ulLastNumMacs != count.pax) { + ulLastNumMacs = count.pax; matrix.clear(); DrawNumber(String(ulLastNumMacs)); } @@ -89,10 +90,10 @@ void refreshTheMatrixDisplay(bool nextPage) { else { // cyclic counter mode -> plot a line diagram - if (ulLastNumMacs != count_from_libpax.pax) { + if (ulLastNumMacs != count.pax) { // next count cycle? - if (count_from_libpax.pax == 0) { + if (count.pax == 0) { // matrix full? then scroll left 1 dot, else increment column if (col < (LED_MATRIX_WIDTH - 1)) @@ -104,7 +105,7 @@ void refreshTheMatrixDisplay(bool nextPage) { matrix.drawPoint(col, row, 0); // clear current dot // scale and set new dot - ulLastNumMacs = count_from_libpax.pax; + ulLastNumMacs = count.pax; level = ulLastNumMacs / LINE_DIAGRAM_DIVIDER; row = level <= LED_MATRIX_HEIGHT ? LED_MATRIX_HEIGHT - 1 - level % LED_MATRIX_HEIGHT @@ -120,7 +121,7 @@ void refreshTheMatrixDisplay(bool nextPage) { if (ulLastTime != t) { ulLastTime = t; matrix.clear(); - //DrawNumber(myTZ.dateTime("H:i:s").c_str()); + // DrawNumber(myTZ.dateTime("H:i:s").c_str()); } break; diff --git a/src/senddata.cpp b/src/senddata.cpp index bca6e235..fedee7da 100644 --- a/src/senddata.cpp +++ b/src/senddata.cpp @@ -74,16 +74,19 @@ void sendData() { uint8_t bitmask = cfg.payloadmask; uint8_t mask = 1; + #if (HAS_GPS) gpsStatus_t gps_status; #endif #if (HAS_SDS011) sdsStatus_t sds_status; #endif - - ESP_LOGD(TAG, "Sending count results: pax=%d / wifi=%d / ble=%d", - count_from_libpax.pax, count_from_libpax.wifi_count, - count_from_libpax.ble_count); +#if ((WIFICOUNTER) || (BLECOUNTER)) + struct count_payload_t count = + count_from_libpax; // copy values from global libpax var + ESP_LOGD(TAG, "Sending count results: pax=%d / wifi=%d / ble=%d", count.pax, + count.wifi_count, count.ble_count); +#endif while (bitmask) { switch (bitmask & mask) { @@ -91,12 +94,14 @@ void sendData() { #if ((WIFICOUNTER) || (BLECOUNTER)) case COUNT_DATA: payload.reset(); + #if !(PAYLOAD_OPENSENSEBOX) - payload.addCount(count_from_libpax.wifi_count, MAC_SNIFF_WIFI); + payload.addCount(count.wifi_count, MAC_SNIFF_WIFI); if (cfg.blescan) { - payload.addCount(count_from_libpax.ble_count, MAC_SNIFF_BLE); + payload.addCount(count.ble_count, MAC_SNIFF_BLE); } #endif + #if (HAS_GPS) if (GPSPORT == COUNTERPORT) { // send GPS position only if we have a fix @@ -107,22 +112,24 @@ void sendData() { ESP_LOGD(TAG, "No valid GPS position"); } #endif + #if (PAYLOAD_OPENSENSEBOX) - payload.addCount(count_from_libpax.wifi_count, MAC_SNIFF_WIFI); + payload.addCount(count.wifi_count, MAC_SNIFF_WIFI); if (cfg.blescan) { - payload.addCount(count_from_libpax.ble_count, MAC_SNIFF_BLE); + payload.addCount(count.ble_count, MAC_SNIFF_BLE); #endif + #if (HAS_SDS011) sds011_store(&sds_status); payload.addSDS(sds_status); #endif - SendPayload(COUNTERPORT); + #ifdef HAS_DISPLAY - dp_plotCurve(count_from_libpax.pax, true); + dp_plotCurve(count.pax, true); #endif + #if (HAS_SDCARD) - sdcardWriteData(count_from_libpax.wifi_count, - count_from_libpax.ble_count + sdcardWriteData(count.wifi_count, count.ble_count #if (defined BAT_MEASURE_ADC || defined HAS_PMU) , read_voltage() @@ -130,8 +137,10 @@ void sendData() { ); #endif // HAS_SDCARD + SendPayload(COUNTERPORT); break; // case COUNTDATA -#endif + +#endif // ((WIFICOUNTER) || (BLECOUNTER)) #if (HAS_BME) case MEMS_DATA: