Hi,
I am working with BLE SPS, I did some experiments with SDK3 for my project and it worked fine for me.
I got sdk5.0.3, build project in Keil5 (latest downloaded 5.18 + added legacy support). I burn my 14580 using smart snippet everything went fine.
The problem is there is no communication between host and device. I think this is problem with only SDK5, to confirm this I did some experiments as mentioned below.
1. checked sdk3 host/device. They are working fine on my hardware.
2.我用SDK5和带SDK3的设备进行主机:根本没有通信。(我认为新版本的主机有问题)
3. I made Host with sdk3 and device sdk5: No communication (new version device is not working either)
4. Host and device both sdk5 (to avoid any compatibility issue between versions, if at all): No communication.
by this time I had no cue what is going on with BLE
5.我刚用SDK5制作了一个设备,并使用了我的Android-DSPS应用程序(Ver 1.1.0)。我可以在手机上看到该设备,我可以连接到它,我无法沟通。
使用HyperTermial PC和手机的需求方terminal I should see exchange of characters, I can not send anything from either side.
6. did same experiment as #5 in debug mode (sleep mode was off). No result, no communication again.
Can somebody help me, How to get sdk5 working?
我可能做错了什么?
Or do I have to change anything in SDK5 before I can work with it?
Thanks!

Hi goswamikuldeep,
There is no need to change anything on the DSPS in SDK5 in order to function the only thing is the SLEEP mode if you are going to debug the source code of smart snippets. What is the development kit that you are using, or you are using a custom board ? If you are using a dev kit you can use Smart Snippets and check if the devices get connected (to the host or the android device). Perhaps after connection something is weird occurs (are the devices stay connected?), perhaps the code reaches hardfault or the NMI handler, check that the code that you executing is sps_device_580 and notsps_device_581 orsps_device_583.
Thanks MT_dialog
谢谢你的回复和sorry for delayed feedback...
I could not get sdk5 connected at all, so I continued project using sdk3 will try sdk5 again in future.
Hello @goswamikuldeep
Did you get the SDK5 to work i think i have same issue.
Hi Sashu1993,
The DSPS on the SDK5 is a quite tested reference design, so not working is quite immpossible, it would help if you mention a few things about what you are observing when trying to run the project in order to find the cause of your issue. For example, are you downloading the fw via Keil or Smart Snippets ? Are you able to see the device advertising ? Where are you downloading the fw (on a custom board, a development kit) ? What exactly do you mean that its not working ?
Thanks MT_dialog
I am using Dialog DSPS 5.150.2 with Keil SDK5.08 and DA14580 development kit Pro. I can compile and run the application in debug mode but the debugger does not work properly. Immediately after pressing start the debugger begins running and gets lost. The stop button appears and disappears after 1 second. The single step buttons become active but are not accepted. My investigations show that the fault occurs when the program jumps to main. The indicated main addreess 0x20000440 obviously is not correct.The disassembly does not show any main routine at this address.
Amazingly the program works fine with, e.g. I can transfer data from my mobile to a PC-Terminal and vice versa.
When I use a different Dialog app (e.g. prox_reporter) in the same environment everything works fine. The main program starts at 0x20000440 as it is supposed to.
What is the reason and what can I do to correct the problem? Any help aprreciated.
Hi ghschwab,
Apparently the DSPS has a forgotten instruction that disables the debug module in the 580, so when using sleep mode (ARCH_EXT_SLEEP_ON) and the device goes to sleep the debug module is off and keil looses connection. In order to fix that you can either change the app_default_sleep_mode from ARCH_EXT_SLEEP_ON to ARCH_SLEEP_OFF or you can go to the BLE_SLP_Handler() function (in both of the functions in order to be certain that you ve changed the one thats included in the build) and change the SetBits16(SYS_CTRL_REG, DEBUGGER_ENABLE, 0); to SetBits16(SYS_CTRL_REG, DEBUGGER_ENABLE, 1);
Thansk MT_dialog
Everything is fine now!
Thank you!