Skip to content

Conversation

@ohAnd
Copy link
Owner

@ohAnd ohAnd commented Sep 13, 2025

This pull request introduces support for extracting and packaging detailed device and firmware information for multiple ESP32 variants, and automates the creation and distribution of "factory flash" packages with clear flashing instructions. It also adds a new protobuf definition for device information, updates versioning, and extends the DTUInterface to handle richer device metadata.

Factory Flash Packaging and Workflow Enhancements:

  • Added automated steps in both dev_build.yml and main_build.yml GitHub Actions workflows to create, document, and upload "factory flash" packages (ZIP archives) for ESP32, ESP32-S3, and ESP32-S3 16MB variants, including step-by-step flashing instructions for each hardware type. [1] [2] [3] [4] [5] [6]

Device Information Protocol and Data Structure Updates:

  • Introduced a new protobuf definition, APPInformationData.proto, and its nanopb options, enabling structured transfer of device, meter, and inverter information. [1] [2]
  • Updated the inverterData struct in dtuInterface.h to store DTU and inverter firmware versions, inverter model, and validity flags for this metadata, supporting richer device introspection.

DTUInterface API and State Machine Extensions:

  • Added new methods to DTUInterface for periodically requesting and parsing device information, formatting firmware versions, and mapping serial numbers to inverter models; also introduced a new state constant to manage waiting for application information responses. [1] [2] [3] [4]
  • Included the new protobuf header APPInformationData.pb.h in dtuInterface.h to support the new protocol features.

@ohAnd ohAnd merged commit 865baa8 into main Sep 13, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants