
Closed
Posted
I’m building the low-level firmware for an ARM Cortex-A microcontroller and need help closing the remaining gaps in startup code, peripheral configuration, and board-level testing. The toolchain is already in place (GCC, OpenOCD, and a J-Link probe), and the hardware boots, but several peripherals still need clean, maintainable drivers and the overall initialization sequence must be tightened for reliable production use. You’ll dive into: • Writing or refactoring C/C++ startup routines, linker scripts, and BSP code specific to this Cortex-A device • Bringing up UART, SPI, GPIO, and a high-speed interface that feeds data to an upstream processor • Tracing hard faults with JTAG/SWD and delivering concise root-cause notes so I can reproduce your findings • Packaging the finished source so it builds with a single Make/CMake command and runs from power-on without manual intervention Acceptance criteria • Code compiles without warnings on the current GCC version and fits within allotted flash/RAM • Peripherals enumerate and exchange test data exactly as described in the reference manual (I’ll provide scope captures for comparison) • Every function touched or created is documented with Doxygen-style comments When you send your bid, focus on your experience with comparable Cortex-A or similar high-performance ARM bring-ups—brief war stories or links to public repositories are perfect. I value clean code, reproducible steps, and clear communication over a long equipment list. Let’s get this board fully alive and ready for the next milestone.
Project ID: 40568421
88 proposals
Remote project
Active 2 days ago
Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
88 freelancers are bidding on average $34 USD/hour for this job

Hi I am an embedded systems engineer with over 16 years of experience in ARM board bring-up, low-level C/C++ firmware, startup code, linker scripts, BSP work, and production-ready peripheral drivers. I have worked on similar Cortex-A and high-performance ARM platforms where the board was already booting, but the remaining work was making the initialization deterministic, cleaning up UART/SPI/GPIO drivers, validating timing against scope captures, and chasing hard faults through JTAG/SWD until the root cause could be reproduced cleanly. I am comfortable with GCC, Make/CMake, OpenOCD/J-Link workflows, warning-free builds, memory map constraints, and Doxygen-style documentation without turning the code into something hard to maintain. Most comparable bring-up projects I have done are for commercial products and cannot be shared publicly, but I can discuss relevant examples privately, including cases involving startup sequence fixes, linker/RAM placement issues, and high-speed data handoff to an upstream processor. A few useful details before starting would be the exact Cortex-A part, whether the high-speed interface is custom or standard, and how much of the current BSP should be preserved versus refactored. I can help close the firmware gaps, package the build for one-command reproducibility, and support board-level test notes for production handoff. Please contact me to discuss details.
$50 USD in 20 days
7.6
7.6

Since 2003 I am working in Digital Electronic. So more than 18 years of experience in Electronics. Arduino NANO/UNO/MEGA, ESP32 and Raspberry PI to build a digital device to read sensor data and send it to the web server, motor control, control relay switches and LEDs. More than 5(five) years of experience in Arduino design and build. If you want an excellent and error-free project delivery, then send a message to me, please. Have more than 10(years) years of experience in C/C++ to build Windows/Linux applications and micro-controller firmware building. If you want a good job delivery, then send a message to me, please. Since 1995 I have been working on Analog and Digital Electronics to build any kind of device. I have build lots of devices. So more than 20 years of experience on Electronics. Including power supply design. Any kinds of schematic and PCB design. Expert PCB design in EasyEDA Pro IDE.
$38 USD in 40 days
7.4
7.4

Hi, I can help bring your ARM Cortex-A platform to a stable production-ready state. I have experience with embedded C/C++, ARM-based systems, BSP development, peripheral bring-up, UART, SPI, GPIO, boot initialization, and debugging using JTAG/SWD tools. I focus on writing clean, well-documented, and maintainable code with reliable startup sequences and efficient driver implementation. I can help identify and resolve initialization issues, debug hard faults, and deliver a buildable project with clear documentation and reproducible testing. I look forward to discussing your hardware and project requirements.
$38 USD in 40 days
7.4
7.4

Dear , We carefully studied the description of your project and we can confirm that we understand your needs and are also interested in your project. Our team has the necessary resources to start your project as soon as possible and complete it in a very short time. We are 25 years in this business and our technical specialists have strong experience in C Programming, Electronics, Microcontroller, Software Testing, C++ Programming, Debugging, ARM, Embedded Systems and other technologies relevant to your project. Please, review our profile https://www.freelancer.com/u/tangramua where you can find detailed information about our company, our portfolio, and the client's recent reviews. Please contact us via Freelancer Chat to discuss your project in details. Best regards, Sales department Tangram Canada Inc.
$30 USD in 5 days
6.5
6.5

Hi, Your project requires a solid Cortex-A bring-up, with reliable startup code, BSP development, peripheral initialization, and systematic debugging to achieve a stable production-ready firmware. With 12+ years of embedded systems experience, I have developed low-level firmware for ARM-based platforms, including startup routines, linker scripts, BSPs, UART, SPI, GPIO, DMA, and high-speed interfaces using GCC, OpenOCD, J-Link, and GDB. I can efficiently diagnose hard faults through JTAG/SWD, deliver clean, maintainable C/C++ code with Doxygen documentation, and ensure the project builds reproducibly with Make/CMake while meeting memory and performance constraints. My focus is robust initialization, reliable peripheral operation, and a smooth transition from prototype to production-ready firmware. Regards, Engineer Muhammad Usman PCB Pro Expert
$38 USD in 40 days
6.8
6.8

Hello, Your project aligns well with my embedded firmware experience. My primary background is with ARM Cortex-M platforms, where I've developed low-level firmware, BSPs, and peripheral drivers in C/C++. One of my recent projects was a beer tank temperature control system based on an ARM Cortex-M MCU. I handled firmware architecture, startup, peripheral initialization, and communication interfaces. I have extensive experience with STM32CubeMX, STM32CubeIDE, the GCC toolchain, J-Link/OpenOCD, and debugging through JTAG/SWD. My experience includes UART, SPI, GPIO, DMA, interrupt-driven firmware, BSP development, startup code, Make/CMake builds, and writing clean, maintainable code with Doxygen documentation. While Cortex-A introduces additional features such as MMU and cache management, I'm comfortable studying reference manuals, bringing up new hardware, and systematically debugging initialization and fault issues. I value clean code, reproducible workflows, and clear communication, and I'd be glad to help make your board boot reliably and prepare it for production. If possible, could you share the board schematic (or the relevant sections)? It would help me better understand the hardware and estimate the remaining bring-up work. Best regards, Bachana
$38 USD in 40 days
6.5
6.5

Hi, Thanks for sharing the detailed requirements. I can help bring the Cortex-A firmware to production-ready quality, including startup code, linker script cleanup, BSP initialization, peripheral drivers, and board-level debug using GCC, OpenOCD, and J-Link. My experience includes low-level ARM bring-up, C/C++ embedded firmware, Make/CMake build systems, UART/SPI/GPIO drivers, memory-map setup, interrupt/vector table configuration, linker scripts, boot-time initialization, and JTAG/SWD hard-fault debugging. I focus on clean, maintainable code with reproducible test steps rather than quick patches. My approach would be to first review the current source tree, startup sequence, linker map, reference manual, board schematic, and current fault/peripheral status. Then I would tighten the initialization flow, refactor or write the missing drivers, verify peripheral data exchange against your scope captures, and document any root causes clearly so the results are repeatable. Final delivery will include warning-free source code, Doxygen-style comments for touched/new functions, single-command build support, concise debug notes, and test instructions for power-on validation. Regards,
$25 USD in 40 days
5.8
5.8

Hi, how are you doing? I went through your project description and I can help you in your project. your project requirements perfectly match my expertise. We are a team of Electrical and Electronics engineers, we have successfully completed 1000+ Projects for multiple regular clients from OMAN, UK, USA, Australia, Canada, France, Germany, Lebanon and many other countries. We are providing our services in following areas: Antenna Design (CST, HFSS) Embedded C Programming. VHDL/Verilog, Quartus/Vivado, LabVIEW/ Multisim/PSPICE/VLSI MATLAB/SIMULINK Network Simulator NS2/NS3 Microcontroller like Arduino, Raspberry Pi, FPGA, AVR, PIC, STM32 and ESP32. IDEs like Keil MDK V5, ATmel studio and MPLab XC8. PLCs / SCADA PCB Designing Proteus, Eagle, KiCAD and Altium IOT Technologies like Ethernet, GSM GPRS. HTTP Restful APIs connection for IOT Communications. Also, we have good command over report writing, I can show you many samples of our previous reports. Kindly consider us for your project and text me so that we can further discuss specifically about your project's main goals and requirements.
$38 USD in 40 days
5.9
5.9

HI, KINDLY READ THROUGH MY PROPOSAL I will complete the low-level firmware for your ARM Cortex-A board, tightening startup code, implementing clean peripheral drivers, and ensuring reliable power-on behavior. MY APPROACH ✅ Phase 1: Review and refactor startup routines, linker scripts, and BSP for robust initialization. ✅ Phase 2: Develop or polish drivers for UART, SPI, GPIO, and the high-speed interface with test validation. ✅ Phase 3: Debug hard faults via JTAG/SWD, document findings, and package everything for easy build/run. RELEVANT PROJECTS - Multiple Cortex-A (and similar high-performance ARM) board bring-ups with custom BSP, peripheral drivers, and production-ready initialization. - Projects involving J-Link/OpenOCD debugging, linker scripts, and Doxygen-documented code for embedded systems. DELIVERABLES - Clean, commented C/C++ source with Makefile/CMake build - BSP and peripheral drivers with test code - Documentation and hard-fault analysis notes QUESTIONS 1. Can you share the current codebase or specific device (e.g., exact Cortex-A model) and reference manual excerpts? 2. Any particular high-speed interface details or scope captures available? 3. Preferred coding style or existing framework in the project? Ready to start immediately. I have extensive experience with Cortex-A bring-ups on GCC toolchains and can deliver maintainable, production-quality code quickly. Looking forward to getting your board fully operational.
$25 USD in 40 days
6.2
6.2

⭐⭐⭐⭐⭐ Hi, Your project aligns well with my experience bringing up ARM-based embedded platforms from early hardware validation through production-ready firmware. I’ve worked on BSP development, startup code, linker scripts, peripheral drivers, and board bring-up for Cortex-class MCUs using GCC, OpenOCD, J-Link, and Make/CMake workflows. For your board, I'll review and refine the startup sequence, linker configuration, clock and memory initialization, then implement or clean up UART, SPI, GPIO, and the high-speed interface while keeping the code modular and maintainable. I'll also debug hard faults using JTAG/SWD, identify root causes, and provide concise documentation so every issue is reproducible. Deliverables include warning-free builds, Doxygen-documented source, clean BSP architecture, reproducible build scripts, and a firmware package that boots reliably from power-on without manual intervention. I'll validate peripheral behavior against your reference manual and supplied scope captures before handoff. My focus is writing firmware that's easy to maintain, well documented, and ready for future expansion—not just making the hardware work once. I'd be happy to discuss your Cortex-A device, current BSP status, and remaining bring-up tasks to get the board production-ready.
$38 USD in 40 days
5.1
5.1

Hi, I work for Qualcomm company and using openocd and Jlink probe with script to connect to speicifc hardware. I am a very low-level guy working with board bring up and BSP support. I spend 90% of my working time on RTOS programming. I am very interested in your project and look forward to hearing from you. Best, Oleksandr
$38 USD in 40 days
5.3
5.3

Re: Cortex-A Firmware Development My initial assessment for finalizing the low-level firmware for your Cortex-A board suggests a stack using clean, maintainable C for the drivers and a modular CMake build system for easy integration. I have direct experience implementing low-level peripheral driver development. For instance, on a past project, I successfully developed and debugged the bare-metal firmware for a custom STM32-based board, including writing interrupt-driven SPI drivers from scratch and optimizing the linker script to fit within tight memory constraints. I propose the following key steps: 1. Review existing startup code and linker scripts, then implement robust, Doxygen-documented drivers for UART and GPIO to establish a solid baseline for debugging. 2. Bring up the SPI and high-speed interfaces, validating data exchange against your specs, and then package the entire project for a one-command CMake build. Happy to elaborate on my approach. Regards, Anton K.
$25 USD in 7 days
4.2
4.2

Hi, I'm confident in tackling your Cortex-A firmware development challenges. With experience in ARM microcontrollers and solid C programming skills, I specialize in refining startup code, debugging via JTAG/SWD, and peripheral driver development. Your need for clean, maintainable UART, SPI, GPIO drivers alongside a tightly integrated initialization sequence aligns perfectly with my background. I will ensure your firmware compiles cleanly with GCC, fits memory constraints, and meets the documented testing and Doxygen standards. Let's schedule an initial review of the current codebase, aiming to close your firmware gaps efficiently and reliably. Could you share the specific Cortex-A model and any existing BSP code you want enhanced or refactored? Thanks,
$25 USD in 37 days
4.3
4.3

Hello There! I’m Md Toriqul Islam, and I’m excited to partner with you. I can dive into your project immediately. I’m an experienced embedded systems developer with expertise in ARM Cortex architectures, C/C++, firmware development, and low-level hardware bring-up. I understand you need support completing a Cortex-A firmware bring-up, including startup code, linker scripts, BSP refinement, peripheral drivers, JTAG/SWD debugging, and a reliable power-on initialization sequence. I’ll deliver clean, maintainable, well-documented code that builds with a single Make/CMake command and satisfies your production-ready acceptance criteria. I have rich experience in ARM Cortex, embedded C/C++, GCC, OpenOCD, J-Link, BSP development, and low-level debugging. I am skilled in C/C++, ARM firmware, linker scripts, UART, SPI, GPIO, JTAG/SWD, and Doxygen documentation. I’m ready to start immediately and would be happy to discuss this project. Looking forward to hearing from you. Best regards, Md Toriqul Islam
$25 USD in 40 days
4.4
4.4

Hi, As an Automation and Systems Engineer with deep experience in low-level ARM architectures and bare-metal firmware, I can quickly refine your startup sequence and deliver production-ready drivers for your Cortex-A board. Key Deliverables: 1. Startup & Linker Scripts: Refactoring routines, managing memory maps, and ensuring a stable, standalone power-on boot. 2. Peripheral Drivers: Developing clean, register-level drivers (UART, SPI, GPIO) and optimizing the high-speed link via DMA/FIFOs. 3. Debugging & Toolchains: Tracing hard faults via J-Link/OpenOCD, integrating the build into a single CMake/Make command, and adding Doxygen comments. I am highly familiar with handling MMU/cache alignment nuances on high-performance ARM cores and deliver warning-free, tightly optimized code. I can complete this entire bring-up and verification within 10 to 14 days. Ready to review your register maps and code base to start immediately. Best regards, Zakaria L.
$40 USD in 40 days
4.2
4.2

Hi, this is Kris from McKinney, Texas, I've reviewed your project requirements and understand that you are looking for assistance in finalizing the low-level firmware for an ARM Cortex-A microcontroller. The key challenges include refining startup code, configuring peripherals, and ensuring reliable board-level testing for production use. My approach involves diving into writing or refactoring startup routines, configuring peripherals such as UART, SPI, and GPIO, tracing hard faults with JTAG/SWD, and packaging the source for seamless building and execution. A few additional questions: Q1: Could you provide more details on the specific Cortex-A device being used? Q2: Are there any specific test cases or scenarios that you would like to prioritize during the development process? Q3: How do you prefer to handle communication and updates throughout the project? Best regards, Kris Kramer
$40 USD in 40 days
3.7
3.7

Hi, I can support your Cortex-A firmware bring-up by tightening startup code, linker scripts, BSP initialization, peripheral drivers, debugging, and board-level test flow. The best solution is to first review your current GCC/OpenOCD/J-Link setup, boot sequence, linker script, BSP code, memory map, reference manual, and failing peripherals. Then I’ll refactor the startup path, clean up initialization, bring up UART, SPI, GPIO, and the high-speed interface, and verify data exchange against your expected scope/reference outputs. I’m comfortable with ARM Cortex-A firmware, C/C++, startup routines, linker scripts, BSP development, GCC builds, Make/CMake, JTAG/SWD debugging, OpenOCD, J-Link, hard-fault tracing, peripheral register configuration, and Doxygen-style documentation. Deliverables will include: * Startup code review/refactor * Linker script cleanup * BSP initialization fixes * UART/SPI/GPIO driver support * High-speed interface bring-up * Hard-fault root-cause notes * Warning-free GCC build * Make/CMake build setup * Doxygen-style comments * Board-level test notes I’ll focus on clean, reproducible, production-ready firmware that builds in one command, runs from power-on reliably, and is easy to maintain for the next hardware milestone. Best regards Ankit
$25 USD in 40 days
3.6
3.6

Hi, I've gone through your requirements for the Cortex-A Firmware Development and I'm confident we can help you close the remaining gaps and get your board fully operational. We specialize in building robust low-level firmware and custom systems, so tackling startup code, peripheral drivers for UART, SPI, GPIO, and high-speed interfaces, along with board-level testing and hard fault tracing, is right in our wheelhouse. We'll ensure the code is clean, maintainable, well-documented with Doxygen, and builds reliably with a single command, just as you've specified. We're rated 4.88★ across 905 client reviews. Milestone C. from the United States said: "Exceeds their goals." when we worked on a similar API functional testing project, which highlights our ability to deliver on complex technical requirements. What does a successful production-ready initialization sequence look like from your perspective? Best regards, the Team
$45 USD in 15 days
3.3
3.3

Hi there, I've taken a close look at your Cortex-A Firmware Development project and I'm confident I can help you close the gaps in startup code, peripheral configuration, and board-level testing. With my background in C and C++ programming, as well as experience working with microcontrollers and electronics, I'm well-suited to tackle the remaining work on your ARM Cortex-A microcontroller. I'd like to start by reviewing your existing codebase and toolchain, which you've already set up with GCC, OpenOCD, and a J-Link probe. From there, I can begin writing or refactoring the necessary C/C++ startup routines and linker scripts to get your peripherals up and running with clean, maintainable drivers. Let's discuss how I can help you get your firmware production-ready - what are your top priorities for this project?
$25 USD in 7 days
3.3
3.3

This project comes down to three key areas: a robust boot sequence, reliable peripheral bring-up, and a maintainable BSP that can be carried forward into production. I can help close the remaining gaps in the startup code, linker configuration, peripheral drivers, and board initialization so the system boots and operates consistently from power-on. My approach is to first verify the boot flow and memory layout, then bring each peripheral online with testable, modular drivers while validating behavior against the reference manual and hardware measurements. For any hard faults or instability, I'll use JTAG/SWD debugging to isolate the root cause, document the findings, and implement fixes that are reproducible and easy to maintain. Before getting started, I'd like to clarify a few details: 1. Which Cortex-A device and vendor platform are you using? 2. Is there an existing BSP or SDK that must be maintained, or should the code remain as lightweight as possible? 3. What is the high-speed interface between the Cortex-A and the upstream processor? Once these details are confirmed, I can review the current codebase and recommend the most suitable implementation strategy. I look forward to discussing your project.
$25 USD in 40 days
3.1
3.1

Dallas, United States
Payment method verified
Member since Jul 6, 2026
$30-250 USD
₹400-750 INR / hour
₹12500-37500 INR
$15-25 USD / hour
₹1500-12500 INR
₹1500-12500 INR
₹12500-37500 INR
£250-750 GBP
$10-30 USD
$250-750 USD
€250-750 EUR
$250-750 USD
min $50 USD / hour
₹1500-12500 INR
$25-50 USD / hour
₹12500-37500 INR
$14-100 NZD
₹1500-12500 INR
₹100-400 INR / hour
$30-80 USD