STM32 High-Throughput Communication Firmware
Budget / SalaryHourly project
TypeFreelance project
LocationRemote
Posted2 hours ago
I’m building a high-speed communication interface on an STM32-based board and need production-ready firmware written in C/C++. The microcontroller is an ARM Cortex-M series device, and the single most important goal is to move packets through the interface as quickly and reliably as possible—latency can be modest as long as overall data throughput remains very high.
You will design and code the full communication stack, configure the peripheral clocks, DMA, interrupts, and buffering strategy, then expose a clean API that my application layer can call from RTOS or bare-metal. Low-level register work is fine, but you’re equally welcome to leverage STM32 HAL/LL or CubeMX if that accelerates development; the final code must compile under STM32CubeIDE or GCC-based Makefiles.
Deliverables
• Complete, well-commented source code and linker scripts
• A brief README describing clock tree, pin map, and how to integrate the API
• Keil/STM32CubeIDE or Makefile project so I can reproduce the build
• A test routine or loopback demo proving the stated throughput on the target clock frequency
Acceptance criteria
– Sustainable data rate meets the target we agree on after you review the board schematic
– No buffer overruns or data loss during a 10-minute continuous transfer test
– Code passes MISRA-C static analysis at “advisory” level or better (automatic checks are fine)
If you have prior results in DMA-driven UART/SPI/I²C, zero-copy queues, or ring-buffer design on STM32, please share a quick example in your proposal so I can gauge fit. I’m ready to get started as soon as we lock in protocol details and target throughput.
You will design and code the full communication stack, configure the peripheral clocks, DMA, interrupts, and buffering strategy, then expose a clean API that my application layer can call from RTOS or bare-metal. Low-level register work is fine, but you’re equally welcome to leverage STM32 HAL/LL or CubeMX if that accelerates development; the final code must compile under STM32CubeIDE or GCC-based Makefiles.
Deliverables
• Complete, well-commented source code and linker scripts
• A brief README describing clock tree, pin map, and how to integrate the API
• Keil/STM32CubeIDE or Makefile project so I can reproduce the build
• A test routine or loopback demo proving the stated throughput on the target clock frequency
Acceptance criteria
– Sustainable data rate meets the target we agree on after you review the board schematic
– No buffer overruns or data loss during a 10-minute continuous transfer test
– Code passes MISRA-C static analysis at “advisory” level or better (automatic checks are fine)
If you have prior results in DMA-driven UART/SPI/I²C, zero-copy queues, or ring-buffer design on STM32, please share a quick example in your proposal so I can gauge fit. I’m ready to get started as soon as we lock in protocol details and target throughput.
Apply on Freelancer →
Project sourced from Freelancer.com. Applications happen directly on the original platform — we never collect your data.