This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Versioning and example projects (SimpleBLEPeripheral)

Other Parts Discussed in Thread: CC2650

My current project has me working on a CC2650. I want to take the SimpleBLEPeripheral example project, import it and modify it so that it will become a template for any BLE peripheral project I have. The catch is that I want to use Git to version this template project.

When I import the project, despite checking the "Copy projects into workspace", there is not a single c file under my project directory. I need all of the c files to be in the project directory so it can be versioned properly. Is there some trick to do this? Or do I need to manually relocate everything?

I wonder how others handle this problem with the CC2650 projects? I am only asking this in the BLE forum because I do not know if other example projects are configured similarly.

  • Hello,

    Since all of our BLE stack projects share common components at both the app and the stack layer, we generally don't heap everything into one folder. The CCS and IAR build systems are also setup using the existing folder structure. I understand that git expects everything to be centralized, so I understand how you seem to be stuck. Are you working on Linux or Windows? In linux, you could create softlinks to the shared files in a different folder. It appears that this is also possible in Windows (but I have not tested) stackoverflow.com/.../git-symlinks-in-windows
  • Also possibly use a build script that moves the files around for versioning?
  • Thank you for your answers. I am not sure they are things that help the issue as much as I like. I am still working on figuring out exactly what is needed. All of the header files point to the original project location inside of the bluetooth stack (there is not actually a single c or h file that ends up being imported). I think it is typical to have some portion of the toolchain outside of the versioned code. Its hard for me to imagine a way that it would be more difficult to get properly configured, especially because there are so many instances where I am not sure what code can/should be code that I would change, versus library code that probably should not be customized.

    I noticed a few other oddities as well like the CCS project included a file that was under the IAR directory. I don't mean to complain, but that is really costing me quite a bit of time and while I understand the arguments for code reuse, it seems like there are some better ways this could be achieved in the future. Maybe it would be better to include a script in the installation that is either run as part of the installation or is packaged with the installation that would generate the .cproject files and directory structure in a way that is a little more usable.

    I am still working on it a bit, so I will follow up on it when I finish getting it configured to my satisfaction.