1 2 Previous Next 18 Replies Latest reply on Dec 14, 2016 8:28 AM by rdeisled

    Newbie help with EZ-BLE

    rdeisled

      I'm trying to get a sample app running on my new CYBLE-212019 evaluation board using Creator v3.2 and Programmer v3.25.0.  

         

      I selected a sample project for PRoC BLE device family (device information) and it builds just fine, apparently for CYBL10563-56LQXI.

         

      The programmer, PSoC MiniProg3, correctly identifies my device as 212019, but it complains that "The hex file does not match with the acquired device, please check the device".  

         

      Creator/Project/Device Selector offers me a bunch of parts, but none of them are 212019

         

      How do I map the Creator device selection to my 212019?  Or is the problem elsewhere?

         

      TIA, Richard

        • 1. Re: Newbie help with EZ-BLE
          user_1377889

          Welcome in the forum, Richard.

             

          I would suggest you to update Creator to latest version (4.0). This will enable the newer devices.

             

           

             

          Bob

          • 2. Re: Newbie help with EZ-BLE
            rdeisled

            Thanks Bob.  I'm now able to program and run the sample apps (rookie mistake)

               

            Unfortunately, the apps all hang up in the infinite loop in IntDefaultHandler after trying to start BLE.  I'm guessing it's a configuration issue, but darned if I can find where.  I haven't changed any of the code and the fault seems to be inside the stack for which there is no source.

               

             

               

               

            • 3. Re: Newbie help with EZ-BLE
              user_242978793


              Increase your Heap size to 0x200 that may help.

              • 4. Re: Newbie help with EZ-BLE
                user_242978793

                Post you code so we can check it.

                • 5. Re: Newbie help with EZ-BLE
                  rdeisled

                  Thanks for the suggestion but no go.

                     

                  I increased the heap size to 0x800; results are the same - infinite loop in the IntDefaultHandler. Note that the while(1) is not the trap for ENOMEM error, but the else case.  I added code to save the error number and in both the Device Information and FindMe examples, errno is 0.  Curiously, running the temperature measurement example app, the error number is 0x58.  But they all hang up in the same place.

                  • 6. Re: Newbie help with EZ-BLE
                    user_242978793
                            What example are you using?   
                    • 7. Re: Newbie help with EZ-BLE
                      user_1377889

                      Take the error message seriously: Something definitively has gone wrong. When this happened before main() is called something with the oscillators went amiss. When past initialization you probably clobbered the stack.

                         

                      Post your actual code, everything else is guessing.

                         

                       

                         

                      Bob

                      • 8. Re: Newbie help with EZ-BLE
                        user_1377889

                        @bobgoar

                           

                        Increasing the heap size to 0x0200 is not a cure for errors other than printing floats. It has to do with the float formatting of newlib nano which seemingly clobbers the heap. I found out when I tried to print floats under my "ARTS" rtos.

                           

                         

                           

                        Bob

                        • 9. Re: Newbie help with EZ-BLE
                          rdeisled

                          Below is the code that fails.  I did not write this code, I'm just trying to run the example application (BLE_Device_Information_Service) that comes with PSoC Creator 4.0.  The call to CyBle_Start() never returns because the code ends up in an infinite loop in the IntDefaultHandler().  Errno is NOT "ENOMEM".  

                             

                          Is it perhaps that I'm using the MiniPOrg3 debugger rather than the Pioneer dev kit? 

                             

                          Thanks,

                             

                          Richard

                             
                             

                          int main()
                          {
                              const char8 serialNumber[] = "123456"; 
                              
                              CyGlobalIntEnable;  
                              
                              Disconnect_LED_Write(LED_OFF);
                              Advertising_LED_Write(LED_OFF);

                             

                              CyBle_Start(AppCallBack);  

                             

                               ^^^^^^^^

                             

                              NEVER RETURNS FROM THIS FUNCTION
                              

                             
                          • 10. Re: Newbie help with EZ-BLE
                            user_1377889

                            Not enough memory error? check your stack settings.

                               

                             

                               

                            Bob

                            • 11. Re: Newbie help with EZ-BLE
                              rdeisled

                              1. Errno is NOT ENOMEM

                                 

                              2. I've increased the stack and heap to 4kb each, it still hangs up.

                                 

                              Is there anyone from Cypress on this forum?  I really expected development kit samples to work out of the box; am willing to troubleshoot the problem, but there's no source for the code which is failing.

                              • 12. Re: Newbie help with EZ-BLE
                                jrow

                                Hi Richard,

                                   

                                Can you archive your workspace with the Project -> Archive Workspace/Project menu entry and attach it here? If it is a problem with the source somewhere, it will be reproducible on another device (e.g. my BLE Pioneer kit with CYBLE-212019-EVAL module). If it is a problem with your hardware, then your unmodified source should compile and run correctly elsewhere.

                                • 13. Re: Newbie help with EZ-BLE
                                  rdeisled

                                  Hi jrow,

                                     

                                  Thanks for helping.  I've attached the 'complete' archive ('bundle' archive was too large to upload).  I've also attached the output from the build process.  

                                     

                                  The only change I made to the example app is to increase stack and heap to 0x1000 each.

                                     

                                  One possibly 'non-standard' wrinkle is that my project is not located in the default location suggested by the Creator.  The Creator wants to put the project on one of our servers, but it fails to build there so I am have pointed the Creator to create the project on a directory on my local C: drive.

                                     

                                  Richard

                                  • 14. Re: Newbie help with EZ-BLE
                                    jrow

                                    Hello Richard,

                                       

                                    I compiled and flashed the project that you sent onto my CYBLE-212019-EVAL module (plugged into an original CY8CKIT-042-BLE kit), and it appears to boot and run correctly. The green LED blinks for a while, then eventually switches to solid red. While the LED is blinking, I am able to discover the device in a scan from CySmart and connect to it, and discover all attributes.

                                       

                                    I confirmed with WinMerge that my compiled output is 100% identical to your compiled output, so it isn't anything unique on my machine. If you flash the same output .hex file onto your own module with either Creator or PSoC Programmer, and it does not run correctly, then I suspect a hardware issue with your kit or module.

                                       

                                    Can you confirm:

                                       
                                          
                                    1. J16 on the Pioneer kit has a jumper selecting either 5V or 3.3V
                                    2.     
                                    3. J15 on the Pioneer kit has a jumper connecting VDD to BLE_VDD
                                    4.     
                                    5. J3 on the CYBLE-212019-EVAL module has a jumper connecting VDD to VDDR
                                    6.    
                                       

                                    These (or electrical equivalents) are all necessary for correct operation. Especially J3 could cause a problem for you; VDDD is required for programming, but VDDR is required for radio operation.

                                    1 2 Previous Next