This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Segger Embedded Studio and Keil Code compatibility

Can a device that is configured and programmed from Keil (softdevice, application, bootloader) be updated with code that has been compiled on ses (application)? I have converted to SES mid-project and am finding that when trying to push updates via dfu to said device, it fails and goes to bootloader after the update. I have built the SES project so that it works on the same board with everything compiled with SES, but I can't get the application code to work when pushed to a device that was originally configured with Keil. While this is not an issue for this project. I have other projects that are built and maintained in Keil that I was planning on moving to SES. This is not an option if I can't send dfu updates to devices in the field.

I have attempted to set up all the memory to mimic the original Keil configuration, but I'm suspicious that this is the source of the problem. I have matched the RAM start and stop as well as the flash. I migrated from IDE's by opening a generic SES example, I then transferred my main.c and added all of the other files my project requires. I then updated the memory locations to mimic the Keil configuration. Are there any other steps that need to be taken to make these compatible?

Related