* Create dig-cont_0640_s3_q.tflite
* Update edit_reference.html (#2924)
Zoom-Einstellungen ausblenden, wenn zoom deaktiviert ist
* Update edit_config_template.html (#2925)
Zoom-Einstellungen ausblenden, wenn zoom deaktiviert ist +
Kameraeinstellungen nicht nur in der config.ini speichern, sondern auch setzen
* The parameter "negative" is processed on the MCU
* Renamed menu entry Alignment -> References
* renamed model file to make naming consistent
* Fix test (#2933)
* always reset change absolute (#2956)
* Create dig-class11_1701_s2.tflite
* Update tflite
* Update tflite
* Camera settings (#3029)
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Add files via upload
* Fix minor typo and harmonize spaces (#3030)
* Update edit_digits.html
* Update edit_analog.html
* Update overview.html
* Update edit_reference.html
---------
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
* Source code formatting, ClassFlowPostProcessing.cpp
* fix edit_config_template.html
Unfortunately, I didn't take out some entries from other experiments because I overlooked/forgot them^^
* fix readconfigparam.js
Unfortunately, I didn't take out some entries from other experiments because I overlooked/forgot them^^
* fix edit_config_template.html
TakeImage_CamZoomMode_value1 was replaced by TakeImage_CamZoomSize_value1, but not deleted.
This caused problems when saving the camera settings.
* Update info.html
function loadWLANSSID() was present three times
* Update overview.html
CamFrameSize is no longer needed/used for zoom
* Update reply-bot.yaml
* homeassistant service discovery: derive node_id when using nested topics (#3088)
* derive correct node_id for homeassistant service discovery in nested topics (fixes#1792)
* explicit use of std::string
* move nodeId creation to separate function
add unit-tests
* add documentation about node_id generation for Home Assistant MQTT Service Discovery
* add Prometheus/OpenMetrics exporter (#3081)
* add prometheus endpoint
* refine metrics implementation
* move metrics generator to ClassFlowControll
* add more metrics
align prefix
* add more metrics
clean up
* refine documentation
* revert dependencies change
* sanitize labels
* create separate module for openmetrics
* move openmetrics to separate folder
* clean up
* add basic unit-tests
* work with const numbers
add replaceAll for string replacement
avoid opening std namespace
adapt unit-tests
* Update code/main/server_main.cpp
---------
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
* Typo
* update platformIO to 6.7.0 (ESP IDF 5.2.1) (#3098)
* update to platformio/espressif32 @ 6.7.0
* remove unused getReadout() as it throws errors (error: 'virtual std::string ClassFlow::getReadout()' was hidden).
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Update reply-bot.yaml (#3107)
* Fix actions-label-commenter
* Update Helper.cpp
* Update Helper.h
* Update Helper.cpp
* Update readconfigparam.js
fix for:
In the selected field the value '1' in the section 'TakeImage' in the field 'CamGainceiling' is invalid. PLEASE CHECK BEFORE SAVING!
* proposal for renaming and documentation (#3115)
* Update server_camera.cpp
Fix building with -D DEBUG_DETAIL_ON
better alternative to:
https://github.com/jomjol/AI-on-the-edge-device/pull/3160
* Update ClassFlowPostProcessing.cpp
* Update ClassFlowAlignment.cpp
* Fix building with `-D DEBUG_DETAIL_ON` (#3160)
Building with `-D DEBUG_DETAIL_ON` has been broken since #3029.
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
* Handle empty prevalue.ini gracefully (#3162)
Fixes#2149.
* Bugfix for boot loop (#3175)
* Add files via upload
* Add files via upload
* Add files via upload
* Delete param-docs/parameter-pages/TakeImage/Aec2.md
has been replaced by CamAec2.md
* Delete param-docs/parameter-pages/TakeImage/AutoExposureLevel.md
has been replaced by CamAeLevel.md
* Delete param-docs/parameter-pages/TakeImage/Brightness.md
has been replaced by CamBrightness.md
* Delete param-docs/parameter-pages/TakeImage/Contrast.md
has been replaced by CamContrast.md
* Delete param-docs/parameter-pages/TakeImage/Grayscale.md
has been replaced by CamSpecialEffect.md
* Delete param-docs/parameter-pages/TakeImage/Negative.md
has been replaced by CamSpecialEffect.md
* Delete param-docs/parameter-pages/TakeImage/Saturation.md
has been replaced by CamSaturation.md
* Delete param-docs/parameter-pages/TakeImage/Sharpness.md
has been replaced by CamSharpness.md
* Delete param-docs/parameter-pages/TakeImage/ImageQuality.md
has been replaced by CamQuality.md
* Delete param-docs/parameter-pages/TakeImage/Zoom.md
has been replaced by CamZoom.md
* Delete param-docs/parameter-pages/TakeImage/ZoomMode.md
has been replaced by CamZoomSize.md
* Delete param-docs/parameter-pages/TakeImage/ZoomOffsetX.md
has been replaced by CamZoomOffsetX.md
* Delete param-docs/parameter-pages/TakeImage/ZoomOffsetY.md
has been replaced by CamZoomOffsetY.md
* Delete param-docs/parameter-pages/TakeImage/ImageSize.md
has been replaced by CamZoomSize.md
* Delete param-docs/parameter-pages/TakeImage/FixedExposure.md
has been replaced by CamAec.md
* Delete param-docs/parameter-pages/Alignment/FlipImageSize.md
has been replaced by CamVflip.md
* Delete param-docs/parameter-pages/Alignment/InitialMirror.md
has been replaced by CamHmirror.md
* CamParameter documentation update
https://github.com/jomjol/AI-on-the-edge-device/issues/3185
* typo
* add Webhook #3148 (#3163)
* WIP add Webhook
* fix config html for webhook
add tooltips for webhook
* webhook: fix not enabling webhook
* send webhook as json
* Update ApiKey.md
* webhook: fix only sending last "Number"
* webhook JSON is now closer to the data log in CSV format
* webhook: drop timeStampTimeUTC and switch from timeStamp to lastvalue like lokal csv to fix no timestamp on error
---------
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
* Bugfix for time stamp (#3180)
* Update ClassFlowPostProcessing.cpp
* Update ClassFlowDefineTypes.h
* Update ClassFlowPostProcessing.cpp
* Update ClassFlowPostProcessing.cpp
* Update ClassFlowPostProcessing.cpp
* Update ClassFlowPostProcessing.cpp
* Update interface_webhook.cpp
* Update readconfigcommon.js
fix for: The same message("Image Contrast got enhanced") came up with "Update Marker" and "Enhance Image Contrast".
* fix svg favicon
The svg one got added in 33893eb566 but does not work on Firefox
* Update platformIO to 6.8.1 (Contains ESP IDF 5.3) (#3196)
* Update platformIO to 6.8.1 (ESP IDF 5.3)
* removed now redundant typedef
* updated IDF manifest hash
* Add files via upload
so it should work now
* Update server_main.cpp
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: michael <Heinrich-Tuning@web.de>
* Update MainFlowControl.cpp
* Add support for OV5640 camera (#3063)
* Add support for OV5640 camera
* clean up sharpness handling
* limit sharpness range to -2 and +2
* refactor
* Fix OV3660 sharpness handling
* refactor sharpness handling
* fix OV3660 zoom mode
* reinstate aspect ratio via imageSize
* Changed OV5640 full frame size to match datasheet
* various fixes
* add denoise config and general clean up
* fix line endings to LF
* Support enabling red blue swap via web interface
* update jpeg quality limits
* remove color swap config; color swap workaround dependent on vflip
* fix missing commit
* fix gain ceiling
* Update cam vflip param page
* fix typo: camdenoise, not camsdenoise
* fix compile errors
* Update MainFlowControl.cpp
* Add rate threshold parameter (#3195)
* still needs to be tested
https://github.com/jomjol/AI-on-the-edge-device/issues/3143
* Update ClassFlowPostProcessing.cpp
code formatting
* Update ClassFlowDefineTypes.h
code formatting
* Update ClassFlowPostProcessing.h
code formatting
* Update edit_config_template.html
* fix
* Update config.ini
* Update edit_config_template.html
* Updated param doc
* Rename parameters
* Update edit_config_template.html
* Update NUMBER.ChangeRateThreshold.md
* Update NUMBER.ChangeRateThreshold.md
---------
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
* Update main.cpp
* Update config.ini
Adjusted camera settings to make the image brighter.
* Update readconfigparam.js
Adjusted camera settings to make the image brighter.
* add optional ImageUpload for Webhook (#3174)
* WIP add Webhook
* fix config html for webhook
add tooltips for webhook
* webhook: fix not enabling webhook
* send webhook as json
* Update ApiKey.md
* webhook: fix only sending last "Number"
* webhook JSON is now closer to the data log in CSV format
* webhook: add img upload
* webhoop added config for imgupload
* webhook html fixes
* webhook: drop timeStampTimeUTC and switch from timeStamp to lastvalue like lokal csv to fix no timestamp on error
* add checkbox for Webhook_UploadImg
* Update sd-card/html/edit_config_template.html
* Update edit_config_template.html
* Update edit_config_template.html
* Update edit_config_template.html
* added a long timestamp to both webhook requests
---------
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
* Add files via upload (#3207)
* Update ClassFlowPostProcessing.cpp
deleted some unnecessary double entries
RateType renamed to MaxRateType
* Update ClassFlowDefineTypes.h
RateType renamed to MaxRateType
* Update text on recognition page
* Update digital CNN
* add a Delay between the WiFi reconnections (#3068)
* add a Delay between the WiFi reconnections
* log the delay between the WiFi reconnections
move the delay after the log
* cleanup
* cleanup
* cleanup
* Update edit_alignment.html
* cleanup
* cleanup
* Update platformIO to 6.9.0 (Contains ESP IDF 5.3.1)
* Handle crash on corrupted model (#3220)
* Upgrade esp-tflite-micro to 1.3.1
* Added log message to hint in case it crashes on loading a corrupted model
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* new dig-class100-173-s2-q on 23.800 images (#3257)
* new dig-class100-173-s2-q on 23.800 images
* platformio/espressif32 @ 6.8.1 for esp32cam-dev
* Revert "platformio/espressif32 @ 6.8.1 for esp32cam-dev"
This reverts commit cc9297d483.
* not using platformio 6.1.16
* Revert "not using platformio 6.1.16"
This reverts commit ef18e4fae7.
* moved number edit box styles into new file edit_style.css (#3262)
changed input[type=number] from 60px to 3em, to show 3 digits with current font size.
* added note about only TLS 1.2 is supported (#3213)
* Renamed digital to digit (#3219)
* renamed Digital to Digit
* added param migration
* Update .github/label-commenter-config.yaml
* renamed AnalogDigitTransition* to AnalogToDigitTransition*
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Update Changelog.md
* Update Changelog.md
---------
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
Co-authored-by: michael <Heinrich-Tuning@web.de>
Co-authored-by: Frank Haverland <fspapaping@googlemail.com>
Co-authored-by: kub3let <95883234+kub3let@users.noreply.github.com>
Co-authored-by: Marco H <myxor@users.noreply.github.com>
Co-authored-by: Henry Thasler <henrythasler@users.noreply.github.com>
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: Sebastian Lövdahl <slovdahl@hibox.fi>
Co-authored-by: Raphael Hehl <raphael@rhehl.de>
Co-authored-by: jasaw <jasaw@dius.com.au>
Co-authored-by: Francesco Carnielli <hex7c0@gmail.com>
Co-authored-by: kalwados <kalwados@gmx.de>
* Testcase for #2145 and debug-log (#2151)
* new models ana-cont-11.0.5, ana-class100-1.5.7, dig-class100-1.6.0
* Testcase for #2145
Added debug log, if allowNegativeRates is handeled
* Fix timezone config parser (#2169)
* make sure to parse the whole config line
* fix crash on empty timezone parameter
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Enhance ROI pages (#2161)
* Check if the ROIs are equidistant. Only if not, untick the checkbox
* renaming
* Check if the ROIs have same y, dy and dx. If so, tick the sync checkbox
* only allow editing space when box is checked
* fix sync check
* show inner frame on all ROIs
* cleanup
* Check if the ROIs have same dy and dx. If so, tick the sync checkbox
* checkbox position
* renaming
* renaming
* show inner frame and cross hairs on all ROIs
* update ROIs on ticking checkboxes
* show timezone hint
* fix deleting last ROI
* cleanup
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* restart timeout on progress, catch error (#2170)
* restart timeout on progress, catch error
* .
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* BugFix #2167
* Release 15.1 preparations (#2171)
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update changelog
* Fix links to PR
* Formating
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
---------
Co-authored-by: Slider0007 <jobbelle@gmx.net>
Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
* fix typo
* Replace relative documentation links with absolute ones pointing to the external documentation (#2180)
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Sort model files in configuration combobox (#2189)
* new models ana-cont-11.0.5, ana-class100-1.5.7, dig-class100-1.6.0
* Testcase for #2145
Added debug log, if allowNegativeRates is handeled
* Sort model files in combobox
* reboot task - increase stack size (#2201)
Avoid stack overflow
* Update interface_influxdb.cpp
* Update Changelog.md
* Show PSRAM usage (#2206)
* centralize PSRAM usage (application code only)
* update logging
* update logging
* fix use after free
* initialize buffer
* free rgb_image before ussing it for new allocation
* use wrapper function
* switch log level to debug
* .
* undo adding free() calls
* .
* add names to all CImage instances
* .
* .
* .
* revert changes of stbi_image_free() with free_psram_heap() on the places where is is not in PSRAM
* .
* typos
* typo
* Added MQTT Outbox explanation/warning
* added CONFIG_SPIRAM_USE_MEMMAP explanation
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Disable custom MQTT Outbox. This also moves the MQTT Publishing memory usage back to the internal RAM!
* log MQTT connection refused reasons (#2216)
* Revert PSRAM usage as it lead to memory fragmentation.
See https://github.com/jomjol/AI-on-the-edge-device/issues/2200 for details
* fix missing value data
* Revert PSRAM usage as it lead to memory fragmentation. (#2224)
See https://github.com/jomjol/AI-on-the-edge-device/issues/2200 for details
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Fix missing value data in graph (#2230)
* fix missing value data
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Update Changelog.md (#2231)
* Update interface_influxdb.cpp (#2233)
* update copyright year
* Cleanup
* Set prevalue using MQTT + set prevalue to RAW value (REST+MQTT) (#2252)
* Use double instead of float
* Error handling + set to RAW if newvalue < 0
* REST SetPrevalue: Set to RAW if newvalue < 0
* set prevalue with MQTT
* removed the stb_image files and re-add them as a submodule. (#2223)
- stb_image.h: Version update 2.25 -> 2.28
- stb_resize.h: Version update 0.96 -> 0.97
- stb_write.h: Version update 1.14 -> 1.16
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Remove obsolete ClassFlowWriteList (#2264)
* Renaming & cleanup of some modules / functions in source code (#2265)
* Rename module tag name
* Rename server_tflite.cpp -> MainFlowControl.cpp
* Remove redundandant MQTTMainTopic function
* Update
* Remove obsolete GetMQTTMainTopic
* Fix last element missing in digit model drop down (#2282)
* Debug influxdb (#2283)
* Fix time offset issues in InfluxDB component. (#2278)
Closes#2273Closes#2150
* Update interface_influxdb.cpp
* Update interface_influxdb.cpp
* Improve Logging
* Implement TimeSync at beginning
* Update time_sntp.cpp
* Update time_sntp.cpp
* Set Time After WLAN Init
---------
Co-authored-by: Antonin Delpeuch <antonin@delpeuch.eu>
* Implement a camera livestream handler (#2286)
* fix leading NaN (#2310)
* analogROI: Activate save button after ROI creation (#2326)
* Migration of PlatformIO 5.2.0 to 6.1.0 (resp. ESP IDF from 4.4.2 to 5.0.1) (#2305)
* Migration to PlatformIO 6.1.0
* Disable RMTMEM usage as it is no longer allowed -> Smart LEDs not functional!
* moved miniz into subfolder of jomjol_fileserver_ota, else it does not build anymore.
* cleanup
* fix leading NaN (#2310)
* Migration to PlatformIO 6.1.0
* Disable RMTMEM usage as it is no longer allowed -> Smart LEDs not functional!
* moved miniz into subfolder of jomjol_fileserver_ota, else it does not build anymore.
* cleanup
* Task watchdog has new config name
* Fix return value check. It must be something else than ESP_FAIL, but it does not need to be ESP_OK!
* add missing strucures to work around new RMTMEM restriction (untested)
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Keep MainFlowTask alive to handle reboot (#2325)
* Shared PSRAM memory (#2285)
* enable PSRAM logging
* add extra functions for psram shared memroy handling
* CImageBasis objects still should used dynamic memory (eg. rawImage), haw ever tmpImage must be placed inside the shared memory
* Place all STBI allocs inside the shared memory
* The models are placed in the shared PSRAM reagion and must be allocated through the dedicated functions
* .
* renaming
* fix cast warning
* add flag to switch STBI PSRAM usage
* improve PSRAM shared handling
* reserve shared PSRAM as early as possible
* init logging eralier so we can use it in PSRAM shared alloc
* move Wifi_LWIP, BSS_SEG and MQTT Outbox into PSRAM to ffree internal memory
* Check if model fits into reserved shared memory
* Update code/components/jomjol_tfliteclass/CTfLiteClass.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_flowcontroll/ClassFlowControll.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_image_proc/CImageBasis.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* .
* .
* .
* .
* Korrektur Merge Conflict in main.cpp
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
* fix PSRAM init return value check
* Extend InfluxDBv1 with individual topic names (#2319)
* Implement individual influx topic
* Update interface_influxdb.cpp
* Update interface_influxdb.cpp
* Update FieldName
* analogROI: Activate save button after ROI creation (#2326)
* Migration of PlatformIO 5.2.0 to 6.1.0 (resp. ESP IDF from 4.4.2 to 5.0.1) (#2305)
* Migration to PlatformIO 6.1.0
* Disable RMTMEM usage as it is no longer allowed -> Smart LEDs not functional!
* moved miniz into subfolder of jomjol_fileserver_ota, else it does not build anymore.
* cleanup
* fix leading NaN (#2310)
* Migration to PlatformIO 6.1.0
* Disable RMTMEM usage as it is no longer allowed -> Smart LEDs not functional!
* moved miniz into subfolder of jomjol_fileserver_ota, else it does not build anymore.
* cleanup
* Task watchdog has new config name
* Fix return value check. It must be something else than ESP_FAIL, but it does not need to be ESP_OK!
* add missing strucures to work around new RMTMEM restriction (untested)
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Keep MainFlowTask alive to handle reboot (#2325)
* Shared PSRAM memory (#2285)
* enable PSRAM logging
* add extra functions for psram shared memroy handling
* CImageBasis objects still should used dynamic memory (eg. rawImage), haw ever tmpImage must be placed inside the shared memory
* Place all STBI allocs inside the shared memory
* The models are placed in the shared PSRAM reagion and must be allocated through the dedicated functions
* .
* renaming
* fix cast warning
* add flag to switch STBI PSRAM usage
* improve PSRAM shared handling
* reserve shared PSRAM as early as possible
* init logging eralier so we can use it in PSRAM shared alloc
* move Wifi_LWIP, BSS_SEG and MQTT Outbox into PSRAM to ffree internal memory
* Check if model fits into reserved shared memory
* Update code/components/jomjol_tfliteclass/CTfLiteClass.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_flowcontroll/ClassFlowControll.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_image_proc/CImageBasis.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* .
* .
* .
* .
* Korrektur Merge Conflict in main.cpp
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
* fix PSRAM init return value check
* Extend incl. indiv. Measurement
* Implement UX
* Update ClassFlowInfluxDBv2.cpp
* Implement individual influx topic
* Update interface_influxdb.cpp
* Update interface_influxdb.cpp
* Update FieldName
* Extend incl. indiv. Measurement
* Implement UX
* Update ClassFlowInfluxDBv2.cpp
* Update main.cpp
---------
Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Update Changelog.md (#2344)
* Update Changelog.md
* Update Changelog.md
* merge conflicts
* merge conflicts
* update changelog
* Update Changelog.md
* Fix alignment mark PSRAM issue (#2357)
* Add lock for shared PSRAM memory, use it for the relevant round steps and the Alignment Mark Task
* only allow taking a new image for the Alignment Mark while round got completed
* show success/denial of Alignment Mark Update Request
* .
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Update Changelog.md (#2360)
* Update platformio.ini (#2368)
* Allow the Alignment Mark step while status is "Initializing" or "Initialization (delayed)" or while in setup mode (#2373)
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Improve logging if Autostart is not enabled. Renamed/splitted functions (#2376)
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Cleanup web UI (#2378)
* fix wrong index on backup log
* remove no longer used files/functions
* improve logging on Alignment Mark Update
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Update Changelog.md
---------
Co-authored-by: Frank Haverland <fspapaping@googlemail.com>
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
Co-authored-by: Slider0007 <jobbelle@gmx.net>
Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
Co-authored-by: Antonin Delpeuch <antonin@delpeuch.eu>
* Testcase for #2145 and debug-log (#2151)
* new models ana-cont-11.0.5, ana-class100-1.5.7, dig-class100-1.6.0
* Testcase for #2145
Added debug log, if allowNegativeRates is handeled
* Fix timezone config parser (#2169)
* make sure to parse the whole config line
* fix crash on empty timezone parameter
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Enhance ROI pages (#2161)
* Check if the ROIs are equidistant. Only if not, untick the checkbox
* renaming
* Check if the ROIs have same y, dy and dx. If so, tick the sync checkbox
* only allow editing space when box is checked
* fix sync check
* show inner frame on all ROIs
* cleanup
* Check if the ROIs have same dy and dx. If so, tick the sync checkbox
* checkbox position
* renaming
* renaming
* show inner frame and cross hairs on all ROIs
* update ROIs on ticking checkboxes
* show timezone hint
* fix deleting last ROI
* cleanup
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* restart timeout on progress, catch error (#2170)
* restart timeout on progress, catch error
* .
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* BugFix #2167
* Release 15.1 preparations (#2171)
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update changelog
* Fix links to PR
* Formating
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
---------
Co-authored-by: Slider0007 <jobbelle@gmx.net>
Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
* fix typo
* Replace relative documentation links with absolute ones pointing to the external documentation (#2180)
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Sort model files in configuration combobox (#2189)
* new models ana-cont-11.0.5, ana-class100-1.5.7, dig-class100-1.6.0
* Testcase for #2145
Added debug log, if allowNegativeRates is handeled
* Sort model files in combobox
* reboot task - increase stack size (#2201)
Avoid stack overflow
* Update interface_influxdb.cpp
* Update Changelog.md
* Show PSRAM usage (#2206)
* centralize PSRAM usage (application code only)
* update logging
* update logging
* fix use after free
* initialize buffer
* free rgb_image before ussing it for new allocation
* use wrapper function
* switch log level to debug
* .
* undo adding free() calls
* .
* add names to all CImage instances
* .
* .
* .
* revert changes of stbi_image_free() with free_psram_heap() on the places where is is not in PSRAM
* .
* typos
* typo
* Added MQTT Outbox explanation/warning
* added CONFIG_SPIRAM_USE_MEMMAP explanation
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Disable custom MQTT Outbox. This also moves the MQTT Publishing memory usage back to the internal RAM!
* log MQTT connection refused reasons (#2216)
* Revert PSRAM usage as it lead to memory fragmentation.
See https://github.com/jomjol/AI-on-the-edge-device/issues/2200 for details
* fix missing value data
* Revert PSRAM usage as it lead to memory fragmentation. (#2224)
See https://github.com/jomjol/AI-on-the-edge-device/issues/2200 for details
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Fix missing value data in graph (#2230)
* fix missing value data
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Update Changelog.md (#2231)
* Update interface_influxdb.cpp (#2233)
* update copyright year
* Cleanup
* Set prevalue using MQTT + set prevalue to RAW value (REST+MQTT) (#2252)
* Use double instead of float
* Error handling + set to RAW if newvalue < 0
* REST SetPrevalue: Set to RAW if newvalue < 0
* set prevalue with MQTT
* removed the stb_image files and re-add them as a submodule. (#2223)
- stb_image.h: Version update 2.25 -> 2.28
- stb_resize.h: Version update 0.96 -> 0.97
- stb_write.h: Version update 1.14 -> 1.16
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Remove obsolete ClassFlowWriteList (#2264)
* Renaming & cleanup of some modules / functions in source code (#2265)
* Rename module tag name
* Rename server_tflite.cpp -> MainFlowControl.cpp
* Remove redundandant MQTTMainTopic function
* Update
* Remove obsolete GetMQTTMainTopic
* Fix last element missing in digit model drop down (#2282)
* Debug influxdb (#2283)
* Fix time offset issues in InfluxDB component. (#2278)
Closes#2273Closes#2150
* Update interface_influxdb.cpp
* Update interface_influxdb.cpp
* Improve Logging
* Implement TimeSync at beginning
* Update time_sntp.cpp
* Update time_sntp.cpp
* Set Time After WLAN Init
---------
Co-authored-by: Antonin Delpeuch <antonin@delpeuch.eu>
* Implement a camera livestream handler (#2286)
* fix leading NaN (#2310)
* analogROI: Activate save button after ROI creation (#2326)
* Migration of PlatformIO 5.2.0 to 6.1.0 (resp. ESP IDF from 4.4.2 to 5.0.1) (#2305)
* Migration to PlatformIO 6.1.0
* Disable RMTMEM usage as it is no longer allowed -> Smart LEDs not functional!
* moved miniz into subfolder of jomjol_fileserver_ota, else it does not build anymore.
* cleanup
* fix leading NaN (#2310)
* Migration to PlatformIO 6.1.0
* Disable RMTMEM usage as it is no longer allowed -> Smart LEDs not functional!
* moved miniz into subfolder of jomjol_fileserver_ota, else it does not build anymore.
* cleanup
* Task watchdog has new config name
* Fix return value check. It must be something else than ESP_FAIL, but it does not need to be ESP_OK!
* add missing strucures to work around new RMTMEM restriction (untested)
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Keep MainFlowTask alive to handle reboot (#2325)
* Shared PSRAM memory (#2285)
* enable PSRAM logging
* add extra functions for psram shared memroy handling
* CImageBasis objects still should used dynamic memory (eg. rawImage), haw ever tmpImage must be placed inside the shared memory
* Place all STBI allocs inside the shared memory
* The models are placed in the shared PSRAM reagion and must be allocated through the dedicated functions
* .
* renaming
* fix cast warning
* add flag to switch STBI PSRAM usage
* improve PSRAM shared handling
* reserve shared PSRAM as early as possible
* init logging eralier so we can use it in PSRAM shared alloc
* move Wifi_LWIP, BSS_SEG and MQTT Outbox into PSRAM to ffree internal memory
* Check if model fits into reserved shared memory
* Update code/components/jomjol_tfliteclass/CTfLiteClass.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_flowcontroll/ClassFlowControll.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_image_proc/CImageBasis.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* .
* .
* .
* .
* Korrektur Merge Conflict in main.cpp
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
* fix PSRAM init return value check
* Extend InfluxDBv1 with individual topic names (#2319)
* Implement individual influx topic
* Update interface_influxdb.cpp
* Update interface_influxdb.cpp
* Update FieldName
* analogROI: Activate save button after ROI creation (#2326)
* Migration of PlatformIO 5.2.0 to 6.1.0 (resp. ESP IDF from 4.4.2 to 5.0.1) (#2305)
* Migration to PlatformIO 6.1.0
* Disable RMTMEM usage as it is no longer allowed -> Smart LEDs not functional!
* moved miniz into subfolder of jomjol_fileserver_ota, else it does not build anymore.
* cleanup
* fix leading NaN (#2310)
* Migration to PlatformIO 6.1.0
* Disable RMTMEM usage as it is no longer allowed -> Smart LEDs not functional!
* moved miniz into subfolder of jomjol_fileserver_ota, else it does not build anymore.
* cleanup
* Task watchdog has new config name
* Fix return value check. It must be something else than ESP_FAIL, but it does not need to be ESP_OK!
* add missing strucures to work around new RMTMEM restriction (untested)
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Keep MainFlowTask alive to handle reboot (#2325)
* Shared PSRAM memory (#2285)
* enable PSRAM logging
* add extra functions for psram shared memroy handling
* CImageBasis objects still should used dynamic memory (eg. rawImage), haw ever tmpImage must be placed inside the shared memory
* Place all STBI allocs inside the shared memory
* The models are placed in the shared PSRAM reagion and must be allocated through the dedicated functions
* .
* renaming
* fix cast warning
* add flag to switch STBI PSRAM usage
* improve PSRAM shared handling
* reserve shared PSRAM as early as possible
* init logging eralier so we can use it in PSRAM shared alloc
* move Wifi_LWIP, BSS_SEG and MQTT Outbox into PSRAM to ffree internal memory
* Check if model fits into reserved shared memory
* Update code/components/jomjol_tfliteclass/CTfLiteClass.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_flowcontroll/ClassFlowControll.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_image_proc/CImageBasis.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* Update code/components/jomjol_helper/psram.cpp
* .
* .
* .
* .
* Korrektur Merge Conflict in main.cpp
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
* fix PSRAM init return value check
* Extend incl. indiv. Measurement
* Implement UX
* Update ClassFlowInfluxDBv2.cpp
* Implement individual influx topic
* Update interface_influxdb.cpp
* Update interface_influxdb.cpp
* Update FieldName
* Extend incl. indiv. Measurement
* Implement UX
* Update ClassFlowInfluxDBv2.cpp
* Update main.cpp
---------
Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Update Changelog.md (#2344)
* Update Changelog.md
* Update Changelog.md
* merge conflicts
* merge conflicts
* update changelog
---------
Co-authored-by: Frank Haverland <fspapaping@googlemail.com>
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
Co-authored-by: Slider0007 <jobbelle@gmx.net>
Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
Co-authored-by: Antonin Delpeuch <antonin@delpeuch.eu>
* Testcase for #2145 and debug-log (#2151)
* new models ana-cont-11.0.5, ana-class100-1.5.7, dig-class100-1.6.0
* Testcase for #2145
Added debug log, if allowNegativeRates is handeled
* Fix timezone config parser (#2169)
* make sure to parse the whole config line
* fix crash on empty timezone parameter
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Enhance ROI pages (#2161)
* Check if the ROIs are equidistant. Only if not, untick the checkbox
* renaming
* Check if the ROIs have same y, dy and dx. If so, tick the sync checkbox
* only allow editing space when box is checked
* fix sync check
* show inner frame on all ROIs
* cleanup
* Check if the ROIs have same dy and dx. If so, tick the sync checkbox
* checkbox position
* renaming
* renaming
* show inner frame and cross hairs on all ROIs
* update ROIs on ticking checkboxes
* show timezone hint
* fix deleting last ROI
* cleanup
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* restart timeout on progress, catch error (#2170)
* restart timeout on progress, catch error
* .
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* BugFix #2167
* Release 15.1 preparations (#2171)
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update changelog
* Fix links to PR
* Formating
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
* Update Changelog.md
---------
Co-authored-by: Slider0007 <jobbelle@gmx.net>
Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
* fix typo
* Replace relative documentation links with absolute ones pointing to the external documentation (#2180)
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Sort model files in configuration combobox (#2189)
* new models ana-cont-11.0.5, ana-class100-1.5.7, dig-class100-1.6.0
* Testcase for #2145
Added debug log, if allowNegativeRates is handeled
* Sort model files in combobox
* reboot task - increase stack size (#2201)
Avoid stack overflow
* Update interface_influxdb.cpp
* Update Changelog.md
* Show PSRAM usage (#2206)
* centralize PSRAM usage (application code only)
* update logging
* update logging
* fix use after free
* initialize buffer
* free rgb_image before ussing it for new allocation
* use wrapper function
* switch log level to debug
* .
* undo adding free() calls
* .
* add names to all CImage instances
* .
* .
* .
* revert changes of stbi_image_free() with free_psram_heap() on the places where is is not in PSRAM
* .
* typos
* typo
* Added MQTT Outbox explanation/warning
* added CONFIG_SPIRAM_USE_MEMMAP explanation
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Disable custom MQTT Outbox. This also moves the MQTT Publishing memory usage back to the internal RAM!
* log MQTT connection refused reasons (#2216)
* Revert PSRAM usage as it lead to memory fragmentation. (#2224)
See https://github.com/jomjol/AI-on-the-edge-device/issues/2200 for details
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Fix missing value data in graph (#2230)
* fix missing value data
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Update Changelog.md (#2231)
---------
Co-authored-by: Frank Haverland <fspapaping@googlemail.com>
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
Co-authored-by: Slider0007 <jobbelle@gmx.net>
Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
* Run the Homeassistant Discovery directly after connecting to the broker. Before it was delayed 10s and happened while the first round alredy was in progress
* schedule sending HA discovery and static topics
* Allow setting QOS for MQTT topics
* .
* .
* change MQTT QOS1 expiration time from (default) 30 to 5s
* add logging of heap change on MQTT topic sendings
* wait for MQTT transmission timeout after publishing
* use QOS0 for Homeassistant Discovery topics. the messages then could possibly get lost but we save a lot of heap
* .
* use PSRAM for the MQTT outbox
* use QOS1 for HA discovery again
* .
* .
* disable delay, not needed with PSRAM
* .
* consolidated scheduledSendingOf_DiscoveryAndStaticTopics into sendingOf_DiscoveryAndStaticTopics_scheduled
* Send Homeasstsiatnt Discovery and static data in MQTT step instead of when the wifi gets connected
* "WIFI roaming" by channel scan (AP switching at low RSSI) (#2120)
* Activate 802.11kv wifi mesh roaming
* Activate roaming by scanning
* Revert stack reducation
* move Wifi, LWIP and BSSI to PSRAm
* added State Class "measurement" to rate_per_time_unit (#2116)
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* use QOS0 for Homeassistant Discovery topics. the messages then could possibly get lost but we save a lot of heap
* use QOS0 for Homeassistant Discovery topics. the messages then could possibly get lost but we save a lot of heap
# Conflicts:
# code/components/jomjol_mqtt/server_mqtt.cpp
# Conflicts:
# code/components/jomjol_mqtt/server_mqtt.cpp
* .
* .
* move to next PR
* Update code/components/jomjol_mqtt/server_mqtt.cpp
* Update code/components/jomjol_mqtt/server_mqtt.cpp
---------
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: Slider0007 <115730895+Slider0007@users.noreply.github.com>
* Show image for flow not started + take image
* Update
* Adding new images
* .
* Avoid multiple Access-Control-Allow-Origin * (#1859)
* Avoid multiple Access-Control-Allow-Origin *
* Adapt loglevel to debug
* Update build.yaml
* .
* New state "initialization (delayed)", renaming
* Overview: Renamed "Status" + switched position
* Improve data logging on errors (#1839)
* use error level for log if "Rate to High" or "Negative Rate"
* remove redundant data logging
* .
* .
* update time also in case of an error
* move calculation of difference to the top as discussed in PR 1839
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Heap tracing (#1861)
* Update sdkconfig.esp32cam-dev-task-analysis.defaults
* Update defines.h
* Update platformio.ini
* Update main.cpp
* Update defines.h
* Update ClassFlowCNNGeneral.cpp
* Update platformio.ini
* disable HIMEM (external > 4mb ram) not used (#1864)
#force disable HIMEM as not used in default config, can be enabled with [env:esp32cam-dev-himem]
#free 256kb of internal memory :
#I (2112) esp_himem: Initialized. Using last 8 32KB address blocks for bank switching on 4352 KB of physical memory.
CONFIG_SPIRAM_BANKSWITCH_ENABLE=n
#CONFIG_SPIRAM_BANKSWITCH_RESERVE is not set
* Update ota_page.html (#1866)
Fixed the firework to match the actual button text.
Fixed other random typos.
* add AlignmentAlgo=off option (#1867)
* Replace outdated wiki links, wording (#1871)
* Revert "add AlignmentAlgo=off option (#1867)" (#1876)
This reverts commit 3de4cc7c56.
* fixed typo (#1881)
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Show WIFI signal text labels / Log RSSI value to logfile (#1877)
* Overview: WIFI RSSI strength text labels
* Log RSSI value (debug level)
* Typo
* Update config.ini (#1880)
* Update Changelog.md for release (#1892)
Co-authored-by: github-actions <github-actions@github.com>
* Update Changelog.md
* Remove newline in version (#1891)
* remove newline in version
* .
* .
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: CaCO3 <caco@ruinelli.ch>
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
Co-authored-by: Nicolas Liaudat <nliaudat@users.noreply.github.com>
Co-authored-by: AngryApostrophe <89547888+AngryApostrophe@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@github.com>
* fix special case where number is named "default" (keep all topics in top level instead of in a sub-group)
* re-implemented SNTP usage, added way to disable NTP client, added timezone table
* minor fixes
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* comment translation
* translation part #2
* code translation from DE to ENG #part3
* translation #4
* dismantled =>splitted
* bereich => range
* Update defines.h
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
* defines changes
* Finish #define move + #define STBI_ONLY_JPEGsave 2% of Flash
* remove the defines on the old places
* ClassFlowCNNGeneral in define.h
* revert to origin
* fix translation not ready
* modify mqtt init at startup + after disconnection
* mqtt_init only when not initialized
* Minor udapte
* Apply suggestions from code review
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
* Correct typo
Co-authored-by: CaCO3 <caco3@ruinelli.ch>
* slow down constant reboots caused by the flow. With this, after a restart due to exception/panic the first round gets delayed by 5 minutes
* catch empty reference images
* .
Co-authored-by: CaCO3 <caco@ruinelli.ch>
* Updated the web Installer page, removed all redudnant files in the docs folder, updated the main README
* .
* consolidate the 2 identical ZerlegeZeile() function and move it to Helper.cpp and add workaround for whitespace and equal sign in password fields
* remove redundant code in HelperZerlegeZeile()
* Updated the web Installer page, removed all redudnant files in the docs folder, updated the main README
* .
* consolidate the 2 identical ZerlegeZeile() function and move it to Helper.cpp and add workaround for whitespace and equal sign in password fields
* remove redundant code in HelperZerlegeZeile()
* HTML: implement data viewer
* Correct CSV error
* Improve OTA
* Use consistent Log TAG syntax, name TAG variable the same in every file.
* .
* .
* .
* .
* .
* Update server_tflite.cpp
* Correct CSV error
* Improve OTA
* Use consistent Log TAG syntax, name TAG variable the same in every file.
* .
* .
* .
* .
* .
* Update server_tflite.cpp
* .
* .
* .
* .
* .
* .
* .
* .
Co-authored-by: jomjol <30766535+jomjol@users.noreply.github.com>
* manual re-creation of #1246
* removed non-working approach to get interval
* postpone the MQTT service start until the ClassFlowControll::ReadParameter() gets called
* Increase the max_uri_handlers to 35 (was 30)
* removed newlines in logs
* added parameter to UI
* Register handler to re-start MQTT Discovery
* fix param
* Temporarily disable data file writing as it can cause crashs, see https://github.com/jomjol/AI-on-the-edge-device/issues/1225
* removed edit function in graph as we don't need that in a release
* .
* improve log viewer
* replaced logfile enable/disable with enum to select log level. At least errors always will be logged (as before)
* .
* .
* colorize log
* scroll down
* improve log reload