How openvvvf/rte works
RTE is a model-based motor-drive development toolchain: users edit a control graph, generate and insert code into a platform firmware image, build and flash it, then run the resulting control application. The README documents graph serialization and timing validation, code generation, Studio, automation and protocol capabilities; the sampled CLI source confirms orchestration of emission, building and flashing. Firmware evidence is partial, so runtime links are limited to documented capabilities and the sampled control, fault, command and startup modules.
Main entry points: Main.cpp RTE CLI · NodeGUI RTE Studio · RTECodeEmitter Firmware emitter · FocControlManager.cpp FOC control
Components 21
Graph design
- RTE Studio
Source/NodeGUI - Graph model
Lib/NodeAPI - Node templates
Assets/NodeTemplates - Example graphs
Assets/Examples - Timing validation
Lib/NodeAPI
Firmware generation
- C++ codegen
Lib/InverterCodegen - Firmware emitter
Source/RTECodeEmitter - Firmware builder
Source/RTEFirmwareBuilder
Host automation
- RTE CLI
Source/RTECLI/src/Main.cpp - Automation backend
Source/RTEAutomation - Device flasher
Source/RTEAutomation - Live device session
Source/NodeGUI - MCP interface
Source/RTECLI
Inverter firmware
- Base firmware
Images/Gen6FW - FOC control
Images/Gen6FW/Src/Inverter/Control/FocControlManager.cpp - Motor calibration
Images/Gen6FW - Fault manager
Images/Gen6FW/Inc/Inverter/Control/FaultManager.h - Shell commands
Images/Gen6FW/Src/Inverter/Command/CommandManager.cpp - Telemetry protocol
Lib/InverterProtocol
Other components
- Drive developer
- Motor-drive hardware
Connections 22
- Drive developer → RTE Studio: edits graph
- Drive developer → RTE CLI: runs automation
- RTE Studio → Graph model: edits model
- RTE Studio → Node templates: uses templates
- RTE Studio → Example graphs: opens graphs
- Graph model → Timing validation: validates timing
- RTE CLI → Timing validation: validates graph
- RTE CLI → Firmware emitter: runs emission
- Firmware emitter → C++ codegen: generates code
- Firmware emitter → Base firmware: inserts code
- RTE CLI → Firmware builder: runs build
- RTE CLI → Device flasher: requests flash
- RTE CLI → Automation backend: uses automation
- Device flasher → Motor-drive hardware: programs firmware
- Base firmware → FOC control: runs control
- FOC control → Motor calibration: uses calibration
- FOC control → Fault manager: raises faults
- Shell commands → Telemetry protocol: emits responses
- Motor-drive hardware → Telemetry protocol: sends frames
- RTE Studio → Live device session: manages live state
- Live device session → Motor-drive hardware: connects device
- RTE CLI → MCP interface: serves MCP