5 Replies Latest reply on Oct 16, 2017 8:44 AM by user_386836309

    PSOC Creator Hex Files Different

    user_386836309

      I have archived a PSOC Creator 4.1 project using the "Minimal" setting in order to create the minimal amount of files that I need to create a GIT repository. I then opened the archived zip file and copied the top level directory and its entire contents to a separate directory. In that new directory, I deleted the path ".\CortexM0\ARM_GCC_541\Release" which contains the output hex file. I also deleted the path ".\Generated_Source\PSoC4" which contains all of the generated source code. I then opened up this new project and clean and built the code. I then compared the original Intel hex file to the new hex file and discovered that the 2 files are significantly different.

       

      So I started again with the archive file and copied the entire contents to another new directory. In this new directory, I again deleted the path ".\CortexM0\ARM_GCC_541\Release" which contains the output hex file. But now, what I did was delete all of the files in the path ".\Generated_Source\PSoC4" which contains all of the generated source code but i did NOT delete the path (an empty directory ".\Generated_Source\PSoC4" still exists). I then opened up this new project and clean and built the code. I then compared the original Intel hex file to the new hex file and discovered that the 2 files are IDENTICAL.

       

      Can someone explain. Since our project will eventually become an FDA medical device, we need to be able to identically reproduce the Intel Hex file

       

      NOTE: I did not touch any of the default project settings.

        • 1. Re: PSOC Creator Hex Files Different
          user_78878863

          Can you compare the generated files (between your archive and what generated)? Also, are you building in debug mode? If so, the debug information could have references to the project paths, or time-stamps)

          • 2. Re: PSOC Creator Hex Files Different
            user_386836309

            I've built the code for the Release Configuration and the Debug Configuration with the same results. I would be shocked if the hex files (i.e. any linked library or object files) would have date/time stamps or project path info in them, but who knows.

             

            Given the above the test condition in my first post, I've done some further investigation and it seems as soon as one deletes the "generated source" path and rebuilds,  the .cyprj file changes dramatically.

            • 3. Re: PSOC Creator Hex Files Different
              jobi

              Hi,

              As per Hendrik's suggestion, please do a diff of the Generated_Source directories corresponding to the two different hex files. That might help in debugging the issue.

               

              Thanks

              Jobin GT

              • 4. Re: PSOC Creator Hex Files Different
                user_386836309

                Just did a comparison of the Generated Sources directory (with WinMerge) and all files are identical. It looks like the link order of the object files is changing and thus changing the hex file contents. I'm guessing the link order may be affected by changes to the .cyprj that is occurring. BTW: either hex file that is programmed on the target hardware works properly, but as noted previously, it is imperative that I can rebuild identical hex files for the FDA.

                • 5. Re: PSOC Creator Hex Files Different
                  user_386836309

                  I actually created a new project from scratch and performed the above test case and could NOT reproduce the failure. The Intel hex files were identical. Not sure if this has anything to do with the issue, but the project in question was upgraded several months ago from 4.0 to 4.1