jomjol / AI-on-the-edge-device

Easy to use device for connecting "old" measuring units (water, power, gas, ...) to the digital world
https://jomjol.github.io/AI-on-the-edge-device-docs/
5.68k stars 614 forks source link

Add threshold for neg rate suppression #2447

Open caco3 opened 1 year ago

caco3 commented 1 year ago

The Feature

Despite using dig-class100_0160_s2_q and ana-class100_0169_s1_q I get sporadic neg. Rate errors. Looking on them, they are always minimal, eg. Neg. Rate - Read: - Raw: 566.8738 - Pre: 566.8739.

What speaks against adding a threshold parameter where I can say "ignore any negative rate up to 0.0001"?

Also my gas meter sporadically throws this issue (also dig-class100_0160_s2_q): Neg. Rate - Read: - Raw: 07692.05 - Pre: 7692.06.

@haverland In one of the discussions you said this should not be an issue with the right model, but I can't find the discussion anymore.

haverland commented 1 year ago

Mhh. If you use ExtendedResolution it should set the PRE-Value as RAW value. Look at: https://github.com/jomjol/AI-on-the-edge-device/blob/697ff4c4b69bc7c8b01c60a185fc1e1cd132155f/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp#L875

caco3 commented 1 year ago

Hmm, I also had this issue with enabled ExtendedResolution. And I disabled it to see if it makes it better. I will now try again with enabled ExtendedResolution.

With extended resolution = false the difference must be > 1. Should normally not occur.

haverland commented 1 year ago

Now the debug should help to find the bug. LogLevel = DEBUG. preToll is the tolerance of 0.2 on the last digit.

value >= preValue - preToll should not show an error.

caco3 commented 1 year ago

Thanks, I will give it a go.

caco3 commented 1 year ago

As of now it looks like the algorithm works as expected:

Log Summary

Round 556

[0d18h31m41s] 2023-06-02T16:53:12   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d18h31m41s] 2023-06-02T16:53:12   <INF>   [POSTPROC] main: Raw: 567.49447, Value: 567.49447, Status: no error

Round 557

[0d18h33m41s] 2023-06-02T16:55:12   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d18h33m41s] 2023-06-02T16:55:12   <DBG>   [POSTPROC] Neg: value=567.494460, preValue=567.494470, preToll=567.494450
[0d18h33m41s] 2023-06-02T16:55:12   <INF>   [POSTPROC] main: Raw: 567.49446, Value: 567.49447, Status: no error

Round 558

[0d18h35m41s] 2023-06-02T16:57:12   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d18h35m41s] 2023-06-02T16:57:12   <DBG>   [POSTPROC] Neg: value=567.494450, preValue=567.494470, preToll=567.494450
[0d18h35m41s] 2023-06-02T16:57:12   <INF>   [POSTPROC] main: Raw: 567.49445, Value: 567.49447, Status: no error

Round 559

[0d18h37m41s] 2023-06-02T16:59:12   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d18h37m41s] 2023-06-02T16:59:12   <INF>   [POSTPROC] main: Raw: 567.49487, Value: 567.49487, Status: no error

Full Log

[0d18h30m51s] 2023-06-02T16:52:21   <INF>   [MAINCTRL] Round #556 started
[0d18h30m51s] 2023-06-02T16:52:21   <DBG>   [FLOWCTRL] Status: Take Image (16:52:21)
[0d18h30m51s] 2023-06-02T16:52:21   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Take Image (msg_id=11632)
[0d18h30m51s] 2023-06-02T16:52:21   <DBG>   [PSRAM] Init shared memory for step 'Take Image' (STBI buffers)
[0d18h30m58s] 2023-06-02T16:52:28   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h30m58s] 2023-06-02T16:52:28   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h30m58s] 2023-06-02T16:52:28   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h30m58s] 2023-06-02T16:52:28   <DBG>   [PSRAM] Allocating memory (307215 bytes) for STBI (use shared memory in PSRAM)...
[0d18h30m58s] 2023-06-02T16:52:28   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d18h30m58s] 2023-06-02T16:52:28   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d18h30m58s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h30m58s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h30m58s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h30m58s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Allocating memory (921601 bytes) for STBI (use shared memory in PSRAM)...
[0d18h30m59s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h30m59s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h30m59s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h30m59s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h30m59s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h30m59s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h30m59s] 2023-06-02T16:52:29   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m01s] 2023-06-02T16:52:32   <DBG>   [C IMG BASIS] Not freeing (zwImage as there was never PSRAM allocated for it)
[0d18h31m01s] 2023-06-02T16:52:32   <DBG>   [PSRAM] Deinit shared memory for step 'Take Image' (STBI buffers)
[0d18h31m01s] 2023-06-02T16:52:32   <DBG>   [FLOWCTRL] Status: Aligning (16:52:32)
[0d18h31m01s] 2023-06-02T16:52:32   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Aligning (msg_id=11633)
[0d18h31m02s] 2023-06-02T16:52:33   <DBG>   [PSRAM] Allocating tmpImage (921600 bytes, use shared memory in PSRAM)...
[0d18h31m04s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h31m04s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m04s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h31m04s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Allocated 3087 bytes in PSRAM for 'STBI'
[0d18h31m04s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d18h31m04s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Allocated 6322 bytes in PSRAM for 'STBI'
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m05s] 2023-06-02T16:52:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m11s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m11s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h31m11s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m11s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h31m11s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Allocated 2319 bytes in PSRAM for 'STBI'
[0d18h31m11s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d18h31m11s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d18h31m11s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h31m11s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h31m12s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h31m12s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Allocated 6064 bytes in PSRAM for 'STBI'
[0d18h31m12s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m12s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m12s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m12s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m12s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m12s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m12s] 2023-06-02T16:52:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m18s] 2023-06-02T16:52:48   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h31m24s] 2023-06-02T16:52:54   <DBG>   [PSRAM] Shared memory used for tmpImage (PSRAM, part of shared memory) is free again
[0d18h31m24s] 2023-06-02T16:52:54   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (16:52:54)
[0d18h31m24s] 2023-06-02T16:52:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=11634)
[0d18h31m24s] 2023-06-02T16:52:55   <DBG>   [CNN] doFlow after alignment
[0d18h31m24s] 2023-06-02T16:52:55   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d18h31m24s] 2023-06-02T16:52:55   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d18h31m24s] 2023-06-02T16:52:55   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/dig-class100_0160_s2_q.tflite
[0d18h31m24s] 2023-06-02T16:52:55   <DBG>   [TFLITE] Loading Model /sdcard/config/dig-class100_0160_s2_q.tflite /size: 226480 bytes...
[0d18h31m24s] 2023-06-02T16:52:55   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d18h31m25s] 2023-06-02T16:52:55   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d18h31m25s] 2023-06-02T16:52:55   <DBG>   [CNN] Processing Number 'main'
[0d18h31m25s] 2023-06-02T16:52:55   <DBG>   [CNN] ROI #0 - TfLite
[0d18h31m25s] 2023-06-02T16:52:55   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h31m26s] 2023-06-02T16:52:56   <DBG>   [CNN] ROI #1 - TfLite
[0d18h31m26s] 2023-06-02T16:52:56   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h31m27s] 2023-06-02T16:52:57   <DBG>   [CNN] ROI #2 - TfLite
[0d18h31m27s] 2023-06-02T16:52:57   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h31m28s] 2023-06-02T16:52:58   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d18h31m28s] 2023-06-02T16:52:58   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (16:52:58)
[0d18h31m28s] 2023-06-02T16:52:58   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=11635)
[0d18h31m28s] 2023-06-02T16:52:59   <DBG>   [CNN] doFlow after alignment
[0d18h31m28s] 2023-06-02T16:52:59   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d18h31m28s] 2023-06-02T16:52:59   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d18h31m28s] 2023-06-02T16:52:59   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/ana-class100_0169_s1_q.tflite
[0d18h31m28s] 2023-06-02T16:52:59   <DBG>   [TFLITE] Loading Model /sdcard/config/ana-class100_0169_s1_q.tflite /size: 133784 bytes...
[0d18h31m28s] 2023-06-02T16:52:59   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d18h31m29s] 2023-06-02T16:52:59   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d18h31m29s] 2023-06-02T16:52:59   <DBG>   [CNN] Processing Number 'main'
[0d18h31m29s] 2023-06-02T16:52:59   <DBG>   [CNN] ROI #0 - TfLite
[0d18h31m29s] 2023-06-02T16:52:59   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h31m32s] 2023-06-02T16:53:02   <DBG>   [CNN] ROI #1 - TfLite
[0d18h31m32s] 2023-06-02T16:53:02   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h31m35s] 2023-06-02T16:53:05   <DBG>   [CNN] ROI #2 - TfLite
[0d18h31m35s] 2023-06-02T16:53:05   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h31m38s] 2023-06-02T16:53:08   <DBG>   [CNN] ROI #3 - TfLite
[0d18h31m38s] 2023-06-02T16:53:08   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h31m40s] 2023-06-02T16:53:11   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d18h31m40s] 2023-06-02T16:53:11   <DBG>   [FLOWCTRL] Status: Post-Processing (16:53:11)
[0d18h31m40s] 2023-06-02T16:53:11   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Post-Processing (msg_id=11636)
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=1, prev=-1
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] PointerEvalAnalogNew - No predecessor - Result = 4 number: 4.700000 numeral_preceder = -1 Analog_error = 3
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] PointerEvalAnalogNew - number unambiguous, no correction necessary - result = 4 number: 4.400000 numeral_preceder = 4 Analog_error = 3
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] PointerEvalAnalogNew - number unambiguous, no correction necessary - result = 9 number: 9.500000 numeral_preceder = 4 Analog_error = 3
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, downward correction - result = 4 number: 4.900000 numeral_preceder = 9 Analog_error = 3
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=0, prev=4
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] PointerEvalAnalogToDigitNew - NO digital Uncertainty - Result = 7 number: 7.400000 numeral_preceder = 4.900000
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] PointerEvalHybridNew - Analog predecessor, evaluation over PointerEvalAnalogNew = 7 number: 7.400000 number_of_predecessors = 4.900000 eval_predecessors = 4 Digital_Uncertainty = 0.200000
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] getReadout(dig100)  prev=7
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 6 number: 6.000000 number_of_predecessors = 7.400000 eval_predecessors = 7 Digital_Uncertainty = 0.200000
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 6
[0d18h31m41s] 2023-06-02T16:53:11   <DBG>   [CNN] getReadout#result= 67
[0d18h31m41s] 2023-06-02T16:53:12   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 5 number: 5.000000 number_of_predecessors = 6.000000 eval_predecessors = 6 Digital_Uncertainty = 0.200000
[0d18h31m41s] 2023-06-02T16:53:12   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 5
[0d18h31m41s] 2023-06-02T16:53:12   <DBG>   [CNN] getReadout#result= 567
[0d18h31m41s] 2023-06-02T16:53:12   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d18h31m41s] 2023-06-02T16:53:12   <INF>   [POSTPROC] main: Raw: 567.49447, Value: 567.49447, Status: no error
[0d18h31m41s] 2023-06-02T16:53:12   <DBG>   [FLOWCTRL] Status: Sending MQTT (16:53:12)
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Sending MQTT (msg_id=11637)
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT SERVER] Publishing System MQTT topics...
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/connection, content: connected (msg_id=11638)
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/uptime, content: 66702 (msg_id=11639)
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/freeMem, content: 673215 (msg_id=11640)
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/wifiRSSI, content: -77 (msg_id=11641)
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/CPUtemp, content: 70 (msg_id=11642)
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT SERVER] Successfully published all System MQTT topics
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT SERVER] Int. Heap Usage before publishing System Topics: 87767, after: 87767, delta: 0, lowest free: 73563
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT] Publishing MQTT topics...
[0d18h31m42s] 2023-06-02T16:53:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/value, content: 567.49447 (msg_id=11643)
[0d18h31m42s] 2023-06-02T16:53:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/error, content: no error (msg_id=11644)
[0d18h31m42s] 2023-06-02T16:53:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate, content: 0.002055 (msg_id=11645)
[0d18h31m42s] 2023-06-02T16:53:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_time_unit, content: 0.123300 (msg_id=11646)
[0d18h31m42s] 2023-06-02T16:53:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/changeabsolut, content: 0.00411 (msg_id=11647)
[0d18h31m42s] 2023-06-02T16:53:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_digitalization_round, content: 0.00411 (msg_id=11648)
[0d18h31m42s] 2023-06-02T16:53:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/raw, content: 567.49447 (msg_id=11649)
[0d18h31m42s] 2023-06-02T16:53:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/timestamp, content: 2023-06-02T16:52:32+0200 (msg_id=11650)
[0d18h31m42s] 2023-06-02T16:53:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/json, content:   {     "value": "567.49447",     "raw": "567.49447",     "pre": "567.49447",   .. (msg_id=11651)
[0d18h31m42s] 2023-06-02T16:53:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Flow finished (msg_id=11652)
[0d18h31m43s] 2023-06-02T16:53:13   <INF>   [MAINCTRL] Round #556 completed (52 seconds)
[0d18h31m43s] 2023-06-02T16:53:13   <DBG>   [MAINCTRL] CPU Temperature: 53°C
[0d18h31m43s] 2023-06-02T16:53:13   <DBG>   [MAINCTRL] WIFI Signal (RSSI): -79dBm
[0d18h31m43s] 2023-06-02T16:53:13   <DBG>   [WIFI] Roaming: Start scan of all channels for SSID RW IoT
[0d18h31m46s] 2023-06-02T16:53:16   <DBG>   [WIFI] Roaming: Current AP BSSID=e6:63:da:74:95:5e
[0d18h31m46s] 2023-06-02T16:53:16   <DBG>   [WIFI] Roaming: Scan completed, APs found with configured SSID: 1
[0d18h31m46s] 2023-06-02T16:53:16   <DBG>   [WIFI] Roaming: 1: SSID=RW IoT, BSSID=e6:63:da:74:95:5e, RSSI=-79, CH=6, AUTH=WPA2 PSK
[0d18h31m46s] 2023-06-02T16:53:16   <DBG>   [WIFI] Roaming: Scan completed, stay on current AP
[0d18h32m51s] 2023-06-02T16:54:21   <DBG>   [MAINCTRL] ----------------------------------------------------------------
[0d18h32m51s] 2023-06-02T16:54:21   <INF>   [MAINCTRL] Round #557 started
[0d18h32m51s] 2023-06-02T16:54:21   <DBG>   [FLOWCTRL] Status: Take Image (16:54:21)
[0d18h32m51s] 2023-06-02T16:54:21   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Take Image (msg_id=11653)
[0d18h32m51s] 2023-06-02T16:54:21   <DBG>   [PSRAM] Init shared memory for step 'Take Image' (STBI buffers)
[0d18h32m58s] 2023-06-02T16:54:28   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h32m58s] 2023-06-02T16:54:28   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h32m58s] 2023-06-02T16:54:28   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h32m58s] 2023-06-02T16:54:28   <DBG>   [PSRAM] Allocating memory (307215 bytes) for STBI (use shared memory in PSRAM)...
[0d18h32m58s] 2023-06-02T16:54:28   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d18h32m58s] 2023-06-02T16:54:28   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d18h32m58s] 2023-06-02T16:54:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h32m58s] 2023-06-02T16:54:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h32m58s] 2023-06-02T16:54:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h32m58s] 2023-06-02T16:54:29   <DBG>   [PSRAM] Allocating memory (921601 bytes) for STBI (use shared memory in PSRAM)...
[0d18h32m59s] 2023-06-02T16:54:29   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h32m59s] 2023-06-02T16:54:29   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h32m59s] 2023-06-02T16:54:29   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h32m59s] 2023-06-02T16:54:29   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h32m59s] 2023-06-02T16:54:29   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h32m59s] 2023-06-02T16:54:30   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h32m59s] 2023-06-02T16:54:30   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m01s] 2023-06-02T16:54:32   <DBG>   [C IMG BASIS] Not freeing (zwImage as there was never PSRAM allocated for it)
[0d18h33m01s] 2023-06-02T16:54:32   <DBG>   [PSRAM] Deinit shared memory for step 'Take Image' (STBI buffers)
[0d18h33m01s] 2023-06-02T16:54:32   <DBG>   [FLOWCTRL] Status: Aligning (16:54:32)
[0d18h33m02s] 2023-06-02T16:54:32   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Aligning (msg_id=11654)
[0d18h33m02s] 2023-06-02T16:54:33   <DBG>   [PSRAM] Allocating tmpImage (921600 bytes, use shared memory in PSRAM)...
[0d18h33m04s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h33m04s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m04s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Allocated 3087 bytes in PSRAM for 'STBI'
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Allocated 6322 bytes in PSRAM for 'STBI'
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m05s] 2023-06-02T16:54:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m11s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m11s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h33m11s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m11s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h33m11s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Allocated 2319 bytes in PSRAM for 'STBI'
[0d18h33m11s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d18h33m11s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d18h33m11s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h33m11s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h33m12s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h33m12s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Allocated 6064 bytes in PSRAM for 'STBI'
[0d18h33m12s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m12s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m12s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m12s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m12s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m12s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m12s] 2023-06-02T16:54:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m18s] 2023-06-02T16:54:48   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h33m24s] 2023-06-02T16:54:54   <DBG>   [PSRAM] Shared memory used for tmpImage (PSRAM, part of shared memory) is free again
[0d18h33m24s] 2023-06-02T16:54:54   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (16:54:54)
[0d18h33m24s] 2023-06-02T16:54:54   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=11655)
[0d18h33m24s] 2023-06-02T16:54:55   <DBG>   [CNN] doFlow after alignment
[0d18h33m24s] 2023-06-02T16:54:55   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d18h33m24s] 2023-06-02T16:54:55   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d18h33m24s] 2023-06-02T16:54:55   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/dig-class100_0160_s2_q.tflite
[0d18h33m24s] 2023-06-02T16:54:55   <DBG>   [TFLITE] Loading Model /sdcard/config/dig-class100_0160_s2_q.tflite /size: 226480 bytes...
[0d18h33m24s] 2023-06-02T16:54:55   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d18h33m25s] 2023-06-02T16:54:55   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d18h33m25s] 2023-06-02T16:54:55   <DBG>   [CNN] Processing Number 'main'
[0d18h33m25s] 2023-06-02T16:54:55   <DBG>   [CNN] ROI #0 - TfLite
[0d18h33m25s] 2023-06-02T16:54:55   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h33m26s] 2023-06-02T16:54:56   <DBG>   [CNN] ROI #1 - TfLite
[0d18h33m26s] 2023-06-02T16:54:56   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h33m27s] 2023-06-02T16:54:57   <DBG>   [CNN] ROI #2 - TfLite
[0d18h33m27s] 2023-06-02T16:54:57   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h33m28s] 2023-06-02T16:54:58   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d18h33m28s] 2023-06-02T16:54:58   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (16:54:58)
[0d18h33m28s] 2023-06-02T16:54:58   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=11656)
[0d18h33m28s] 2023-06-02T16:54:59   <DBG>   [CNN] doFlow after alignment
[0d18h33m28s] 2023-06-02T16:54:59   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d18h33m28s] 2023-06-02T16:54:59   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d18h33m28s] 2023-06-02T16:54:59   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/ana-class100_0169_s1_q.tflite
[0d18h33m28s] 2023-06-02T16:54:59   <DBG>   [TFLITE] Loading Model /sdcard/config/ana-class100_0169_s1_q.tflite /size: 133784 bytes...
[0d18h33m28s] 2023-06-02T16:54:59   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d18h33m29s] 2023-06-02T16:54:59   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d18h33m29s] 2023-06-02T16:54:59   <DBG>   [CNN] Processing Number 'main'
[0d18h33m29s] 2023-06-02T16:54:59   <DBG>   [CNN] ROI #0 - TfLite
[0d18h33m29s] 2023-06-02T16:54:59   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h33m32s] 2023-06-02T16:55:02   <DBG>   [CNN] ROI #1 - TfLite
[0d18h33m32s] 2023-06-02T16:55:02   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h33m34s] 2023-06-02T16:55:05   <DBG>   [CNN] ROI #2 - TfLite
[0d18h33m34s] 2023-06-02T16:55:05   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h33m37s] 2023-06-02T16:55:08   <DBG>   [CNN] ROI #3 - TfLite
[0d18h33m37s] 2023-06-02T16:55:08   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h33m40s] 2023-06-02T16:55:11   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d18h33m40s] 2023-06-02T16:55:11   <DBG>   [FLOWCTRL] Status: Post-Processing (16:55:11)
[0d18h33m40s] 2023-06-02T16:55:11   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Post-Processing (msg_id=11657)
[0d18h33m40s] 2023-06-02T16:55:11   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=1, prev=-1
[0d18h33m40s] 2023-06-02T16:55:11   <DBG>   [CNN] PointerEvalAnalogNew - No predecessor - Result = 4 number: 4.600000 numeral_preceder = -1 Analog_error = 3
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] PointerEvalAnalogNew - number unambiguous, no correction necessary - result = 4 number: 4.400000 numeral_preceder = 4 Analog_error = 3
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] PointerEvalAnalogNew - number unambiguous, no correction necessary - result = 9 number: 9.500000 numeral_preceder = 4 Analog_error = 3
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, downward correction - result = 4 number: 4.900000 numeral_preceder = 9 Analog_error = 3
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=0, prev=4
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] PointerEvalAnalogToDigitNew - NO digital Uncertainty - Result = 7 number: 7.400000 numeral_preceder = 4.900000
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] PointerEvalHybridNew - Analog predecessor, evaluation over PointerEvalAnalogNew = 7 number: 7.400000 number_of_predecessors = 4.900000 eval_predecessors = 4 Digital_Uncertainty = 0.200000
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] getReadout(dig100)  prev=7
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 6 number: 6.000000 number_of_predecessors = 7.400000 eval_predecessors = 7 Digital_Uncertainty = 0.200000
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 6
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] getReadout#result= 67
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 5 number: 5.000000 number_of_predecessors = 6.000000 eval_predecessors = 6 Digital_Uncertainty = 0.200000
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 5
[0d18h33m41s] 2023-06-02T16:55:11   <DBG>   [CNN] getReadout#result= 567
[0d18h33m41s] 2023-06-02T16:55:12   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d18h33m41s] 2023-06-02T16:55:12   <DBG>   [POSTPROC] Neg: value=567.494460, preValue=567.494470, preToll=567.494450
[0d18h33m41s] 2023-06-02T16:55:12   <INF>   [POSTPROC] main: Raw: 567.49446, Value: 567.49447, Status: no error
[0d18h33m41s] 2023-06-02T16:55:12   <DBG>   [FLOWCTRL] Status: Sending MQTT (16:55:12)
[0d18h33m41s] 2023-06-02T16:55:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Sending MQTT (msg_id=11658)
[0d18h33m41s] 2023-06-02T16:55:12   <DBG>   [MQTT SERVER] Publishing System MQTT topics...
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/connection, content: connected (msg_id=11659)
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/uptime, content: 66822 (msg_id=11660)
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/freeMem, content: 673591 (msg_id=11661)
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/wifiRSSI, content: -74 (msg_id=11662)
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/CPUtemp, content: 70 (msg_id=11663)
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT SERVER] Successfully published all System MQTT topics
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT SERVER] Int. Heap Usage before publishing System Topics: 88199, after: 88199, delta: 0, lowest free: 73563
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT] Publishing MQTT topics...
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/value, content: 567.49447 (msg_id=11664)
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/error, content: no error (msg_id=11665)
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate, content: 0.000000 (msg_id=11666)
[0d18h33m42s] 2023-06-02T16:55:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_time_unit, content: 0.000000 (msg_id=11667)
[0d18h33m42s] 2023-06-02T16:55:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/changeabsolut, content: 0.00000 (msg_id=11668)
[0d18h33m42s] 2023-06-02T16:55:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_digitalization_round, content: 0.00000 (msg_id=11669)
[0d18h33m42s] 2023-06-02T16:55:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/raw, content: 567.49446 (msg_id=11670)
[0d18h33m42s] 2023-06-02T16:55:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/timestamp, content: 2023-06-02T16:54:32+0200 (msg_id=11671)
[0d18h33m42s] 2023-06-02T16:55:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/json, content:   {     "value": "567.49447",     "raw": "567.49446",     "pre": "567.49447",   .. (msg_id=11672)
[0d18h33m42s] 2023-06-02T16:55:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Flow finished (msg_id=11673)
[0d18h33m42s] 2023-06-02T16:55:13   <INF>   [MAINCTRL] Round #557 completed (51 seconds)
[0d18h33m42s] 2023-06-02T16:55:13   <DBG>   [MAINCTRL] CPU Temperature: 70°C
[0d18h33m42s] 2023-06-02T16:55:13   <DBG>   [MAINCTRL] WIFI Signal (RSSI): -76dBm
[0d18h33m43s] 2023-06-02T16:55:13   <DBG>   [WIFI] Roaming: Start scan of all channels for SSID RW IoT
[0d18h33m45s] 2023-06-02T16:55:16   <DBG>   [WIFI] Roaming: Current AP BSSID=e6:63:da:74:95:5e
[0d18h33m46s] 2023-06-02T16:55:16   <DBG>   [WIFI] Roaming: Scan completed, APs found with configured SSID: 2
[0d18h33m46s] 2023-06-02T16:55:16   <DBG>   [WIFI] Roaming: 1: SSID=RW IoT, BSSID=e6:63:da:74:95:5e, RSSI=-76, CH=6, AUTH=WPA2 PSK
[0d18h33m46s] 2023-06-02T16:55:16   <DBG>   [WIFI] Roaming: 2: SSID=RW IoT, BSSID=7a:83:c2:b1:8d:5e, RSSI=-88, CH=6, AUTH=WPA2 PSK
[0d18h33m46s] 2023-06-02T16:55:16   <DBG>   [WIFI] Roaming: Scan completed, stay on current AP
[0d18h34m51s] 2023-06-02T16:56:21   <DBG>   [MAINCTRL] ----------------------------------------------------------------
[0d18h34m51s] 2023-06-02T16:56:21   <INF>   [MAINCTRL] Round #558 started
[0d18h34m51s] 2023-06-02T16:56:21   <DBG>   [FLOWCTRL] Status: Take Image (16:56:21)
[0d18h34m51s] 2023-06-02T16:56:21   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Take Image (msg_id=11674)
[0d18h34m51s] 2023-06-02T16:56:21   <DBG>   [PSRAM] Init shared memory for step 'Take Image' (STBI buffers)
[0d18h34m58s] 2023-06-02T16:56:28   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h34m58s] 2023-06-02T16:56:28   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h34m58s] 2023-06-02T16:56:28   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h34m58s] 2023-06-02T16:56:28   <DBG>   [PSRAM] Allocating memory (307215 bytes) for STBI (use shared memory in PSRAM)...
[0d18h34m58s] 2023-06-02T16:56:28   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d18h34m58s] 2023-06-02T16:56:28   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d18h34m58s] 2023-06-02T16:56:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h34m58s] 2023-06-02T16:56:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h34m58s] 2023-06-02T16:56:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h34m58s] 2023-06-02T16:56:29   <DBG>   [PSRAM] Allocating memory (921601 bytes) for STBI (use shared memory in PSRAM)...
[0d18h34m59s] 2023-06-02T16:56:29   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h34m59s] 2023-06-02T16:56:29   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h34m59s] 2023-06-02T16:56:29   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h34m59s] 2023-06-02T16:56:29   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h34m59s] 2023-06-02T16:56:30   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h34m59s] 2023-06-02T16:56:30   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h34m59s] 2023-06-02T16:56:30   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m01s] 2023-06-02T16:56:32   <DBG>   [C IMG BASIS] Not freeing (zwImage as there was never PSRAM allocated for it)
[0d18h35m01s] 2023-06-02T16:56:32   <DBG>   [PSRAM] Deinit shared memory for step 'Take Image' (STBI buffers)
[0d18h35m01s] 2023-06-02T16:56:32   <DBG>   [FLOWCTRL] Status: Aligning (16:56:32)
[0d18h35m01s] 2023-06-02T16:56:32   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Aligning (msg_id=11675)
[0d18h35m02s] 2023-06-02T16:56:33   <DBG>   [PSRAM] Allocating tmpImage (921600 bytes, use shared memory in PSRAM)...
[0d18h35m04s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h35m04s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Allocated 3087 bytes in PSRAM for 'STBI'
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [MAIN SERVER] info_get_handler
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Allocated 6322 bytes in PSRAM for 'STBI'
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m05s] 2023-06-02T16:56:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m05s] 2023-06-02T16:56:36   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m05s] 2023-06-02T16:56:36   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m05s] 2023-06-02T16:56:36   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m11s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m11s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h35m11s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m11s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h35m11s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Allocated 2319 bytes in PSRAM for 'STBI'
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Allocated 6064 bytes in PSRAM for 'STBI'
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m12s] 2023-06-02T16:56:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m18s] 2023-06-02T16:56:48   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h35m24s] 2023-06-02T16:56:55   <DBG>   [PSRAM] Shared memory used for tmpImage (PSRAM, part of shared memory) is free again
[0d18h35m24s] 2023-06-02T16:56:55   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (16:56:55)
[0d18h35m24s] 2023-06-02T16:56:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=11676)
[0d18h35m24s] 2023-06-02T16:56:55   <DBG>   [CNN] doFlow after alignment
[0d18h35m24s] 2023-06-02T16:56:55   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d18h35m24s] 2023-06-02T16:56:55   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d18h35m24s] 2023-06-02T16:56:55   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/dig-class100_0160_s2_q.tflite
[0d18h35m25s] 2023-06-02T16:56:55   <DBG>   [TFLITE] Loading Model /sdcard/config/dig-class100_0160_s2_q.tflite /size: 226480 bytes...
[0d18h35m25s] 2023-06-02T16:56:55   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d18h35m25s] 2023-06-02T16:56:55   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d18h35m25s] 2023-06-02T16:56:55   <DBG>   [CNN] Processing Number 'main'
[0d18h35m25s] 2023-06-02T16:56:56   <DBG>   [CNN] ROI #0 - TfLite
[0d18h35m25s] 2023-06-02T16:56:56   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h35m26s] 2023-06-02T16:56:56   <DBG>   [CNN] ROI #1 - TfLite
[0d18h35m26s] 2023-06-02T16:56:56   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h35m27s] 2023-06-02T16:56:57   <DBG>   [CNN] ROI #2 - TfLite
[0d18h35m27s] 2023-06-02T16:56:57   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h35m28s] 2023-06-02T16:56:58   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d18h35m28s] 2023-06-02T16:56:58   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (16:56:58)
[0d18h35m28s] 2023-06-02T16:56:58   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=11677)
[0d18h35m28s] 2023-06-02T16:56:59   <DBG>   [CNN] doFlow after alignment
[0d18h35m28s] 2023-06-02T16:56:59   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d18h35m28s] 2023-06-02T16:56:59   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d18h35m28s] 2023-06-02T16:56:59   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/ana-class100_0169_s1_q.tflite
[0d18h35m29s] 2023-06-02T16:56:59   <DBG>   [TFLITE] Loading Model /sdcard/config/ana-class100_0169_s1_q.tflite /size: 133784 bytes...
[0d18h35m29s] 2023-06-02T16:56:59   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d18h35m29s] 2023-06-02T16:56:59   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d18h35m29s] 2023-06-02T16:56:59   <DBG>   [CNN] Processing Number 'main'
[0d18h35m29s] 2023-06-02T16:56:59   <DBG>   [CNN] ROI #0 - TfLite
[0d18h35m29s] 2023-06-02T16:56:59   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h35m32s] 2023-06-02T16:57:02   <DBG>   [CNN] ROI #1 - TfLite
[0d18h35m32s] 2023-06-02T16:57:02   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h35m35s] 2023-06-02T16:57:05   <DBG>   [CNN] ROI #2 - TfLite
[0d18h35m35s] 2023-06-02T16:57:05   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h35m38s] 2023-06-02T16:57:08   <DBG>   [CNN] ROI #3 - TfLite
[0d18h35m38s] 2023-06-02T16:57:08   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [FLOWCTRL] Status: Post-Processing (16:57:11)
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Post-Processing (msg_id=11678)
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=1, prev=-1
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [CNN] PointerEvalAnalogNew - No predecessor - Result = 4 number: 4.500000 numeral_preceder = -1 Analog_error = 3
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [CNN] PointerEvalAnalogNew - number unambiguous, no correction necessary - result = 4 number: 4.400000 numeral_preceder = 4 Analog_error = 3
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [CNN] PointerEvalAnalogNew - number unambiguous, no correction necessary - result = 9 number: 9.500000 numeral_preceder = 4 Analog_error = 3
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, downward correction - result = 4 number: 4.900000 numeral_preceder = 9 Analog_error = 3
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=0, prev=4
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [CNN] PointerEvalAnalogToDigitNew - NO digital Uncertainty - Result = 7 number: 7.400000 numeral_preceder = 4.900000
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [CNN] PointerEvalHybridNew - Analog predecessor, evaluation over PointerEvalAnalogNew = 7 number: 7.400000 number_of_predecessors = 4.900000 eval_predecessors = 4 Digital_Uncertainty = 0.200000
[0d18h35m41s] 2023-06-02T16:57:11   <DBG>   [CNN] getReadout(dig100)  prev=7
[0d18h35m41s] 2023-06-02T16:57:12   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 6 number: 6.000000 number_of_predecessors = 7.400000 eval_predecessors = 7 Digital_Uncertainty = 0.200000
[0d18h35m41s] 2023-06-02T16:57:12   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 6
[0d18h35m41s] 2023-06-02T16:57:12   <DBG>   [CNN] getReadout#result= 67
[0d18h35m41s] 2023-06-02T16:57:12   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 5 number: 5.000000 number_of_predecessors = 6.000000 eval_predecessors = 6 Digital_Uncertainty = 0.200000
[0d18h35m41s] 2023-06-02T16:57:12   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 5
[0d18h35m41s] 2023-06-02T16:57:12   <DBG>   [CNN] getReadout#result= 567
[0d18h35m41s] 2023-06-02T16:57:12   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d18h35m41s] 2023-06-02T16:57:12   <DBG>   [POSTPROC] Neg: value=567.494450, preValue=567.494470, preToll=567.494450
[0d18h35m41s] 2023-06-02T16:57:12   <INF>   [POSTPROC] main: Raw: 567.49445, Value: 567.49447, Status: no error
[0d18h35m42s] 2023-06-02T16:57:12   <DBG>   [FLOWCTRL] Status: Sending MQTT (16:57:12)
[0d18h35m42s] 2023-06-02T16:57:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Sending MQTT (msg_id=11679)
[0d18h35m42s] 2023-06-02T16:57:12   <DBG>   [MQTT SERVER] Publishing System MQTT topics...
[0d18h35m42s] 2023-06-02T16:57:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/connection, content: connected (msg_id=11680)
[0d18h35m42s] 2023-06-02T16:57:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/uptime, content: 66942 (msg_id=11681)
[0d18h35m42s] 2023-06-02T16:57:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/freeMem, content: 673199 (msg_id=11682)
[0d18h35m42s] 2023-06-02T16:57:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/wifiRSSI, content: -75 (msg_id=11683)
[0d18h35m42s] 2023-06-02T16:57:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/CPUtemp, content: 69 (msg_id=11684)
[0d18h35m42s] 2023-06-02T16:57:12   <DBG>   [MQTT SERVER] Successfully published all System MQTT topics
[0d18h35m42s] 2023-06-02T16:57:13   <DBG>   [MQTT SERVER] Int. Heap Usage before publishing System Topics: 87755, after: 87755, delta: 0, lowest free: 73563
[0d18h35m42s] 2023-06-02T16:57:13   <DBG>   [MQTT] Publishing MQTT topics...
[0d18h35m42s] 2023-06-02T16:57:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/value, content: 567.49447 (msg_id=11685)
[0d18h35m42s] 2023-06-02T16:57:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/error, content: no error (msg_id=11686)
[0d18h35m42s] 2023-06-02T16:57:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate, content: 0.000000 (msg_id=11687)
[0d18h35m42s] 2023-06-02T16:57:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_time_unit, content: 0.000000 (msg_id=11688)
[0d18h35m42s] 2023-06-02T16:57:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/changeabsolut, content: 0.00000 (msg_id=11689)
[0d18h35m42s] 2023-06-02T16:57:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_digitalization_round, content: 0.00000 (msg_id=11690)
[0d18h35m42s] 2023-06-02T16:57:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/raw, content: 567.49445 (msg_id=11691)
[0d18h35m43s] 2023-06-02T16:57:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/timestamp, content: 2023-06-02T16:56:32+0200 (msg_id=11692)
[0d18h35m43s] 2023-06-02T16:57:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/json, content:   {     "value": "567.49447",     "raw": "567.49445",     "pre": "567.49447",   .. (msg_id=11693)
[0d18h35m43s] 2023-06-02T16:57:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Flow finished (msg_id=11694)
[0d18h35m43s] 2023-06-02T16:57:13   <INF>   [MAINCTRL] Round #558 completed (52 seconds)
[0d18h35m43s] 2023-06-02T16:57:13   <DBG>   [MAINCTRL] CPU Temperature: 53°C
[0d18h35m43s] 2023-06-02T16:57:13   <DBG>   [MAINCTRL] WIFI Signal (RSSI): -76dBm
[0d18h35m43s] 2023-06-02T16:57:13   <DBG>   [WIFI] Roaming: Start scan of all channels for SSID RW IoT
[0d18h35m46s] 2023-06-02T16:57:16   <DBG>   [WIFI] Roaming: Current AP BSSID=e6:63:da:74:95:5e
[0d18h35m46s] 2023-06-02T16:57:16   <DBG>   [WIFI] Roaming: Scan completed, APs found with configured SSID: 2
[0d18h35m46s] 2023-06-02T16:57:16   <DBG>   [WIFI] Roaming: 1: SSID=RW IoT, BSSID=e6:63:da:74:95:5e, RSSI=-76, CH=6, AUTH=WPA2 PSK
[0d18h35m46s] 2023-06-02T16:57:16   <DBG>   [WIFI] Roaming: 2: SSID=RW IoT, BSSID=7a:83:c2:b1:8d:5e, RSSI=-87, CH=6, AUTH=WPA2 PSK
[0d18h35m46s] 2023-06-02T16:57:16   <DBG>   [WIFI] Roaming: Scan completed, stay on current AP
[0d18h36m51s] 2023-06-02T16:58:21   <DBG>   [MAINCTRL] ----------------------------------------------------------------
[0d18h36m51s] 2023-06-02T16:58:21   <INF>   [MAINCTRL] Round #559 started
[0d18h36m51s] 2023-06-02T16:58:21   <DBG>   [FLOWCTRL] Status: Take Image (16:58:21)
[0d18h36m51s] 2023-06-02T16:58:22   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Take Image (msg_id=11695)
[0d18h36m51s] 2023-06-02T16:58:22   <DBG>   [PSRAM] Init shared memory for step 'Take Image' (STBI buffers)
[0d18h36m58s] 2023-06-02T16:58:28   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h36m58s] 2023-06-02T16:58:28   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h36m58s] 2023-06-02T16:58:28   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h36m58s] 2023-06-02T16:58:28   <DBG>   [PSRAM] Allocating memory (307215 bytes) for STBI (use shared memory in PSRAM)...
[0d18h36m58s] 2023-06-02T16:58:28   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d18h36m58s] 2023-06-02T16:58:28   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d18h36m58s] 2023-06-02T16:58:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h36m58s] 2023-06-02T16:58:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h36m58s] 2023-06-02T16:58:29   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d18h36m58s] 2023-06-02T16:58:29   <DBG>   [PSRAM] Allocating memory (921601 bytes) for STBI (use shared memory in PSRAM)...
[0d18h36m59s] 2023-06-02T16:58:29   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h36m59s] 2023-06-02T16:58:29   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h36m59s] 2023-06-02T16:58:29   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h36m59s] 2023-06-02T16:58:30   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h36m59s] 2023-06-02T16:58:30   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d18h36m59s] 2023-06-02T16:58:30   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h36m59s] 2023-06-02T16:58:30   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m01s] 2023-06-02T16:58:32   <DBG>   [C IMG BASIS] Not freeing (zwImage as there was never PSRAM allocated for it)
[0d18h37m01s] 2023-06-02T16:58:32   <DBG>   [PSRAM] Deinit shared memory for step 'Take Image' (STBI buffers)
[0d18h37m02s] 2023-06-02T16:58:32   <DBG>   [FLOWCTRL] Status: Aligning (16:58:32)
[0d18h37m02s] 2023-06-02T16:58:32   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Aligning (msg_id=11696)
[0d18h37m02s] 2023-06-02T16:58:33   <DBG>   [PSRAM] Allocating tmpImage (921600 bytes, use shared memory in PSRAM)...
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Allocated 3087 bytes in PSRAM for 'STBI'
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Allocated 6322 bytes in PSRAM for 'STBI'
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m05s] 2023-06-02T16:58:35   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m05s] 2023-06-02T16:58:36   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m05s] 2023-06-02T16:58:36   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m05s] 2023-06-02T16:58:36   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m11s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m11s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h37m11s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m11s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d18h37m11s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Allocated 2319 bytes in PSRAM for 'STBI'
[0d18h37m11s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Allocated 6064 bytes in PSRAM for 'STBI'
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m12s] 2023-06-02T16:58:42   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m18s] 2023-06-02T16:58:48   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d18h37m24s] 2023-06-02T16:58:54   <DBG>   [PSRAM] Shared memory used for tmpImage (PSRAM, part of shared memory) is free again
[0d18h37m24s] 2023-06-02T16:58:54   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (16:58:54)
[0d18h37m24s] 2023-06-02T16:58:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=11697)
[0d18h37m24s] 2023-06-02T16:58:55   <DBG>   [CNN] doFlow after alignment
[0d18h37m24s] 2023-06-02T16:58:55   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d18h37m24s] 2023-06-02T16:58:55   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d18h37m24s] 2023-06-02T16:58:55   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/dig-class100_0160_s2_q.tflite
[0d18h37m24s] 2023-06-02T16:58:55   <DBG>   [TFLITE] Loading Model /sdcard/config/dig-class100_0160_s2_q.tflite /size: 226480 bytes...
[0d18h37m24s] 2023-06-02T16:58:55   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d18h37m25s] 2023-06-02T16:58:55   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d18h37m25s] 2023-06-02T16:58:55   <DBG>   [CNN] Processing Number 'main'
[0d18h37m25s] 2023-06-02T16:58:55   <DBG>   [CNN] ROI #0 - TfLite
[0d18h37m25s] 2023-06-02T16:58:55   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h37m26s] 2023-06-02T16:58:56   <DBG>   [CNN] ROI #1 - TfLite
[0d18h37m26s] 2023-06-02T16:58:56   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h37m27s] 2023-06-02T16:58:57   <DBG>   [CNN] ROI #2 - TfLite
[0d18h37m27s] 2023-06-02T16:58:57   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h37m28s] 2023-06-02T16:58:58   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d18h37m28s] 2023-06-02T16:58:58   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (16:58:58)
[0d18h37m28s] 2023-06-02T16:58:58   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=11698)
[0d18h37m28s] 2023-06-02T16:58:59   <DBG>   [CNN] doFlow after alignment
[0d18h37m28s] 2023-06-02T16:58:59   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d18h37m28s] 2023-06-02T16:58:59   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d18h37m28s] 2023-06-02T16:58:59   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/ana-class100_0169_s1_q.tflite
[0d18h37m28s] 2023-06-02T16:58:59   <DBG>   [TFLITE] Loading Model /sdcard/config/ana-class100_0169_s1_q.tflite /size: 133784 bytes...
[0d18h37m28s] 2023-06-02T16:58:59   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d18h37m29s] 2023-06-02T16:58:59   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d18h37m29s] 2023-06-02T16:58:59   <DBG>   [CNN] Processing Number 'main'
[0d18h37m29s] 2023-06-02T16:58:59   <DBG>   [CNN] ROI #0 - TfLite
[0d18h37m29s] 2023-06-02T16:58:59   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h37m32s] 2023-06-02T16:59:02   <DBG>   [CNN] ROI #1 - TfLite
[0d18h37m32s] 2023-06-02T16:59:02   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h37m35s] 2023-06-02T16:59:05   <DBG>   [CNN] ROI #2 - TfLite
[0d18h37m35s] 2023-06-02T16:59:05   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h37m37s] 2023-06-02T16:59:08   <DBG>   [CNN] ROI #3 - TfLite
[0d18h37m37s] 2023-06-02T16:59:08   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d18h37m40s] 2023-06-02T16:59:11   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d18h37m40s] 2023-06-02T16:59:11   <DBG>   [FLOWCTRL] Status: Post-Processing (16:59:11)
[0d18h37m40s] 2023-06-02T16:59:11   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Post-Processing (msg_id=11699)
[0d18h37m40s] 2023-06-02T16:59:11   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=1, prev=-1
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] PointerEvalAnalogNew - No predecessor - Result = 8 number: 8.700000 numeral_preceder = -1 Analog_error = 3
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, downward correction - result = 4 number: 4.900000 numeral_preceder = 8 Analog_error = 3
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] PointerEvalAnalogNew - number unambiguous, no correction necessary - result = 9 number: 9.500000 numeral_preceder = 4 Analog_error = 3
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, downward correction - result = 4 number: 4.900000 numeral_preceder = 9 Analog_error = 3
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=0, prev=4
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] PointerEvalAnalogToDigitNew - NO digital Uncertainty - Result = 7 number: 7.400000 numeral_preceder = 4.900000
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] PointerEvalHybridNew - Analog predecessor, evaluation over PointerEvalAnalogNew = 7 number: 7.400000 number_of_predecessors = 4.900000 eval_predecessors = 4 Digital_Uncertainty = 0.200000
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] getReadout(dig100)  prev=7
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 6 number: 6.000000 number_of_predecessors = 7.400000 eval_predecessors = 7 Digital_Uncertainty = 0.200000
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 6
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] getReadout#result= 67
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 5 number: 5.000000 number_of_predecessors = 6.000000 eval_predecessors = 6 Digital_Uncertainty = 0.200000
[0d18h37m41s] 2023-06-02T16:59:11   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 5
[0d18h37m41s] 2023-06-02T16:59:12   <DBG>   [CNN] getReadout#result= 567
[0d18h37m41s] 2023-06-02T16:59:12   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d18h37m41s] 2023-06-02T16:59:12   <INF>   [POSTPROC] main: Raw: 567.49487, Value: 567.49487, Status: no error
[0d18h37m41s] 2023-06-02T16:59:12   <DBG>   [FLOWCTRL] Status: Sending MQTT (16:59:12)
[0d18h37m41s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Sending MQTT (msg_id=11700)
[0d18h37m41s] 2023-06-02T16:59:12   <DBG>   [MQTT SERVER] Publishing System MQTT topics...
[0d18h37m41s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/connection, content: connected (msg_id=11701)
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/uptime, content: 67062 (msg_id=11702)
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/freeMem, content: 675219 (msg_id=11703)
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/wifiRSSI, content: -80 (msg_id=11704)
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/CPUtemp, content: 70 (msg_id=11705)
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT SERVER] Successfully published all System MQTT topics
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT SERVER] Int. Heap Usage before publishing System Topics: 88191, after: 88191, delta: 0, lowest free: 73563
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT] Publishing MQTT topics...
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/value, content: 567.49487 (msg_id=11706)
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/error, content: no error (msg_id=11707)
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate, content: 0.000200 (msg_id=11708)
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_time_unit, content: 0.012000 (msg_id=11709)
[0d18h37m42s] 2023-06-02T16:59:12   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/changeabsolut, content: 0.00040 (msg_id=11710)
[0d18h37m42s] 2023-06-02T16:59:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_digitalization_round, content: 0.00040 (msg_id=11711)
[0d18h37m42s] 2023-06-02T16:59:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/raw, content: 567.49487 (msg_id=11712)
[0d18h37m42s] 2023-06-02T16:59:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/timestamp, content: 2023-06-02T16:58:32+0200 (msg_id=11713)
[0d18h37m42s] 2023-06-02T16:59:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/json, content:   {     "value": "567.49487",     "raw": "567.49487",     "pre": "567.49487",   .. (msg_id=11714)
[0d18h37m42s] 2023-06-02T16:59:13   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Flow finished (msg_id=11715)
[0d18h37m42s] 2023-06-02T16:59:13   <INF>   [MAINCTRL] Round #559 completed (51 seconds)
[0d18h37m42s] 2023-06-02T16:59:13   <DBG>   [MAINCTRL] CPU Temperature: 53°C
[0d18h37m43s] 2023-06-02T16:59:13   <DBG>   [MAINCTRL] WIFI Signal (RSSI): -79dBm
[0d18h37m43s] 2023-06-02T16:59:13   <DBG>   [WIFI] Roaming: Start scan of all channels for SSID RW IoT
[0d18h37m45s] 2023-06-02T16:59:16   <DBG>   [WIFI] Roaming: Current AP BSSID=e6:63:da:74:95:5e
[0d18h37m46s] 2023-06-02T16:59:16   <DBG>   [WIFI] Roaming: Scan completed, APs found with configured SSID: 2
[0d18h37m46s] 2023-06-02T16:59:16   <DBG>   [WIFI] Roaming: 1: SSID=RW IoT, BSSID=e6:63:da:74:95:5e, RSSI=-80, CH=6, AUTH=WPA2 PSK
[0d18h37m46s] 2023-06-02T16:59:16   <DBG>   [WIFI] Roaming: 2: SSID=RW IoT, BSSID=7a:83:c2:b1:8d:5e, RSSI=-83, CH=6, AUTH=WPA2 PSK
[0d18h37m46s] 2023-06-02T16:59:16   <DBG>   [WIFI] Roaming: Scan completed, stay on current AP
[0d18h38m51s] 2023-06-02T17:00:21   <DBG>   [MAINCTRL] ----------------------------------------------------------------
caco3 commented 1 year ago

But here is one which is bad (Round 306). It seems that I just hit the 0.2 tolerance.

Log Summary

Round 304

[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [POSTPROC] Neg: value=567.329300, preValue=567.329310, preToll=567.329290
[0d10h07m23s] 2023-06-02T08:28:54   <INF>   [POSTPROC] main: Raw: 567.32930, Value: 567.32931, Status: no error

Round 305

[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d10h09m23s] 2023-06-02T08:30:54   <INF>   [POSTPROC] main: Raw: 567.32932, Value: 567.32932, Status: no error

Round 306

[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [POSTPROC] Neg: value=567.329300, preValue=567.329320, preToll=567.329300
[0d10h11m23s] 2023-06-02T08:32:54   <ERR>   [POSTPROC] main: Raw: 567.32930, Value: , Status: Neg. Rate - Read:  - Raw: 567.32930 - Pre: 567.32932 

Full Log

[0d10h06m34s] 2023-06-02T08:28:05   <INF>   [MAINCTRL] Round #304 started
[0d10h06m34s] 2023-06-02T08:28:05   <DBG>   [FLOWCTRL] Status: Take Image (08:28:05)
[0d10h06m34s] 2023-06-02T08:28:05   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Take Image (msg_id=6379)
[0d10h06m34s] 2023-06-02T08:28:05   <DBG>   [PSRAM] Init shared memory for step 'Take Image' (STBI buffers)
[0d10h06m40s] 2023-06-02T08:28:11   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h06m40s] 2023-06-02T08:28:11   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m40s] 2023-06-02T08:28:11   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h06m40s] 2023-06-02T08:28:12   <DBG>   [PSRAM] Allocating memory (307215 bytes) for STBI (use shared memory in PSRAM)...
[0d10h06m40s] 2023-06-02T08:28:12   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d10h06m40s] 2023-06-02T08:28:12   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d10h06m41s] 2023-06-02T08:28:12   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d10h06m41s] 2023-06-02T08:28:12   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d10h06m41s] 2023-06-02T08:28:12   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d10h06m41s] 2023-06-02T08:28:12   <DBG>   [PSRAM] Allocating memory (921601 bytes) for STBI (use shared memory in PSRAM)...
[0d10h06m41s] 2023-06-02T08:28:13   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d10h06m41s] 2023-06-02T08:28:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m41s] 2023-06-02T08:28:13   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d10h06m42s] 2023-06-02T08:28:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m42s] 2023-06-02T08:28:13   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d10h06m42s] 2023-06-02T08:28:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m42s] 2023-06-02T08:28:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m44s] 2023-06-02T08:28:15   <DBG>   [C IMG BASIS] Not freeing (zwImage as there was never PSRAM allocated for it)
[0d10h06m44s] 2023-06-02T08:28:15   <DBG>   [PSRAM] Deinit shared memory for step 'Take Image' (STBI buffers)
[0d10h06m44s] 2023-06-02T08:28:15   <DBG>   [FLOWCTRL] Status: Aligning (08:28:15)
[0d10h06m44s] 2023-06-02T08:28:15   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Aligning (msg_id=6380)
[0d10h06m45s] 2023-06-02T08:28:16   <DBG>   [PSRAM] Allocating tmpImage (921600 bytes, use shared memory in PSRAM)...
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Allocated 3087 bytes in PSRAM for 'STBI'
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Allocated 6322 bytes in PSRAM for 'STBI'
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m47s] 2023-06-02T08:28:18   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m47s] 2023-06-02T08:28:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m47s] 2023-06-02T08:28:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m47s] 2023-06-02T08:28:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Allocated 2319 bytes in PSRAM for 'STBI'
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Allocated 6064 bytes in PSRAM for 'STBI'
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h06m54s] 2023-06-02T08:28:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h07m00s] 2023-06-02T08:28:31   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h07m06s] 2023-06-02T08:28:38   <DBG>   [PSRAM] Shared memory used for tmpImage (PSRAM, part of shared memory) is free again
[0d10h07m06s] 2023-06-02T08:28:38   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (08:28:38)
[0d10h07m06s] 2023-06-02T08:28:38   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=6381)
[0d10h07m07s] 2023-06-02T08:28:38   <DBG>   [CNN] doFlow after alignment
[0d10h07m07s] 2023-06-02T08:28:38   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d10h07m07s] 2023-06-02T08:28:38   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d10h07m07s] 2023-06-02T08:28:38   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/dig-class100_0160_s2_q.tflite
[0d10h07m07s] 2023-06-02T08:28:38   <DBG>   [TFLITE] Loading Model /sdcard/config/dig-class100_0160_s2_q.tflite /size: 226480 bytes...
[0d10h07m07s] 2023-06-02T08:28:38   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d10h07m07s] 2023-06-02T08:28:38   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d10h07m07s] 2023-06-02T08:28:38   <DBG>   [CNN] Processing Number 'main'
[0d10h07m07s] 2023-06-02T08:28:38   <DBG>   [CNN] ROI #0 - TfLite
[0d10h07m07s] 2023-06-02T08:28:38   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h07m08s] 2023-06-02T08:28:39   <DBG>   [CNN] ROI #1 - TfLite
[0d10h07m08s] 2023-06-02T08:28:39   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h07m09s] 2023-06-02T08:28:40   <DBG>   [CNN] ROI #2 - TfLite
[0d10h07m09s] 2023-06-02T08:28:40   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h07m10s] 2023-06-02T08:28:41   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d10h07m10s] 2023-06-02T08:28:41   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (08:28:41)
[0d10h07m10s] 2023-06-02T08:28:41   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=6382)
[0d10h07m10s] 2023-06-02T08:28:42   <DBG>   [CNN] doFlow after alignment
[0d10h07m10s] 2023-06-02T08:28:42   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d10h07m10s] 2023-06-02T08:28:42   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d10h07m11s] 2023-06-02T08:28:42   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/ana-class100_0169_s1_q.tflite
[0d10h07m11s] 2023-06-02T08:28:42   <DBG>   [TFLITE] Loading Model /sdcard/config/ana-class100_0169_s1_q.tflite /size: 133784 bytes...
[0d10h07m11s] 2023-06-02T08:28:42   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d10h07m11s] 2023-06-02T08:28:42   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d10h07m11s] 2023-06-02T08:28:42   <DBG>   [CNN] Processing Number 'main'
[0d10h07m11s] 2023-06-02T08:28:42   <DBG>   [CNN] ROI #0 - TfLite
[0d10h07m11s] 2023-06-02T08:28:42   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h07m14s] 2023-06-02T08:28:45   <DBG>   [CNN] ROI #1 - TfLite
[0d10h07m14s] 2023-06-02T08:28:45   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h07m17s] 2023-06-02T08:28:48   <DBG>   [CNN] ROI #2 - TfLite
[0d10h07m17s] 2023-06-02T08:28:48   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h07m20s] 2023-06-02T08:28:51   <DBG>   [CNN] ROI #3 - TfLite
[0d10h07m20s] 2023-06-02T08:28:51   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h07m22s] 2023-06-02T08:28:54   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d10h07m22s] 2023-06-02T08:28:54   <DBG>   [FLOWCTRL] Status: Post-Processing (08:28:54)
[0d10h07m22s] 2023-06-02T08:28:54   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Post-Processing (msg_id=6383)
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=1, prev=-1
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] PointerEvalAnalogNew - No predecessor - Result = 3 number: 3.000000 numeral_preceder = -1 Analog_error = 3
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, correction upwards - result = 9 number: 9.200000 numeral_preceder = 3 Analog_error = 3
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, downward correction - result = 2 number: 2.900000 numeral_preceder = 9 Analog_error = 3
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, correction upwards - result = 3 number: 3.200000 numeral_preceder = 2 Analog_error = 3
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=0, prev=3
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] PointerEvalAnalogToDigitNew - NO digital Uncertainty - Result = 7 number: 7.300000 numeral_preceder = 3.200000
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] PointerEvalHybridNew - Analog predecessor, evaluation over PointerEvalAnalogNew = 7 number: 7.300000 number_of_predecessors = 3.200000 eval_predecessors = 3 Digital_Uncertainty = 0.200000
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] getReadout(dig100)  prev=7
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 6 number: 6.000000 number_of_predecessors = 7.300000 eval_predecessors = 7 Digital_Uncertainty = 0.200000
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 6
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] getReadout#result= 67
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 5 number: 5.000000 number_of_predecessors = 6.000000 eval_predecessors = 6 Digital_Uncertainty = 0.200000
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 5
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [CNN] getReadout#result= 567
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [POSTPROC] Neg: value=567.329300, preValue=567.329310, preToll=567.329290
[0d10h07m23s] 2023-06-02T08:28:54   <INF>   [POSTPROC] main: Raw: 567.32930, Value: 567.32931, Status: no error
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [FLOWCTRL] Status: Sending MQTT (08:28:54)
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Sending MQTT (msg_id=6384)
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [MQTT SERVER] Publishing System MQTT topics...
[0d10h07m23s] 2023-06-02T08:28:54   <DBG>   [MQTT IF] Published topic: wasserzaehler/connection, content: connected (msg_id=6385)
[0d10h07m23s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/uptime, content: 36443 (msg_id=6386)
[0d10h07m23s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/freeMem, content: 675295 (msg_id=6387)
[0d10h07m23s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/wifiRSSI, content: -74 (msg_id=6388)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/CPUtemp, content: 68 (msg_id=6389)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT SERVER] Successfully published all System MQTT topics
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT SERVER] Int. Heap Usage before publishing System Topics: 88143, after: 88267, delta: -124, lowest free: 73755
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT] Publishing MQTT topics...
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/value, content: 567.32931 (msg_id=6390)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/error, content: no error (msg_id=6391)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate, content: 0.000000 (msg_id=6392)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_time_unit, content: 0.000000 (msg_id=6393)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/changeabsolut, content: 0.00000 (msg_id=6394)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_digitalization_round, content: 0.00000 (msg_id=6395)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/raw, content: 567.32930 (msg_id=6396)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/timestamp, content: 2023-06-02T08:28:15+0200 (msg_id=6397)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/json, content:   {     "value": "567.32931",     "raw": "567.32930",     "pre": "567.32931",   .. (msg_id=6398)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Flow finished (msg_id=6399)
[0d10h07m24s] 2023-06-02T08:28:55   <INF>   [MAINCTRL] Round #304 completed (50 seconds)
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MAINCTRL] CPU Temperature: 53°C
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [MAINCTRL] WIFI Signal (RSSI): -75dBm
[0d10h07m24s] 2023-06-02T08:28:55   <DBG>   [WIFI] Roaming: Start scan of all channels for SSID RW IoT
[0d10h07m27s] 2023-06-02T08:28:58   <DBG>   [WIFI] Roaming: Current AP BSSID=e6:63:da:74:95:5e
[0d10h07m27s] 2023-06-02T08:28:58   <DBG>   [WIFI] Roaming: Scan completed, APs found with configured SSID: 2
[0d10h07m27s] 2023-06-02T08:28:58   <DBG>   [WIFI] Roaming: 1: SSID=RW IoT, BSSID=e6:63:da:74:95:5e, RSSI=-76, CH=6, AUTH=WPA2 PSK
[0d10h07m27s] 2023-06-02T08:28:58   <DBG>   [WIFI] Roaming: 2: SSID=RW IoT, BSSID=7a:83:c2:b1:8d:5e, RSSI=-82, CH=6, AUTH=WPA2 PSK
[0d10h07m27s] 2023-06-02T08:28:58   <DBG>   [WIFI] Roaming: Scan completed, stay on current AP
[0d10h08m34s] 2023-06-02T08:30:05   <DBG>   [MAINCTRL] ----------------------------------------------------------------
[0d10h08m34s] 2023-06-02T08:30:05   <INF>   [MAINCTRL] Round #305 started
[0d10h08m34s] 2023-06-02T08:30:05   <DBG>   [FLOWCTRL] Status: Take Image (08:30:05)
[0d10h08m34s] 2023-06-02T08:30:05   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Take Image (msg_id=6400)
[0d10h08m34s] 2023-06-02T08:30:05   <DBG>   [PSRAM] Init shared memory for step 'Take Image' (STBI buffers)
[0d10h08m40s] 2023-06-02T08:30:11   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h08m40s] 2023-06-02T08:30:11   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m40s] 2023-06-02T08:30:12   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h08m40s] 2023-06-02T08:30:12   <DBG>   [PSRAM] Allocating memory (307215 bytes) for STBI (use shared memory in PSRAM)...
[0d10h08m40s] 2023-06-02T08:30:12   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d10h08m40s] 2023-06-02T08:30:12   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d10h08m41s] 2023-06-02T08:30:12   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d10h08m41s] 2023-06-02T08:30:12   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d10h08m41s] 2023-06-02T08:30:12   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d10h08m41s] 2023-06-02T08:30:12   <DBG>   [PSRAM] Allocating memory (921601 bytes) for STBI (use shared memory in PSRAM)...
[0d10h08m41s] 2023-06-02T08:30:13   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d10h08m42s] 2023-06-02T08:30:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m42s] 2023-06-02T08:30:13   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d10h08m42s] 2023-06-02T08:30:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m42s] 2023-06-02T08:30:13   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d10h08m42s] 2023-06-02T08:30:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m42s] 2023-06-02T08:30:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m44s] 2023-06-02T08:30:15   <DBG>   [C IMG BASIS] Not freeing (zwImage as there was never PSRAM allocated for it)
[0d10h08m44s] 2023-06-02T08:30:15   <DBG>   [PSRAM] Deinit shared memory for step 'Take Image' (STBI buffers)
[0d10h08m44s] 2023-06-02T08:30:15   <DBG>   [FLOWCTRL] Status: Aligning (08:30:15)
[0d10h08m44s] 2023-06-02T08:30:15   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Aligning (msg_id=6401)
[0d10h08m45s] 2023-06-02T08:30:16   <DBG>   [PSRAM] Allocating tmpImage (921600 bytes, use shared memory in PSRAM)...
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Allocated 3087 bytes in PSRAM for 'STBI'
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Allocated 6322 bytes in PSRAM for 'STBI'
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m47s] 2023-06-02T08:30:18   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m47s] 2023-06-02T08:30:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m47s] 2023-06-02T08:30:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m47s] 2023-06-02T08:30:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m47s] 2023-06-02T08:30:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m48s] 2023-06-02T08:30:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Allocated 2319 bytes in PSRAM for 'STBI'
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Allocated 6064 bytes in PSRAM for 'STBI'
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h08m54s] 2023-06-02T08:30:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h09m00s] 2023-06-02T08:30:31   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h09m06s] 2023-06-02T08:30:37   <DBG>   [PSRAM] Shared memory used for tmpImage (PSRAM, part of shared memory) is free again
[0d10h09m06s] 2023-06-02T08:30:37   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (08:30:37)
[0d10h09m06s] 2023-06-02T08:30:37   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=6402)
[0d10h09m07s] 2023-06-02T08:30:38   <DBG>   [CNN] doFlow after alignment
[0d10h09m07s] 2023-06-02T08:30:38   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d10h09m07s] 2023-06-02T08:30:38   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d10h09m07s] 2023-06-02T08:30:38   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/dig-class100_0160_s2_q.tflite
[0d10h09m07s] 2023-06-02T08:30:38   <DBG>   [TFLITE] Loading Model /sdcard/config/dig-class100_0160_s2_q.tflite /size: 226480 bytes...
[0d10h09m07s] 2023-06-02T08:30:38   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d10h09m07s] 2023-06-02T08:30:38   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d10h09m07s] 2023-06-02T08:30:38   <DBG>   [CNN] Processing Number 'main'
[0d10h09m07s] 2023-06-02T08:30:38   <DBG>   [CNN] ROI #0 - TfLite
[0d10h09m07s] 2023-06-02T08:30:38   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h09m08s] 2023-06-02T08:30:39   <DBG>   [CNN] ROI #1 - TfLite
[0d10h09m08s] 2023-06-02T08:30:39   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h09m09s] 2023-06-02T08:30:40   <DBG>   [CNN] ROI #2 - TfLite
[0d10h09m09s] 2023-06-02T08:30:40   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h09m10s] 2023-06-02T08:30:41   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d10h09m10s] 2023-06-02T08:30:41   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (08:30:41)
[0d10h09m10s] 2023-06-02T08:30:41   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=6403)
[0d10h09m10s] 2023-06-02T08:30:42   <DBG>   [CNN] doFlow after alignment
[0d10h09m10s] 2023-06-02T08:30:42   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d10h09m10s] 2023-06-02T08:30:42   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d10h09m11s] 2023-06-02T08:30:42   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/ana-class100_0169_s1_q.tflite
[0d10h09m11s] 2023-06-02T08:30:42   <DBG>   [TFLITE] Loading Model /sdcard/config/ana-class100_0169_s1_q.tflite /size: 133784 bytes...
[0d10h09m11s] 2023-06-02T08:30:42   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d10h09m11s] 2023-06-02T08:30:42   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d10h09m11s] 2023-06-02T08:30:42   <DBG>   [CNN] Processing Number 'main'
[0d10h09m11s] 2023-06-02T08:30:42   <DBG>   [CNN] ROI #0 - TfLite
[0d10h09m11s] 2023-06-02T08:30:42   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h09m14s] 2023-06-02T08:30:45   <DBG>   [CNN] ROI #1 - TfLite
[0d10h09m14s] 2023-06-02T08:30:45   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h09m17s] 2023-06-02T08:30:48   <DBG>   [CNN] ROI #2 - TfLite
[0d10h09m17s] 2023-06-02T08:30:48   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h09m20s] 2023-06-02T08:30:51   <DBG>   [CNN] ROI #3 - TfLite
[0d10h09m20s] 2023-06-02T08:30:51   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h09m22s] 2023-06-02T08:30:54   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d10h09m22s] 2023-06-02T08:30:54   <DBG>   [FLOWCTRL] Status: Post-Processing (08:30:54)
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Post-Processing (msg_id=6404)
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=1, prev=-1
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] PointerEvalAnalogNew - No predecessor - Result = 3 number: 3.200000 numeral_preceder = -1 Analog_error = 3
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, correction upwards - result = 9 number: 9.200000 numeral_preceder = 3 Analog_error = 3
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, downward correction - result = 2 number: 2.900000 numeral_preceder = 9 Analog_error = 3
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, correction upwards - result = 3 number: 3.200000 numeral_preceder = 2 Analog_error = 3
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=0, prev=3
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] PointerEvalAnalogToDigitNew - NO digital Uncertainty - Result = 7 number: 7.300000 numeral_preceder = 3.200000
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] PointerEvalHybridNew - Analog predecessor, evaluation over PointerEvalAnalogNew = 7 number: 7.300000 number_of_predecessors = 3.200000 eval_predecessors = 3 Digital_Uncertainty = 0.200000
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] getReadout(dig100)  prev=7
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 6 number: 6.000000 number_of_predecessors = 7.300000 eval_predecessors = 7 Digital_Uncertainty = 0.200000
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 6
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] getReadout#result= 67
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 5 number: 5.000000 number_of_predecessors = 6.000000 eval_predecessors = 6 Digital_Uncertainty = 0.200000
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 5
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [CNN] getReadout#result= 567
[0d10h09m23s] 2023-06-02T08:30:54   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d10h09m23s] 2023-06-02T08:30:54   <INF>   [POSTPROC] main: Raw: 567.32932, Value: 567.32932, Status: no error
[0d10h09m23s] 2023-06-02T08:30:55   <DBG>   [FLOWCTRL] Status: Sending MQTT (08:30:55)
[0d10h09m23s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Sending MQTT (msg_id=6405)
[0d10h09m23s] 2023-06-02T08:30:55   <DBG>   [MQTT SERVER] Publishing System MQTT topics...
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/connection, content: connected (msg_id=6406)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/uptime, content: 36564 (msg_id=6407)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/freeMem, content: 675287 (msg_id=6408)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/wifiRSSI, content: -70 (msg_id=6409)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/CPUtemp, content: 68 (msg_id=6410)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT SERVER] Successfully published all System MQTT topics
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT SERVER] Int. Heap Usage before publishing System Topics: 88251, after: 88259, delta: -8, lowest free: 73755
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT] Publishing MQTT topics...
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/value, content: 567.32932 (msg_id=6411)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/error, content: no error (msg_id=6412)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate, content: 0.000005 (msg_id=6413)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_time_unit, content: 0.000300 (msg_id=6414)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/changeabsolut, content: 0.00001 (msg_id=6415)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_digitalization_round, content: 0.00001 (msg_id=6416)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/raw, content: 567.32932 (msg_id=6417)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/timestamp, content: 2023-06-02T08:30:15+0200 (msg_id=6418)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/json, content:   {     "value": "567.32932",     "raw": "567.32932",     "pre": "567.32932",   .. (msg_id=6419)
[0d10h09m24s] 2023-06-02T08:30:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Flow finished (msg_id=6420)
[0d10h09m24s] 2023-06-02T08:30:56   <INF>   [MAINCTRL] Round #305 completed (50 seconds)
[0d10h09m24s] 2023-06-02T08:30:56   <DBG>   [MAINCTRL] CPU Temperature: 53°C
[0d10h09m24s] 2023-06-02T08:30:56   <DBG>   [MAINCTRL] WIFI Signal (RSSI): -71dBm
[0d10h09m24s] 2023-06-02T08:30:56   <DBG>   [WIFI] Roaming: Start scan of all channels for SSID RW IoT
[0d10h09m27s] 2023-06-02T08:30:59   <DBG>   [WIFI] Roaming: Current AP BSSID=e6:63:da:74:95:5e
[0d10h09m27s] 2023-06-02T08:30:59   <DBG>   [WIFI] Roaming: Scan completed, APs found with configured SSID: 2
[0d10h09m27s] 2023-06-02T08:30:59   <DBG>   [WIFI] Roaming: 1: SSID=RW IoT, BSSID=e6:63:da:74:95:5e, RSSI=-73, CH=6, AUTH=WPA2 PSK
[0d10h09m27s] 2023-06-02T08:30:59   <DBG>   [WIFI] Roaming: 2: SSID=RW IoT, BSSID=7a:83:c2:b1:8d:5e, RSSI=-79, CH=6, AUTH=WPA2 PSK
[0d10h09m28s] 2023-06-02T08:30:59   <DBG>   [WIFI] Roaming: Scan completed, stay on current AP
[0d10h10m34s] 2023-06-02T08:32:05   <DBG>   [MAINCTRL] ----------------------------------------------------------------
[0d10h10m34s] 2023-06-02T08:32:05   <INF>   [MAINCTRL] Round #306 started
[0d10h10m34s] 2023-06-02T08:32:05   <DBG>   [FLOWCTRL] Status: Take Image (08:32:05)
[0d10h10m34s] 2023-06-02T08:32:05   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Take Image (msg_id=6421)
[0d10h10m34s] 2023-06-02T08:32:05   <DBG>   [PSRAM] Init shared memory for step 'Take Image' (STBI buffers)
[0d10h10m40s] 2023-06-02T08:32:11   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h10m40s] 2023-06-02T08:32:12   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m40s] 2023-06-02T08:32:12   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h10m41s] 2023-06-02T08:32:12   <DBG>   [PSRAM] Allocating memory (307215 bytes) for STBI (use shared memory in PSRAM)...
[0d10h10m41s] 2023-06-02T08:32:12   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d10h10m41s] 2023-06-02T08:32:12   <DBG>   [PSRAM] Allocating memory (153615 bytes) for STBI (use shared memory in PSRAM)...
[0d10h10m41s] 2023-06-02T08:32:12   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d10h10m41s] 2023-06-02T08:32:12   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d10h10m41s] 2023-06-02T08:32:12   <DBG>   [PSRAM] Allocated 643 bytes in PSRAM for 'STBI'
[0d10h10m41s] 2023-06-02T08:32:12   <DBG>   [PSRAM] Allocating memory (921601 bytes) for STBI (use shared memory in PSRAM)...
[0d10h10m42s] 2023-06-02T08:32:13   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d10h10m42s] 2023-06-02T08:32:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m42s] 2023-06-02T08:32:13   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d10h10m42s] 2023-06-02T08:32:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m42s] 2023-06-02T08:32:13   <DBG>   [PSRAM] Part of shared memory used for STBI (PSRAM, part of shared memory) is free again
[0d10h10m42s] 2023-06-02T08:32:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m42s] 2023-06-02T08:32:13   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m44s] 2023-06-02T08:32:15   <DBG>   [C IMG BASIS] Not freeing (zwImage as there was never PSRAM allocated for it)
[0d10h10m44s] 2023-06-02T08:32:15   <DBG>   [PSRAM] Deinit shared memory for step 'Take Image' (STBI buffers)
[0d10h10m44s] 2023-06-02T08:32:15   <DBG>   [FLOWCTRL] Status: Aligning (08:32:15)
[0d10h10m44s] 2023-06-02T08:32:15   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Aligning (msg_id=6422)
[0d10h10m45s] 2023-06-02T08:32:16   <DBG>   [PSRAM] Allocating tmpImage (921600 bytes, use shared memory in PSRAM)...
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Allocated 3087 bytes in PSRAM for 'STBI'
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Allocated 783 bytes in PSRAM for 'STBI'
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Allocated 52 bytes in PSRAM for 'STBI'
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Allocated 6322 bytes in PSRAM for 'STBI'
[0d10h10m47s] 2023-06-02T08:32:18   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m47s] 2023-06-02T08:32:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m47s] 2023-06-02T08:32:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m48s] 2023-06-02T08:32:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m48s] 2023-06-02T08:32:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m48s] 2023-06-02T08:32:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m48s] 2023-06-02T08:32:19   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Allocated 18456 bytes in PSRAM for 'STBI'
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Allocated 2319 bytes in PSRAM for 'STBI'
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Allocated 591 bytes in PSRAM for 'STBI'
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Allocated 50 bytes in PSRAM for 'STBI'
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Allocated 6064 bytes in PSRAM for 'STBI'
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h10m54s] 2023-06-02T08:32:25   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h11m00s] 2023-06-02T08:32:31   <DBG>   [PSRAM] Freeing memory in PSRAM used for 'STBI'...
[0d10h11m06s] 2023-06-02T08:32:37   <DBG>   [PSRAM] Shared memory used for tmpImage (PSRAM, part of shared memory) is free again
[0d10h11m06s] 2023-06-02T08:32:38   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (08:32:38)
[0d10h11m06s] 2023-06-02T08:32:38   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=6423)
[0d10h11m07s] 2023-06-02T08:32:38   <DBG>   [CNN] doFlow after alignment
[0d10h11m07s] 2023-06-02T08:32:38   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d10h11m07s] 2023-06-02T08:32:38   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d10h11m07s] 2023-06-02T08:32:38   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/dig-class100_0160_s2_q.tflite
[0d10h11m07s] 2023-06-02T08:32:38   <DBG>   [TFLITE] Loading Model /sdcard/config/dig-class100_0160_s2_q.tflite /size: 226480 bytes...
[0d10h11m07s] 2023-06-02T08:32:38   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d10h11m07s] 2023-06-02T08:32:38   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d10h11m07s] 2023-06-02T08:32:38   <DBG>   [CNN] Processing Number 'main'
[0d10h11m07s] 2023-06-02T08:32:38   <DBG>   [CNN] ROI #0 - TfLite
[0d10h11m07s] 2023-06-02T08:32:38   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h11m08s] 2023-06-02T08:32:39   <DBG>   [CNN] ROI #1 - TfLite
[0d10h11m08s] 2023-06-02T08:32:39   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h11m09s] 2023-06-02T08:32:40   <DBG>   [CNN] ROI #2 - TfLite
[0d10h11m09s] 2023-06-02T08:32:40   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h11m10s] 2023-06-02T08:32:41   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d10h11m10s] 2023-06-02T08:32:41   <DBG>   [FLOWCTRL] Status: Digitalization of ROIs (08:32:41)
[0d10h11m10s] 2023-06-02T08:32:41   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Digitalization of ROIs (msg_id=6424)
[0d10h11m10s] 2023-06-02T08:32:42   <DBG>   [CNN] doFlow after alignment
[0d10h11m11s] 2023-06-02T08:32:42   <DBG>   [PSRAM] Allocating Tensor Arena (819200 bytes, use shared memory in PSRAM)...
[0d10h11m11s] 2023-06-02T08:32:42   <DBG>   [TFLITE] CTfLiteClass::LoadModel
[0d10h11m11s] 2023-06-02T08:32:42   <DBG>   [TFLITE] CTfLiteClass::ReadFileToModel: /sdcard/config/ana-class100_0169_s1_q.tflite
[0d10h11m11s] 2023-06-02T08:32:42   <DBG>   [TFLITE] Loading Model /sdcard/config/ana-class100_0169_s1_q.tflite /size: 133784 bytes...
[0d10h11m11s] 2023-06-02T08:32:42   <DBG>   [PSRAM] Allocating Model memory (1363148 bytes, use shared memory in PSRAM)...
[0d10h11m11s] 2023-06-02T08:32:42   <DBG>   [TFLITE] CTfLiteClass::MakeAllocate
[0d10h11m11s] 2023-06-02T08:32:42   <DBG>   [CNN] Processing Number 'main'
[0d10h11m11s] 2023-06-02T08:32:42   <DBG>   [CNN] ROI #0 - TfLite
[0d10h11m11s] 2023-06-02T08:32:42   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h11m14s] 2023-06-02T08:32:45   <DBG>   [CNN] ROI #1 - TfLite
[0d10h11m14s] 2023-06-02T08:32:45   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h11m17s] 2023-06-02T08:32:48   <DBG>   [CNN] ROI #2 - TfLite
[0d10h11m17s] 2023-06-02T08:32:48   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h11m20s] 2023-06-02T08:32:51   <DBG>   [CNN] ROI #3 - TfLite
[0d10h11m20s] 2023-06-02T08:32:51   <DBG>   [CNN] CNN Type: Digital100 or Analogue100
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [PSRAM] Shared memory used for Tensor Arena and model (PSRAM, part of shared memory) is free again
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [FLOWCTRL] Status: Post-Processing (08:32:54)
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Post-Processing (msg_id=6425)
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=1, prev=-1
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] PointerEvalAnalogNew - No predecessor - Result = 3 number: 3.000000 numeral_preceder = -1 Analog_error = 3
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, correction upwards - result = 9 number: 9.200000 numeral_preceder = 3 Analog_error = 3
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, downward correction - result = 2 number: 2.900000 numeral_preceder = 9 Analog_error = 3
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] PointerEvalAnalogNew - number ambiguous, correction upwards - result = 3 number: 3.200000 numeral_preceder = 2 Analog_error = 3
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] getReadout _analog=0, _extendedResolution=0, prev=3
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] PointerEvalAnalogToDigitNew - NO digital Uncertainty - Result = 7 number: 7.300000 numeral_preceder = 3.200000
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] PointerEvalHybridNew - Analog predecessor, evaluation over PointerEvalAnalogNew = 7 number: 7.300000 number_of_predecessors = 3.200000 eval_predecessors = 3 Digital_Uncertainty = 0.200000
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] getReadout(dig100)  prev=7
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 6 number: 6.000000 number_of_predecessors = 7.300000 eval_predecessors = 7 Digital_Uncertainty = 0.200000
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 6
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] getReadout#result= 67
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] PointerEvalHybridNew - NO analogue predecessor, no change of digits, as pre-decimal point far enough away = 5 number: 5.000000 number_of_predecessors = 6.000000 eval_predecessors = 6 Digital_Uncertainty = 0.200000
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] getReadout#PointerEvalHybridNew()= 5
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [CNN] getReadout#result= 567
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [POSTPROC] handleAllowNegativeRate for device: main
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [POSTPROC] Neg: value=567.329300, preValue=567.329320, preToll=567.329300
[0d10h11m23s] 2023-06-02T08:32:54   <ERR>   [POSTPROC] main: Raw: 567.32930, Value: , Status: Neg. Rate - Read:  - Raw: 567.32930 - Pre: 567.32932 
[0d10h11m23s] 2023-06-02T08:32:54   <DBG>   [FLOWCTRL] Status: Sending MQTT (08:32:54)
[0d10h11m23s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Sending MQTT (msg_id=6426)
[0d10h11m23s] 2023-06-02T08:32:55   <DBG>   [MQTT SERVER] Publishing System MQTT topics...
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/connection, content: connected (msg_id=6427)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/uptime, content: 36684 (msg_id=6428)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/freeMem, content: 675223 (msg_id=6429)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/wifiRSSI, content: -72 (msg_id=6430)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/CPUtemp, content: 68 (msg_id=6431)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT SERVER] Successfully published all System MQTT topics
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT SERVER] Int. Heap Usage before publishing System Topics: 88195, after: 88203, delta: -8, lowest free: 73755
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT] Publishing MQTT topics...
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/error, content: Neg. Rate - Read:  - Raw: 567.32930 - Pre: 567.32932  (msg_id=6432)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/changeabsolut, content: 0.00001 (msg_id=6433)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/rate_per_digitalization_round, content: 0.00001 (msg_id=6434)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/raw, content: 567.32930 (msg_id=6435)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/timestamp, content: 2023-06-02T08:30:15+0200 (msg_id=6436)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/main/json, content:   {     "value": "",     "raw": "567.32930",     "pre": "567.32932",     "error".. (msg_id=6437)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MQTT IF] Published topic: wasserzaehler/status, content: Flow finished (msg_id=6438)
[0d10h11m24s] 2023-06-02T08:32:55   <INF>   [MAINCTRL] Round #306 completed (50 seconds)
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MAINCTRL] CPU Temperature: 53°C
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [MAINCTRL] WIFI Signal (RSSI): -72dBm
[0d10h11m24s] 2023-06-02T08:32:55   <DBG>   [WIFI] Roaming: Start scan of all channels for SSID RW IoT
[0d10h11m27s] 2023-06-02T08:32:58   <DBG>   [WIFI] Roaming: Current AP BSSID=e6:63:da:74:95:5e
[0d10h11m27s] 2023-06-02T08:32:58   <DBG>   [WIFI] Roaming: Scan completed, APs found with configured SSID: 2
[0d10h11m27s] 2023-06-02T08:32:58   <DBG>   [WIFI] Roaming: 1: SSID=RW IoT, BSSID=e6:63:da:74:95:5e, RSSI=-72, CH=6, AUTH=WPA2 PSK
[0d10h11m27s] 2023-06-02T08:32:59   <DBG>   [WIFI] Roaming: 2: SSID=RW IoT, BSSID=7a:83:c2:b1:8d:5e, RSSI=-84, CH=6, AUTH=WPA2 PSK
[0d10h11m27s] 2023-06-02T08:32:59   <DBG>   [WIFI] Roaming: Scan completed, stay on current AP
caco3 commented 1 year ago

And another example of my Gas Meter:

[0d21h35m11s] 2023-06-02T19:51:13   <ERR>   [POSTPROC] main: Raw: 07695.510, Value: , Status: Neg. Rate - Read:  - Raw: 07695.510 - Pre: 7695.530 
haverland commented 1 year ago

A wrong prediction with a difference of 2 is a lot. Especially with digits. Can it be due to reflections?

Slider0007 commented 1 year ago

From time to time I also face this situation. In my case the negative deviation is most of the time max. 0.3 or 0.4 of the decimal place of last analog number.

After investigation I realized that we floor every value, this means we need in worst case already 0.1 to compensate this fact (fist reading 65.249, next reading 65.250 --> 0.1 deviation even if reading is almost identical)

@haverland: Is it possible to get a max. negative deviation with max. 0.2 with extended resolution activated? OK, it's argueing on a really high level, because I do not see these often, but it would be nice to get rid of these. Do I need to train my own model to get rid of these sporadic deviations? Keep in mind: I can see sometimes some fluctuations, especially when image alignment is not always 100% identical and sometimes I even have a moving pointer in the capture event.

Example of last analog pointer with extended resolution activated: In this example a negative deviation greater than 0,2 means worstr case 0,89 (almost 0.9, but results in 0.8) --> Possibly realistic image

In this example a negative deviation greater than 0,2 means worst case 0,99 (almost 1.0, but results in 0.9) --> Tight? image

haverland commented 1 year ago

@haverland: Is it possible to get a max. negative deviation with max. 0.2 with extended resolution activated?

It will be activated if you enable "Extended Resolution". See:

https://github.com/jomjol/AI-on-the-edge-device/blob/697ff4c4b69bc7c8b01c60a185fc1e1cd132155f/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp#L875

But only for "Extended Resolution" it makes sense.

Or did I misunderstood your post?

Slider0007 commented 1 year ago

@haverland: Is it possible to get a max. negative deviation with max. 0.2 with extended resolution activated? It will be activated if you enable "Extended Resolution". See:

https://github.com/jomjol/AI-on-the-edge-device/blob/697ff4c4b69bc7c8b01c60a185fc1e1cd132155f/code/components/jomjol_flowcontroll/ClassFlowPostProcessing.cpp#L875

But only for "Extended Resolution" it makes sense.

Or did I misunderstood your post?

@haverland: Thanks for your response. I'm aware that with activated extended resolution the allowed deviation is already 0.2 which is good, but it seems for my setup it's sometimes even too small in static situations where no water is consumed (I get neg. rate -0.3 or even -0.4).

The questions was, is it possible to get a model in our environment (which is not 100% deterministic and limited in visual content) from technical point of view that precise that 0.2 is sufficient especially in static situations when no water is consumed?

I'm not an expert in model training, therefore forgive me if I'm asking stupid questions ;-) As I wrote in previous post it's not a big deal, I totally can live with that circumstance. I was just curious to see if I could optimize that.

haverland commented 1 year ago

Are we able to have a model that less than 0.2 deviation in false predicted?

99.76% or of 20352 are 110 image false predicted.

image

(https://github.com/haverland/Tenth-of-step-of-a-meter-digit/blob/master/Compare_all_tflite.ipynb)

On Analog pointer we have only 6900 images but 99.65% too.

image

( https://github.com/jomjol/neural-network-analog-needle-readout/blob/main/Compare_all_tflite.ipynb )

Means almost all images are correct predicted in max. deviation of 0.1. More I think will not be able. Anyone who has ever gelled themselves will have at least a few pictures that were not easy to assign exactly to a number. So we will have in result false labeled images probably approx. 10%.

But you ask about 0.2 (and has 0.3 or 0.4 deviation). It can be trained. Often I saw in such cases camera issues (less focus, less contrast, reflections) or misconfigured ROIs. And if the probability of two results are nearby, a small change in light or reflection can change the result.

Here helps only more images. Because I used much images of my own, I have such flicker in result not any more. In the last 7 days I have only 3 errors on 3 devices.

And are we able to train models with deviation less than 0.2 of false predicted? Mathematical not but almost all.

Slider0007 commented 1 year ago

@haverland: Thanks a lot for your detailed explaination. I assume in my case it's more related in my setup (camera, light, alignment, ...) than the model. The prediction of the models look really good.

Maybe I'll collect some images and try to improve, but as I said I do not have this situation quite often...

caco3 commented 1 year ago

I still see those minor neg rates. But I made my homeassistant now more intelligent in the way it only notifies me if the negative difference is above a higher threshold.

I therefore rate this back to an enhancement instead of a bug.

nima-1102 commented 5 months ago

I have similar problems, I guess because of pressure fluctuations in the supply line or something, I also have the problem that the meter sometimes moves backwards a little and then forwards again.

An option like "Ignore Negative Rate up to 0.0xxx" would be a really good solution to solve these problems, ExtendedResolution is turned off. It's clear to me that it's not a bug, but actually the counter that sometimes makes a difference of 0.0007 m³.