Recent Releases of OpenDTU
OpenDTU - v25.4.10
π Fixes
π Web Application
π Under the hood
- feat(WebApi_prometheus.cpp): dynamically adjust the initial response buffer size
- Merge branch 'pr2633' into dev
- Slight optimization in bug report template
- Use the right format string on a lot of locations
- Make setLed method compatible with Arduino Framework 3
- Use correct signature for getMaxResendCount
- Remove not required parameters from MqttSubscribeParser
- Give reconnect more time
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 17 days ago

OpenDTU - v25.4.2
π Features
π Fixes
- Fix: Disable SPI3_HOST with ESP32-S2 for SpiManager
- Fix: web console: prevent concurrent websockets
- Fix: disable temperature readings for ESP32-S3
π Web Application
- webapp: Update dependencies
- webapp: Update dependencies
- webapp: show precise data age for inverters and introduce and use DataAgeDisplay component
- webapp: Update dependencies
- webapp: beautify controls on web console view
- webapp: remove (more) colons from forms
- webapp: add app.js.gz
π Under the hood
- Implement a more strict issue and pr policy
- Upgrade ESP32Async/ESPAsyncWebServer from 3.6.2 to 3.7.0
- Upgrade olikraus/U8g2 from 2.36.2 to 2.36.4
- Apply automatic code formatting
- Add partition file for 8MB devices
- Change datatype for led pins from int8_t to gpio_num_t
- Change datatype for nrf24 pins from int8_t to gpio_num_t
- Change datatype for cmt pins from int8_t to gpio_num_t
- Change datatype for w5500 pins from int8_t to gpio_num_t
- Change datatype for eth pins from int to gpio_num_t
- Make pinmapping variable const
- Move all display related initialization inside the display class
- Change datatype for display pins from uint8_t to gpio_num_t
- Move SpiManager registration into PinMapping class
- Upgrade ESP32Async/ESPAsyncWebServer from 3.7.0 to 3.7.3
- Update bblanchon/ArduinoJson from 7.3.0 to 7.3.1
- Upgrade olikraus/U8g2 from 2.36.4 to 2.36.5
- Upgrade ESP32Async/ESPAsyncWebServer from 3.7.3 to 3.7.4
- Simplify code for sunset calculation
- Simiplify code for CommandQueue
- Simplify code of weekday calculation
- Less calculation in locked code area
- Simplify Display Graphic code
- Added device profile for Olimex ESP32-POE and CMT2300A module
- Reduce nested code by one level
- Call getLocalTime() only once to prevent a delay of 10ms if no time is available
- Simplify code in radio classes
- Updated all languages to latest status
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 25 days ago

OpenDTU - v25.2.3
π Features
π Fixes
π Web Application
π Under the hood
- Use new name for ESPAsyncWebServer
- Move network reconfiguration to main loop to prevent crashes
- Merge branch 'pr2513'
- Added greek language pack
- Harmonise all language packs
- Upgrade ESP32Async/ESPAsyncWebServer from 3.6.0 to 3.6.2
- Update espressif32 from 6.9.0 to 6.10.0
- Manually applied latest changes in PR #2509
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 3 months ago

OpenDTU - v25.1.14
π Features
- Feature: show hint if device profile missing or not selected
- Feature: New handling of command queue
- Feature: Set Limit transfer only to "OK" if the queue does not contain any more commands
- Feature: Show inverter status and current power in overview (if multiple inverters are available)
- Feature: Detect if inverter supports 'Power Distribution Logic'
- Feature: Add support for HERF-600 inverters
π Fixes
- Fix comment
- Fix: Really always execute the generate of the factory.bin file
- Fix: need to skip BOM also when migrating config
- Fix: Remove temperature readings for ESP32-S2 modules
- Fix: Auto reboot was not triggered on pin mapping change
- Fix: Wifi.begin was called with wrong parameters
- Fix: Uptime overflow after ~50 days
- Fix lint errors
- Fix: Hint regarding required device profile is shown for profiles which don't need a device profile
- Fix: Syntax error in defines
π Web Application
- webapp: fix line break for reload button
- webapp: avoid undefined serial for InputSerial
- webapp: Update dependencies
- webapp: improve styling of hints on home view
- webapp: Update dependencies
- webapp: Update dependencies
- webapp: Update dependencies
- webapp: Update dependencies
- webapp: add app.js.gz
π Under the hood
- Make function getClientId const
- Organize includes
- Remove not required string generation
- Use correct variable
- change markdown table to github style
- Update README.md
- add Sum of DC Powrr
- Feature:: Added support for HMS-450 inverters which begin with 1400
- Upgrade ESPAsyncWebServer from 3.3.22 to 3.3.23
- Update bblanchon/ArduinoJson from 7.2.0 to 7.2.1
- Upgrade ESPAsyncWebServer from 3.3.23 to 3.4.0
- Upgrade ESPAsyncWebServer from 3.4.0 to 3.4.1
- Upgrade ESPAsyncWebServer from 3.4.1 to 3.4.2
- Show totals in blue and producing inverters in green
- Disable queue debugging
- Update bblanchon/ArduinoJson from 7.2.1 to 7.3.0
- Remove extra semikolon
- Merge branch 'pr2421' into dev
- Merge branch 'pr2420' into dev
- Upgrade ESPAsyncWebServer from 3.4.2 to 3.6.0
- Update nrf24/RF24 from 1.4.10 to 1.4.11
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 3 months ago

OpenDTU - v24.11.7
π Features
- Feature: Refactor config management interface
- Feature: Allow custom language pack for webapp
- Feature: Added spanish language pack
- Feature: Added italian language pack
- Feature: Implement language pack support for display texts
- Feature: Added spanish display translation
- Feature: Added italian display translation
- Feature: Added device info for HMS-700
- Feature: Validate JSON before uploading
π Fixes
- Fix: cpplint errors
- Fix: Take DST into account when recalculating the sunrise sunset time
- Fix: Lint Error
- Fix: skip BOM in JSON files (pin_mapping and config)
- Fix lint errors
π Web Application
- webapp: Use global AlertResponse interface
- webapp: Allow upload of language packs
- webapp: Added global reboot wait screen
- webapp: Rename interface to prevent lint errors
- webapp: Fix: WaitRetstartView showed basic auth dialog
- webapp: Update dependencies
- webapp: right-align labels for inputs on non-sm viewports
- webapp: last table row shall have no bottom border
- webapp: remove table's bottom margin
- webapp: add gap between inverter selectors
- webapp: avoid inline style in inverter channel info card
- webapp: equalize style of cards with tables in live view
- webapp: use reasonable name for radio stats accordion
- webapp: align table headers with card headers
- webapp: apply card-table class to info view cards
- webapp: adjust look of tables in accordions to live view cards
- webapp: beautify radio statistics reset button
- webapp: fix inverter "add" and "save order" button positions
- webapp: optimize spacing on bottom of cards
- webapp: MQTT: use v-if in favor of v-show
- webapp: MQTT: no login with cert if TLS disabled
- webapp: avoid inline style for inverter channel info value
- webapp: properly space alert with hint for hostname
- webapp: optimize look of firmware update cards
- webapp: inverter advanced tab needs space at the top
- webapp: optimize look of login page
- webapp: optimize body bottom padding and length
- webapp: consistently use no colon in form labels
- webapp: optimize placement of device profile doc buttons
- webapp: show pin mapping categories as cards
- webapp: device manager: optimize cards for tab nav
- webapp: always scroll up when navigating to another view
- webapp: fix inverter selection button breaking
- webapp: declare emitted event in FormFooter component
- webapp: Update dependencies
- webapp: add app.js.gz
π Under the hood
- Update UpgradePartition.md
- Update nrf24/RF24 from 1.4.9 to 1.4.10
- Upgrade ESPAsyncWebServer from 3.3.16 to 3.3.17
- Rename config API to file API
- Refactor file handling API and add endpoint to delete files
- Add API endpoint to retrieve custom languages and complete language pack
- Move lookup for translation path to separate method
- Check if language pack metadata are valid
- add and use configuration write guard
- Rewrite display language handling to work with locale strings instead of magic numbers.
- Added README.md to lang folder
- Upgrade ESPAsyncWebServer from 3.3.17 to 3.3.21
- Merge branch 'pr2328' into dev
- keep console.log() when serving webapp
- Remove not required include
- Replace multiline print by printf
- Remove not required include
- Merge branch 'pr2360' into dev
- Upgrade ESPAsyncWebServer from 3.3.21 to 3.3.22
- Build factory.bin in every compile attempt
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 6 months ago

OpenDTU - v24.10.15
π Features
π Fixes
π Web Application
- webapp: pin assignment: hide unsupported pins
- webapp: Update dependencies
- webapp: Update dependencies
- webapp: Update dependencies
- webapp: add app.js.gz
π Under the hood
- massage file handling
- Update patch_apply.py
- Don't set TX timeout to 0 anymore for HW/USB CDC
- Merge branch 'pr2340' into dev
- Merge branch 'pr2115' into dev
- Hotfix to not use DMA on SPI3 of ESP32-S2
- Merge branch 'pr2344' into dev
- Upgrade ESPAsyncWebServer from 3.3.12 to 3.3.13
- Upgrade ESPAsyncWebServer from 3.3.13 to 3.3.14
- Upgrade ESPAsyncWebServer from 3.3.14 to 3.3.15
- Upgrade olikraus/U8g2 from 2.35.30 to 2.36.2
- Upgrade ESPAsyncWebServer from 3.3.15 to 3.3.16
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 6 months ago

OpenDTU - v24.10.6
π Fixes
π Web Application
π Under the hood
- Remove EMAC related code for devices that don't have one
- Initialize the last rssi value with -127 instead of 0 to indicate a non existing connection of no data was received yet
- Merge branch 'pr2333' into dev
- Upgrade ESPAsyncWebServer from 3.3.11 to 3.3.12
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 7 months ago

OpenDTU - v24.10.5
π Features
π Web Application
π Under the hood
- Upgrade ESPAsyncWebServer from 3.3.7 to 3.3.11
- Rename NetworkEventCbList_t to DtuNetworkEventCbList_t for further upgrades
- Replace format strings by platform independent macros
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 7 months ago

OpenDTU - v24.10.2
π Fixes
π Under the hood
- Upgrade ESPAsyncWebServer from 3.3.1 to 3.3.7
- Remove icon because device_class is set
- Remove unused DEVICE_CLASS_TEMP
- Merge branch 'pr2322' into dev
- Merge branch 'pr2323' into dev
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 7 months ago

OpenDTU - v24.9.30
π Fixes
- Fix: avoid deprecated setAuthentication() to fix memory exhaustion
- Fix: force websocket clients to authenticate
π Web Application
π Under the hood
- issue template: fix typo
- Add connection check for W5500 before full initialization
- Prevent warning on GPIO ISR service registration
- Adjust name of OpenDTU Fusion v2 PoE build environment
- Add device profiles for OpenDTU Fusion v2 PoE with displays
- Merge branch 'pr2311' into dev
- Merge branch 'pr2320' into dev
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 7 months ago

OpenDTU - v24.9.27
π Fixes
π Web Application
π Under the hood
- Remove unnecessary CMT SPI inversions
- Remove unnecessary delays
- Implement W5500 support
- Add SpiManager library
- Optimize CMT FIFO access
- Change cmt_spi3 implementation from C to C++
- Add Arduino SPI translation
- Use SpiManager for nRF, CMT and W5500
- Use shared SPI bus for CMT and W5500
- Only use a single SPI device for CMT
- Merge branch 'pr2306' into dev
- Apply license headers and automatic code formatting to SpiManager
- Apply automatic code formatting
- Added device profile for OpenDTU Fusion v2 PoE
- increase chunkSizeWarningLimit for webapp build (#1287)
- Rename NetworkEventCb to DtuNetworkEventCb to prevent further upgrade issues
- Add default values for ethernet pins in case they are not defined for a specific board
- Take care of different signature of ETH.begin method in Arduino Core 3.x
- Added required include to work with IDF 5
- Update espressif32 from 6.8.1 to 6.9.0
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 7 months ago

OpenDTU - v24.9.26
π Features
- Feature: Allow reset of radio statistics via mqtt
- Feature: Publish Radio statistics to home assistant
- Feature: Publish YieldTotal, YieldDay and Power of all inverters to Home Assistant
- Feature: Allow reset of radio statistics via WebApp
π Fixes
π Web Application
- webapp: Update dependencies
- webapp: Apply auto format
- webapp: Update dependencies
- webapp: add app.js.gz
π Under the hood
- Optimize MQTT subscription handling
- Move inverter housekeeping tasks inside the InverterAbstract class
- MQTT Hass: Change char* to String&
- MQTT Hass: Rename caption parameter to name
- MQTT Hass: Change parameter order for publishInverterSensor
- MQTT Hass: Change parameter order for publishDtuSensor
- MQTT Hass: Make publish methods static
- MQTT Hass: Change parameter order for publishDtuBinarySensor
- MQTT Hass: Change parameter order for publishInverterButton
- MQTT Hass: Change parameter order for publishInverterNumber
- MQTT Hass: Harmonise parameter names
- MQTT Hass: Remove no more required checks
- MQTT Hass: Move publishBinarySensor logic into separate method
- MQTT Hass: Reorder binary sensor methods
- MQTT Hass: Move publishSensor logic into separate method
- MQTT Hass: Move yield into the publish method
- MQTT Hass: Add device_type and category to publishInverterBinarySensor
- MQTT Hass: Reorder defines
- MQTT Hass: Move serialization and allocation check into own method
- MQTT Hass: Append dtu prefix topic for each single sensor
- MQTT Hass: Implement category as enum instead of String
- MQTT Hass: Implement device class as enum instead of String
- MQTT Hass: Implement method to add common metadata to json output
- Embed current branch into building process
- Slight adjustments to github bug_report template
- Upgrade github actions/checkout to v4
- GitHub Build Action: Automatically generate littlefs image
- Simplify network callback handling
- Simplify inverter handling
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 7 months ago

OpenDTU - v24.9.23
π Fixes
- Fix: Unable to CMT transmit power in WebApp
- Fix: Restart was triggered before all website data was sent
π Web Application
π Under the hood
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 7 months ago

OpenDTU - v24.9.22
π Features
π Fixes
- Fix: Wrong topic in home assistant auto discovery for maxalloc and minfree
- Fix: Saving DTU config values just returned "Values are missing"
π Web Application
π Under the hood
- Github Action: Update node version from 20 to 22
- Publish ESP heap and temperature details on MQTT
- Merge branch 'pr2293' into dev
- Publish temperature only if its not NAN
- Added icon to radio statistics
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 7 months ago

OpenDTU - v24.9.21
π Fixes
π Web Application
π Under the hood
- actions: enable corepack to use fixed version of yarn
- Update bblanchon/ArduinoJson from 7.1.0 to 7.2.0
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 7 months ago

OpenDTU - v24.9.20
π Features
π Web Application
- webapp: Update dependencies
- webapp: update dependencies
- webapp: Update dependencies
- webapp: Upgrade tsconfig node18 to node22
- webapp: Parse version string event if update search is not allowed
- webapp: Update dependencies
- webapp: add app.js.gz
π Documentation
π Under the hood
- Add serial prefix 1410 to HMS_2CH inverters
- Output WiFi disconnect reason in console
- Upgrade ESPAsyncWebServer from 3.1.2 to 3.2.0
- Upgrade olikraus/U8g2 from 2.35.19 to 2.35.21
- Upgrade arkhipenko/TaskScheduler from git #testing to 3.8.5
- Upgrade ESPAsyncWebServer from 3.2.0 to 3.3.1
- Upgrade olikraus/U8g2 from 2.35.21 to 2.35.27
- issue template: asks for firmware variant
- actions: use setup-node@v4 as v3 causes warning
- actions: switch to node version 20 for linting
- actions: run yarn prettier to check web app formatting
- actions: fix a typo
- changelogs: group webapp-related changes
- Upgrade olikraus/U8g2 from 2.35.27 to 2.35.30
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 7 months ago

OpenDTU - v24.8.5
π Fixes
π Under the hood
- Added hint in issue template that HMS-xxxW inverters are not supported
- Fixed documentation for webapp dev mode
- webapp: update dependencies
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 9 months ago

OpenDTU - v24.8.1
π Features
π Fixes
π Under the hood
- Update wt32-eth01.json
- Update AlarmLogParser.cpp
- Increase stack size for MQTT task due to SSL handshake
- Merge branch 'pr2117' into dev
- Merge branch 'pr2099' into dev
- webapp: update dependencies
- webapp: Add Autoformatter
- webapp: Apply auto formatter
- Merge branch 'pr2035' into dev
- Merge branch 'pr2168' into dev
- webapp: update dependencies
- Upgrade ESPAsyncWebServer from 2.10.8 to 3.1.2
- Update bblanchon/ArduinoJson from 7.0.4 to 7.1.0
- Update nrf24/RF24 from 1.4.8 to 1.4.9
- Merge branch 'pr2109' into dev
- Update espressif32 from 6.7.0 to 6.8.1
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 9 months ago

OpenDTU - v24.6.29
π Features
π Fixes
π Under the hood
- avoid using pkg_resources
- webapp: Check if temperature is set
- webapp: Update dependencies
- Better handling of empty MQTT client id
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 10 months ago

OpenDTU - v24.6.10
π Features
- Feature: show ESP32 flash memory size in system info
- Feature: Show MCU temperature in system info
- Feature: Add option to clear eventlog at midnight
π Fixes
- Fix #2000: MQTT subscriptions where not updated if MQTT base was changed
- Fix: Apply inverter settings only once and not for each channel
- Fix: Wrong divider in gridprofile RVHF
π Under the hood
- Typos de.json translation
- Update espressif32 from 6.6.0 to 6.7.0
- Code Refactoring: Add inverter reference to each command
- Code Refactoring: Use internal inverter instance in gotTimeout method
- Code Refactoring: Use internal inverter instance in handleResponse method
- Merge branch 'pr1974' into dev
- Merge branch 'pr2015' into dev
- webapp: Locale update for "screensaver"
- Add proper formatting for flashsize output
- Use correct units in hardware info
- webapp: Remove duplicated code
- Added some missing names to grid profile parser
- webapp: Remove no more required locale
- Upgrade espMqttClient from 1.6.0 to 1.7.0
- Upgrade ESP Async WebServer from 2.9.5 to 2.10.0
- Added parser documentation
- NFC: Includes list: Remove unneeded PinMapping.h
- Merge branch 'pr2022' into dev
- Remove no more required async_tcp patch
- check FW bin file size when creating factory.bin
- Merge branch 'pr2025' into dev
- Upgrade ESP Async WebServer from 2.10.0 to 2.10.3
- webapp: update dependencies
- Upgrade ESP Async WebServer from 2.10.3 to 2.10.5
- Changed issue template to make clear that issues are bugs that affect all users
- Upgrade ESP Async WebServer from 2.10.5 to 2.10.6
- webapp: update dependencies
- Upgrade ESP Async WebServer from 2.10.6 to 2.10.8
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 11 months ago

OpenDTU - v24.5.6
π Fixes
π Under the hood
- Prevent compiling the whole project on each commit.
- Use fixed versions for all dependencies
- Upgrade ESP Async WebServer from 2.9.3 to 2.9.4 and set ASYNC_TCP_QUEUE_SIZE to 128 for different Async TCP library
- webapp: update dependencies
- Upgrade build action to support node 20
- Upgrade olikraus/U8g2 from 2.35.17 to 2.35.19
- Merge branch 'pr1920' into dev
- webapp: update dependencies
- Upgrade ESP Async WebServer from 2.9.4 to 2.9.5
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] 12 months ago

OpenDTU - v24.4.24
π Fixes
- Fix: Return 404 (and nothing else) if file not found
- Fix: Device Manager shows 404 if no pin_mapping.json was available
π Under the hood
- Upgrade ESP Async WebServer from 2.9.0 to 2.9.3
- Upgrade olikraus/U8g2 from 2.35.15 to 2.35.17
- webapp: update dependencies
- Updated timezone config
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 1 year ago

OpenDTU - v24.4.12
π Features
- Feature: Migrated ArduinoJson 6 to 7
- Feature: Check for out of memory situations when sending json responses
π Fixes
- Fix include for TimeoutHelper
- Fix: Setting DTU options was only possible once without reboot
- Fix: Too small event_queue_size in AsyncTCP lead to wdt reset
- Fix: If unauthenticaed, the redirect to login page did not work
π Under the hood
- Move source files for TimeoutHelper to correct directories
- Move source files for ThreadSafeQueue to correct directories
- Save flash: Move WebApi json parsing to separate method to prevent a lot of redundant code
- Update espressif32 from 6.5.0 to 6.6.0
- Upgrade ESP Async WebServer from 2.8.1 to 2.9.0
- Move parsing of serial from web request to separate method
- remove remaining usage of F() macro
- Merge branch 'pr1909' into dev
- webapp: update dependencies
- webapp: Fix lint errors
- Remove no more required web server patch
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 1 year ago

OpenDTU - v24.3.31
π Fixes
- Fix: Change default NTP server
- Fix: Re-Request grid profile parameters if received data are invalid / to short
π Under the hood
- better alignment inverter, issue 360
- webapp: update dependencies
- Added github workflow to do some repository cleanup
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 1 year ago

OpenDTU - v24.3.22
π Fixes
π Under the hood
- webapp: update dependencies
- webapp: update dependencies
- Upgrade olikraus/U8g2 from 2.35.14 to 2.35.15
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 1 year ago

OpenDTU - v24.3.15
π Features
- Feature: Added description for alarm id 152
- Feature: Add support for HERF inverters
- Feature: Allow enabling and disabling of the version check
π Fixes
- Fix: Prevent hiding text on display if it's too long
- Fix: Exclude hardware part number 124097 from valid part numbers.
- Fix: Show firmware update tooltip only if newer version available
- Fix: Don't throw exception if git_hash is not set
- Fix: Set all settings to default when deleting an inverters
- Fix: Correct detection of Hoymiles serial if it contains hex characters
- Fix: Updated source comments to also match hex numbers
π Under the hood
- webapp: update dependencies
- webapp: Fix typo
- webapp: update dependencies
- webapp: update dependencies
- Remove deprecated extension recommendation
- Merge branch 'dev-herf' into dev
- webapp: update dependencies
- Upgrade olikraus/U8g2 from 2.35.9 to 2.35.10
- webapp: Remove not required cast to string
- Upgrade olikraus/U8g2 from 2.35.10 to 2.35.14
- Upgrade ESP Async WebServer from 2.7.0 to 2.8.1
- webapp: update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 1 year ago

OpenDTU - v24.2.16
π Under the hood
- Bump actions/cache from 3 to 4
- Bump actions/setup-python from 4 to 5
- Added second HMS-450 to DevInfoParser
- Update de.json
- Upgrade espMqttClient from 1.5.0 to 1.6.0 and ESPAsyncWebServer to a more maintained version
- Added HMT-2000 to DevInfoParser
- Merge branch 'pr1746' into dev
- Added HMS-300 to DevInfoParser
- webapp: update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 1 year ago

OpenDTU - v24.2.12
β‘ Breaking Changes
- BREAKING CHANGE: Web API Endpoint /api/livedata/status
- BREAKING CHANGE: Web API Endpoint /api/livedata/status and /api/prometheus/metrics
- BREAKING CHANGE: Web API Endpoint /api/livedata/status and /api/prometheus/metrics
- BREAKING CHANGE: Web API Endpoint /api/livedata/status and /api/prometheus/metrics
π Features
- Feature: Added support for boards with 16MB flash and PSRAM
- Feature: Added pin-mapping for LILYGO T-ETH-Lite
π Fixes
- Fix: Calculate the AC current for 3 phase inverters correctly
- fix #1668
- Fix: Guru Meditation (StoreProhibited) when saving DTU settings
- Fix: make text of total production fit displays
π Documentation
π Under the hood
- Removed not required pointer to AsyncServer instance
- fixed typo in OTA text
- Use http header ETag caching for all static content.
- fix(mqtt): MQTTs LWT QoS config used also for TLS connections
- fix(mqtt): setting MQTT LWT online message for frontend
- Merge branch 'pr1706' into dev
- Merge branch 'pr1642' into dev
- Remove all files but the pin_mapping.json from filesystem on factory reset
- Rename internal variables and methods
- Merge branch 'pr1693' into dev
- webapp: update dependencies
- Add AhoyDTU Pinout
- Merge branch 'pr1728' into dev
- webapp: Add link to documentation in about view
- make efficient use of available display area
- implement oscillating screensaver
- Merge branch 'pr1729' into dev
- Merge branch 'pr1731' into dev
- Merge branch 'pr1732' into dev
- Apply automatic code formatting
- webapp: update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 1 year ago

OpenDTU - v24.1.26
π Features
π Documentation
- Doc: Move partition migration to official documentation
- Doc: Move display documentation to official documentation
- Doc: Migrated needed hardware info to official documentation
- Doc: Remove deprecated documentation
π Under the hood
- Call SunPosition.isDayPeriod() once
- Merge branch 'pr1676' into dev
- webapp: update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 1 year ago

OpenDTU - v24.1.21
π Features
- Feature: Automatic page reload after firmware upgrade
- Feature: Implement firmware update check is a opt-in to protect your privacy
- Feature: Added device profile for Olimex ESP32 Gateway
π Fixes
π Under the hood
- webapp: Fix font-feature class
- webapp: Fix typo
- webapp: Introduce Modal component
- webapp: Move interfaces to seperate file
- webapp: Use CardElement in InverterTotalInfo
- Don't perform redundant conversions
- Move the conversation from time_t to String into DevInfoParser
- Migrate WebApi loop() methods to scheduler tasks
- Move task initialization from init method to constructor
- simplify calculations in WebApi_ws_Live
- Remove unused function parameter
- webapp: update dependencies
- webapp: Fix lint errors
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v24.1.18
π Fixes
- fix #1649
- fix count being a string
- Fix: Gridprofile dump contained the whole buffer instead of the actual length
π Under the hood
- webapp: Prefix Country with CMT2300A
- Update bblanchon/ArduinoJson from 6.21.4 to 6.21.5
- webapp: Remove redundant main container
- webapp: Vertically center Header/Logo Text
- webapp: Reduce wasted horizontal space for better mobile UX
- webapp: Correctly center header text
- webapp: update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v24.1.14
π Features
- Feature: Added pull to refresh and websocket indicator
- Feature: add heap details to system info and prometheus (#595)
- Feature: Added option to disable the diagram at the display
- Feature: Added fullscreen diagram to display
- Feature: Add current limit to prometheus output
- Feature: Support HMS/HMT inverters in different countries with different frequency bands
π Under the hood
- webapp: add missing button spacing
- Added .editorconfig
- Allow multiple patch directories per environment
- Merge branch 'pr1611' into dev
- Sort recommend extensions by name
- refactor webapp/utils/time
- Rename define CMT_BASE_CH_OFFSET860 to CMT_BASE_CH_OFFSET
- Migrate all frequency calculations to Hz
- webapp: Remove hard coded min/max frequencies for CMT module
- Merge branch 'pr1639' into dev
- Create separate definition for the 860MHz band of the CMT2300A
- Move HOY_BOOT_FREQ from define to function
- Added frequency and command definitions for the 900 MHz band (North America)
- Distinct between Band and Country
- webapp: update dependencies
- Added const keywords
- Change default target frequency for US and BR
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v24.1.4
π Fixes
- Fix: define _TASK_THREAD_SAFE for TaskScheduler
- Fix: Optimize network connection handling
- Fix: Access Point not working after firmware update
π Under the hood
- Merge branch 'pr1598' into dev
- Prevent config corruption by checking whether memory allocation was successfull.
- Prevent empty HASS auto discovery topics if memory allocation fails
- Better handling of out of memory situations in live data websocket
- Use Utils::checkJsonAlloc in ConfigurationClass
- Use auto keyword and references more often
- webapp: update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.12.31
π Features
π Documentation
π Under the hood
- Upgrade olikraus/U8g2 from 2.35.8 to 2.35.9
- remove obsolete save button texts in french locale
- Added the SSD1309 display to several device profiles
- Merge branch 'pr1602' into dev
- webapp: update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.12.28
π Features
π Under the hood
- webapp: update dependencies
- Simplfy diagram drawing code
- Update espressif32 from 6.3.2 to 6.5.0
- webapp: update dependencies
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.12.24
π Features
π Under the hood
- http response header tag 'ETag' needs quotes.
- NFC: Use std::size() instead of define.
- Add const keyword to variable
- Move the diagram in Y direction if screen saver mode is turned on
- webapp: update dependencies
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.12.19
π Features
π Fixes
- Fix: Reset Yield day correction in combination with Zero Yield Day on Midnight lead to wrong values.
- Fix: Allow negative values in GridProfileParser
- Fix #1579: Static IP in Ethernet mode did not work correctly
π Under the hood
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.12.18
π Fixes
- Fix: Offset cache for "YieldDay" did not work correctly
- Fix: yarn.lock was outdated
- Fix: yarn build error
π Under the hood
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.12.17
π Features
π Fixes
- Fix: Remove debug output as it floods the console
- Fix: Gridprofileparser: Add additional error handling if profile is unknown
π Under the hood
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.12.16
π Features
- Feature: Allow configuration of LWT QoS
- Feature: Implement offset cache for "YieldDay"
- Feature: High resolution Icon and PWA (Progressive Web App) functionality
- Feature: Added ability to change the brightness of the LEDs
- Feature: Added basic Grid Profile parser which shows the used profile and version
- Feature: First version of GridProfile Parser which shows all values contained in the profile.
- Feature: Allow setting of an inverter limit of 0% and 0W
- Feature: Allow links in device profiles
- Feature: Added DeviceProfile for CASmo-DTU
π Documentation
- Doc: Correct amount of MPP-Tracker
- Doc: Added byte specification to each command
- Doc: Added hint regarding HMS-xxxx-xT-NA inverters
π Under the hood
- Optimize Sun data calculation
- Remove not required enum
- Split config struct into different sub structs
- Made resetreason methods static
- Add Esp32-Stick-PoE-A
- remove broken LilyGO_T_ETH_POE config, use device profile instead
- webapp: Update dependencies
- Initialize TaskScheduler
- Migrate SunPosition to TaskScheduler
- Migrate Datastore to TaskScheduler
- Migrate MqttHandleInverterTotal to TaskSchedule
- Migrate MqttHandleHass to TaskScheduler
- Migrate MqttHandleDtu to TaskScheduler
- Migrate MqttHandleInverter to TaskScheduler
- Migrate LedSingle to TaskScheduler
- Migrate NetworkSettings to TaskScheduler
- Migrate InverterSettings to TaskScheduler
- Migrate MessageOutput to TaskScheduler
- Migrate Display_Graphic to TaskScheduler
- Migrate WebApi to TaskScheduler
- Split InverterSettings into multiple tasks
- Calculate SunPosition only every 5 seconds
- Split LedSingle into multiple tasks
- Upgrade espMqttClient from 1.4.5 to 1.5.0
- Added HMT-1600-4T and HMT-1800-4T to DevInfoParser
- Adjusted inverter names for HMS-1600/1800/2000-4T
- Add channel count to description of detected inverter type (DevInfoParser)
- Adjust device web api endpoint for dynamic led count
- webapp: Update dependencies
- Update olikraus/U8g2 from 2.35.7 to 2.35.8
- Remove not required onWebsocketEvent
- Remove code nesting
- Introduce several const statements
- Remove not required AsyncEventSource
- Optimize AlarmLogParser to save memory
- Add libfrozen to project to create constexpr maps
- webapp: Update dependencies
- Apply better variable names
- Remove not required casts
- Add additional compiler flags to prevent errors
- Add const statement to several variables
- Replace NULL by nullptr
- Update bblanchon/ArduinoJson from 6.21.3 to 6.21.4
- Add const keyword to method parameters
- Add const keyword to methods
- Use references instead of pointers whenver possible
- Adjust member variable names in MqttSettings
- Adjust member variable names in NetworkSettings
- webapp: Update timezone database to latest version
- webapp: Beautify and unify form footers
- Merge branch 'pr1505' into dev
- Upgrade actions/upload-artifact from v3 to v4
- Upgrade actions/download-artifact from v3 to v4
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.11.15
β‘ Breaking Changes
π Features
- Feature: Added additional event log descriptions and implemented i18n
- Feature: Support HMT-1600/1800/2000-4T
π Fixes
- Fix #1440: Add CSS code to stop numbers changing the size of their container
- Fix #1456: Prevent white spaces in username field
- Fix: Power not set to 0 when not reachable at EOD
- Fix: build action fails due to ModuleNotFoundError: No module named 'pkg_resources':
π Documentation
- Doc: Add class description for inverters
- Doc: Add additional breaking changes
- Doc: Fix readme syntax errors
- Doc: Add hint regarding wiki
π Under the hood
- Compute sunrise and sunset only if necessary.
- Remove SUNPOS_UPDATE_INTERVAL define and introduce INVERTER_UPDATE_SETTINGS_INTERVAL.
- NFC: Call PinMapping.get() not every iteration.
- Rename "DTU command failed" to "Time calibration" as mentioned in #121
- Merge branch 'pr1406' into dev
- Merge branch 'pr1408' into dev
- Apply automatic code formatting
- webapp: Update dependencies
- Set dnsServerStatus first to prevent running
- Remove duplicated code
- Implemented mDNS
- Merge branch 'pr1441' into dev
- Adjusted inverter names
- Upgrade actions/checkout from v3 to v4
- Upgrade actions/setup-node from v3 to v4
- Build webapp using nodejs v20
- webapp: Update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.10.9
π Features
π Fixes
- Fix: Deny passwordless access to prometheus API if readonly access is disabled
- Fix #1405: Add some border around icons when in multi line mode
π Under the hood
- Added additional ID for HMS-900 to DevInfoParser
- Init all data members befor pushing it into the buffer
- webapp: Update dependencies
- Update nrf24/RF24 from 1.4.7 to 1.4.8
- Update olikraus/U8g2 from 2.35.4 to 2.35.7
- Added additional ID for HMS-1000 to DevInfoParser
- webapp: Update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.9.18
π Features
π Under the hood
- webapp: Rename Fehlernummer to ID
- Replace char array by String buffer
- Initialize variables before first usage
- webapp: Update dependencies
- Revert espressif32 from 6.4.0 back to 6.3.2
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.9.11
π Features
- Feature: webapp: Move inverter settings into different tabs
- Feature: Added config option to change MQTT CleanSession Flag
- Feature: Allow setting of the Reachable Threshold per inverter
- Feature: Added option to set runtime values to zero when inverter becames unreachable
- Feature: Add configured max irradiation to live data api
- Feature: Added option to set daily yield to zero at midnight
- Feature: First very basic support to read the grid profile
π Fixes
- Fix: Workaround: Don't allow memory intensive web functions in parallel
- Fix: Check if valid data was received from websocket before assigning it
- Fix: Better reconnect handling in Live View if invalid data where received
- Fix: Do not resend fetch limit request if the last one failed
- Fix: Ignore incomplete SystemConfigPara packages
- Fix: HASS exp_aft should be based on reachable threshold and poll interval
π Under the hood
- Upgrade espMqttClient from 1.4.4 to 1.4.5
- Update espressif32 from 6.3.2 to 6.4.0
- webapp: Update dependencies
- Simplify debug output
- Convert from FreeRTOS Semaphore to std::mutex
- Replace platform dependent variable types by platform independent
- Publish mqtt string stats values periodically if they are set to zero if unreachable
- webapp: Use max field to determine whether to show a string or not
- webapp: Update dependencies
- Hoymiles Lib: Move semaphore handing into parser base class
- Completly ignore a disabled (polling + command) inverter.
- webapp: Update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.8.28
π Features
- Feature: Re-Request DevInfo if it contains invalid data
- Feature: Turn off LEDs before reboot
- Feature: Turn off Display before reboot
π Under the hood
- Added a pin profile where the nrf24 module can be soldered directly.
- Move different restart calls into one method
- webapp: Update dependencies
- Merge branch 'pr1271' into dev
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.8.22
π Fixes
- Fix issue #1256 (HMS-2000-4T reactive power should be signed)
- Fix: Calculate the json buffer for the inverter list based on INV_MAX_COUNT
π Under the hood
- make vite proxy target easily configurable
- Update de.json
- Update en.json
- Merge branch 'pr1229' into dev
- webapp: Update default proxy ip
- webapp: Update dependencies
- Merge branch 'pr1257' into dev
- Prometheus Endpoint: Publish only relevant amount of digits
- Prometheus Endpoint: Simplify code by looping over fields instead of duplicated code
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.8.8
π Fixes
π Under the hood
- Replace template by abstract class
- Use lock_guard to simplify code
- webapp: Update dependencies
- webapp: Fix lint error
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.8.3
π Fixes
- Fix: Ensure that only completly assembled packets are put into the command queue
- Fix: Prevent access to nullptr object when reconnecting to mqtt
- Fix: Virtual console scrambled output when the output came from different contexts
π Under the hood
- Implement the command queue thread safe
- cpplint: do not complain mutex include
- webapp: Update dependencies
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.8.1
π Fixes
- Fix: Uninitliazed variable used before first use
- Fix: Prevent wrong values of statistics data because of non-atomic transaction
- Fix: Prevent wrong values of alarm data because of non-atomic transaction and fix calculation of getEntryCount()
- Fix: Prevent wrong values of systemconfigpara data because of non-atomic transaction
- Fix: Prevent wrong values of devinfo data because of non-atomic transaction
- Fix: Clear parser buffers to prevent random numbers if no data was received
π Under the hood
- webapp: Update dependencies
- Update bblanchon/ArduinoJson from 6.21.2 to 6.21.3
- Update olikraus/U8g2 from 2.35.3 to 2.35.4
- webapp: Update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] over 1 year ago

OpenDTU - v23.7.22
π Features
- Feature: Show error in webapp if pin_mapping.json contains syntax errors
- Feature: Admin AccessPoint Timeout now configurable
π Fixes
- Fix: Set WiFi setScanMethod and setSortMethod also on first connect
- Fix: Reboot loop if negative display pins and type where provided
- Fix: Prevent runtime errors in webapp when invalid pin_mapping.json is provided
π Under the hood
- webapp: Update dependencies
- Update olikraus/U8g2 from 2.34.22 to 2.35.3
- Reorder config struct components
- Harden config parser by defining right unsigned data type
- Apply code formatter without functional changes
- Code formatting without functional changes
- Formatting style in platformio.ini
- Move units from description to postfix for AP timeout
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] almost 2 years ago

OpenDTU - v23.7.10
π Features
π Fixes
π Under the hood
- webapp: Update dependencies
- use FSPI for esp32-c3 and revise device profiles
- Merge branch 'pr1003' into dev
- Update espressif32 from 6.3.1 to 6.3.2
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] almost 2 years ago

OpenDTU - v23.6.26
π Features
π Under the hood
- Ajout de traductions en FranΓ§ais
- Device Profile for Wemos Lolin32 OLED
- webapp: Update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] almost 2 years ago

OpenDTU - v23.6.21
π Fixes
π Under the hood
- Added new found HMS-400 to DevInfoParser
- webapp: Update dependencies
- Allow the non-existence of the HOYMILES_PIN_ defines
- Pre-Compile a new generic esp32 binary without any pin config.
- Pre-Compile a new generic esp32s3 binary without any pin config.
- webapp: Update dependencies
- Update olikraus/U8g2 from 2.34.18 to 2.34.22
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] almost 2 years ago

OpenDTU - v23.6.9
π Features
- Feature: Show BSSID in the web interface
- Feature: Publish BSSID via MQTT
- Feature: Publish BSSID via prometheus
- Feature: Only require one binary file for initial flashing
π Fixes
- Fix: Lint Error: Almost always, snprintf is better than strcpy
- Fix: Do not publish leading blanks in MQTT payload
- Fix: String numbers for HMT inverters are mirrored
π Documentation
π Under the hood
- First try to output some dBm info for the NRF module
- Removed duplicate code by moving it into the radio base class
- Added additional exception handler to also show unknown exceptions in live data api endpoint
- webapp: Update dependencies
- Always use a latest patch level of the softprops/action-gh-release
- Update espressif32 from 6.3.0 to 6.3.1
- Update nrf24/RF24 from 1.4.5 to 1.4.7
- Update olikraus/U8g2 from 2.34.17 to 2.34.18
- Add separate property to platformio.ini to control the environments built by github actions
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] almost 2 years ago

OpenDTU - v23.5.31
π Features
- Feature: Allow configuration of sunset type
- Feature: Added new found HMS-900 to DevInfoParser
- Feature: Allow reordering of the inverters in the live view
- Feature: DeviceProfile: Added display sample to WT32-ETH01
π Fixes
- Fix: Filter incoming packages from CMT module for the right destination address
- Fix: Doublecheck if the MutiDataCommand begins with the correct ID
- Fix: Prevent partly calculated total data in web ui and display
π Under the hood
- Added post build script to generate a .factory.bin file
- webapp: Update dependencies
- Upgrade espMqttClient from 1.4.2 to 1.4.3
- Added possible description for alarm code 73
- webapp: Update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] almost 2 years ago

OpenDTU - v23.5.22
π Features
π Under the hood
- webapp: Update dependencies
- Add new log location to .gitignore
- Implement global data store to handle all invert total values
- Use the new data store in the graphic display class.
- webapp: Update dependencies
- Upgrade platform-espressif32 from 6.1.0 to 6.3.0
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] almost 2 years ago

OpenDTU - v23.5.9
π Features
- Feature: Added new found HMS-2000 to DevInfoParser
- Feature: Added new found HMS-600 to DevInfoParser
- Feature: Add used PIO environment to the system info page
- Feature: Added new found HMS-1600 to DevInfoParser
π Under the hood
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] almost 2 years ago

OpenDTU - v23.5.3
π Fixes
- Fix: README.md: change binary download instructions
- Fix: Source does not build with platform >= 6.2.0
- Fix: No OpenDTU startup of CDC (like Pico or ESP32-S3) devices if no usb host is connected
π Under the hood
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] almost 2 years ago

OpenDTU - v23.4.28
π Fixes
- Fix: xSemaphoreTake was useless
- Fix: webapp console: Only add the date at the beginning if the last character was a newline
- fix typo in disply type for 1106
- fix SPI assignment across generations
π Under the hood
- Update README.md
- added some opendtu breakout board pictures
- added oepndtu breakout board to builds readme
- Update MQTT_Topics.md
- added opendtu breakout board to readme
- Merge branch 'pr842' into dev
- Merge branch 'pr847' into dev
- Merge branch 'pr846' into dev
- add openDTU v1 pinout device file
- add opendtufusion board
- improve opendtufusion ini
- add v2 opendtufusion
- avert SPI collision on S3/S2/C3
- try fix SPI driver for CMT
- remove non-sensical octa-spi setting in FIFO mode
- add device profile for opendtufusion
- webapp: Update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] almost 2 years ago

OpenDTU - v23.4.25
π Fixes
- Fix: MQTT topics ac/yieldday and ac/yieldtotal are swapped
- Fix: Queue consumed whole memory on inverter timeout
π Documentation
π Under the hood
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 2 years ago

OpenDTU - v23.4.24
β‘ Breaking Changes
π Features
π Fixes
- Fix: Device profile "Olimex ESP32-POE with SH1106" used wrong display type. Fix #825
- Fix: Possible crash when multiple tasks accessed the SPI bus
π Documentation
π Under the hood
- Optimize detection if RF module is configured
- Move auto_firmware_version.py to pio-scripts subdirectory
- Added functionality to apply custom patch files during building
- webapp: update dependencies
- Implement method as static
- Move byteAssignment to stack (avoid container) to save heap
- webapp: Update dependencies
- webapp: Enable stricter error reporting
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 2 years ago

OpenDTU - v23.4.17
β‘ Breaking Changes
π Fixes
π Documentation
π Under the hood
- Introduced HoymilesRadio property to determine if a configuration attempt was done
- Apply correct order to extension.json items
- Upgrade ArduinoJson from 6.21.1 to 6.21.2
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 2 years ago

OpenDTU - v23.4.15
General
This is the first version which supports the new HMS/HMT inverters. The documentation is still not perfect, so maybe you have to know what you are doing :-) Further improvements will come.
π Fixes
- fix typo
- Fix crash if radio settings where changed while the radio was not initialized
- Fix: Set correct frequency when changing it via web ui
- Fix: Change defines to get a correct calculation if base frequency of CMT module is different compared to Hoymiles base frequency
π Documentation
- Doc: Added sample device profile for CMT and NRF module
- Doc: Added new supported inverters
- Doc: Added some device profiles containing the CMT2300A pin assignment
- Doc: Added some remarks regarding the CMT2300A module
- Doc: Added MPP-Tracker count
π Under the hood
- vscode: Recommend additional extensions for development
- one more typo
- Merge branch 'pr805' into dev
- Added CMT2300 driver
- Added first implementation of HMS inverter classes
- Move reference to the radio instance into the inverter instance
- Add a HoymilesRadio base class
- Move serveral methods from the HoymilesRadio_NRF class to the HoymilesRadio base class
- Added HMS/HMT devices to the DevInfoParser
- Implement HoymilesRadio_CMT
- Add variable for max channel count (to extend serveral arrays)
- Replaced println by printf and code style changes
- Allow dynamic pin mapping for CMT module
- webapp: Show CMT pins in device manager
- First rough implementation of HMT inverters
- Set DTU serial for CMT modules
- Check that all RF modules as in idle mode before sending mqtt packages
- Simplify dumpBuf method in HoymilesRadio
- webapp: Added cmt radio status to system overview
- webapp: Adjusted radio problem hint in home view to detect problems of nrf and cmt radios
- Change max power limit from 1500W to 2250W to support HMS/HMT inverters
- Use TimeoutHelper for TX timeout
- Implement different Eventlog messages for HMT inverters
- Set CMT to 13dBm and added parameter values in plain text
- Increase CMT SPI speed to 4 MHz
- First step towards a modular CMT2300 driver similar to the NRF24 one
- Adjust name from CMT2300a to CMT2300A
- Move alarm messages from heap to stack
- Allow configuration of the TX PA Level of the CMT2300A module
- Introduce gpio2 for the CMT2300A module
- Adjusted some comments
- Implement cmtBaseChOff860 as a define
- Implement property in HoymilesRadio_CMT to set the frequency during runtime
- Added configuration of CMT modules frequency to webapp
- Add newline after log output
- Increase command timeouts to support inverters with 6 channels and more phases
- Expose min and max frequency in HoymilesRadio_CMT
- webapp: Nicer cmt frequency input
- Initialize spiClass only if valid pin config was found
- Set CMT frequency only if a valid pin config was found
- webapp: Implement CMT pa level as range control
- webapp: Remove hard coded texts in dtuadmin view
- webapp: Add hint to cmt frequency that it can take up to 15min until a connection is established
- Adjust buffer size in StatisticsParser for inverters with more inputs
- IsReachable of the inverter was never reached
- Implemented blocking write method in CMT2300 driver and use it in sendEsbPacket.
- Replace HOY_BASE_FREQ by CMT_BASE_FREQ
- Implement get and set channel in cmt2300 wrapper class
- Optimize cmtChToFreq method to return float instead of string. Renamed also to getFrequencyFromChannel
- Replace multiple print calls by a single printf in HoymilesRadio_NRF
- Rename cmtFreqToChan to getChannelFromFrequency and simplify handling of current channel
- Implement CMD56 as own command.
- Remove cmtProocess method and move RF logic into the cmt2300wrapper class
- Resend and Retransmit count is now implementable per command
- Send ChannelChangeCommand only once per cycle as the inverter will not response at all
- Enabled additional statistics data for HMT inverters
- webapp: Update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 2 years ago

OpenDTU - v23.4.12
π Features
π Fixes
- Fix: Use commit title to categorize commits in changelog
- fix: pa level didn't listen to language switching
- fix: display rotation didn't adapt language changes
- fix: broken hardware profile handling on lang switch
- Fix: src/WebApi_mqtt.cpp: typos in error messages
- Fix: Use correct tag_resolver for github changelog
π Documentation
π Under the hood
- webapp: added css table-responsive for lower resolutions
- Merge branch 'pr789' into dev
- webapp: Update dependencies
- src/WebApi_mqtt.cpp: rename function getRootCaCertInfo
- include/Configuration.h: rename MQTT_MAX_ROOT_CA_CERT_STRLEN
- Merge branch 'pr799' into dev
- Merge branch 'pr801' into dev
- webapp: Implement combo boxes again as objects
- webapp: Update dependencies
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 2 years ago

OpenDTU - v23.4.6
π Features
π Fixes
π Under the hood
- Upgrade ArduinoJson from 6.21.0 to 6.21.1
- Upgrade U8g2 from 2.34.16 to 2.34.17
- webapp: add app.js.gz
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 2 years ago

OpenDTU - v23.4.5
π Features
π Fixes
- Fix: Handle format "v0.1-5-gabcdefh" of git hash
- Fix: Replace spaces by underscores in platformio environment d1_mini_esp32 (#765)
π Under the hood
- webapp: Only cut first char of git_hash if it equals "g"
- Fix build workflow
- Test multpile commits
- Undo latest change
- Add MqttSubscribeParser, TimeoutHelper and ResetReason to cpplint
- Run automatic linting for the webapp
- webapp: add app.js.gz
- Merge remote-tracking branch 'github/master'
Renewable Energy - Photovoltaics and Solar Energy
- C++
Published by github-actions[bot] about 2 years ago
