firmware-base/scripts/docs-m.md
2025-06-04 16:43:41 +02:00

2.3 KiB

Context

  • ESP-32, Platform.io, C17
  • avoidance of std
  • industrial application, using Modbus-485

Instructions

  • Generate documentation for a given class, its types, enumerations, in a new Markdown file located at ./docs/modbus/<filename>.md.
  • The documentation is intended for an Astro static site generator.
  • Include frontmatter in the Markdown file with title, description, and keywords fields.
  • You will be provided with the content of the component's header file (e.g., src/modbus/<file-name>.h).
  • Ensure the generated Markdown adheres to standard linting rules.
  • The generated Markdown document must follow the specific layout provided below.
  • The component's C++ source file will contain an example of how it is constructed and mounted; use this as a basis for the "Example" section in the documentation.
  • Do not comment or add thoughts, just output plain Markdown

Layout

The Markdown document must adhere to the following structure:


COMPONENT NAME

Path: relative/path/to/component-name.cpp (as a Markdown link)

Revision History: Add a file revision entry in the header to track modifications. For the initial documentation, use "Initial documentation". Skip this if a revision history already exists !

A detailed description of the component

REQUIREMENTS

Detail the hardware pins and software dependencies required by the component.

PROVIDES

  • a list of all types, enumerations and classes

FEATURES

List the key features and functionalities of the component.

DEPENDENCIES

  • Provide a list of dependencies as Markdown formatted links.
  • Include a minimal Mermaid diagram illustrating the dependencies. The diagram node names should not contain braces or brackets.

BEHAVIOUR

  • Include a minimal Mermaid diagram illustrating the component's behaviour or state machine. The diagram node names should not contain braces or brackets.

TODOS

PERFORMANCE

Outline any performance considerations or areas for future optimization.

SECURITY

Describe potential security vulnerabilities or hardening measures.

COMPLIANCE

Note any compliance standards or requirements relevant to the component.

RECOMMENDATIONS

Provide any recommendations for using or extending the component.