Project overview
- This internship (PFE) aims to study and develop advanced incremental programming solutions for the STM32CubeProgrammer tool.
- The trainee will benchmark existing incremental programming solutions and compare them with the current ST solution to identify gaps and improvement opportunities.
Objectives & main tasks
- Define an enhancement strategy for the ST incremental programming solution based on the benchmarking results.
- Design and implement the technical solution to bring STM32CubeProgrammer to the level of the most advanced incremental programming implementations.
- Develop a graphical interface (JavaFX) supporting incremental programming in addition to improving the existing CLI solution.
- Enhance and extend the automatic test suite to cover the new/integrated incremental programming behavior.
Technical environment & keywords
- Technologies and platforms: STM32CubeProgrammer, STM32 microcontrollers, STLink, C++ and JavaFX for GUI development.
- Focus areas: incremental flashing algorithms, firmware update mechanisms, CLI and GUI integration, automated testing for flashing workflows.
Expected deliverables
- A benchmark report comparing existing incremental programming solutions with ST's current implementation, including proposed enhancement strategy.
- Implemented enhancements in STM32CubeProgrammer (code changes, algorithms) and a working JavaFX graphical interface that supports incremental flashing.
- Updated automatic test suite covering the developed features and validation reports demonstrating reliability and performance improvements.
Context & supervision
- Project listed as PFE Book STTunis 2026, identified as Project_ID15.
- The work involves close collaboration with ST teams responsible for STM32CubeProgrammer and firmware flashing/tooling experts.
Skills & candidate profile
- Strong C++ development skills; experience with Java/JavaFX for GUI development is required or highly desirable.
- Familiarity with embedded systems (STM32), STLink, firmware flashing/update procedures and automated testing frameworks is expected.
Notes
- The project includes both CLI and GUI development and requires extending automated tests to validate incremental programming behavior.
- Link to apply is provided separately.