keil MDK and smart snippet

⚠️
Hi there.. thanks for coming to the forums. Exciting news! we’re now in the process of moving to our new forum platform that will offer better functionality and is contained within the main Dialog website. All posts and accounts have been migrated. We’re now accepting traffic on the new forum only - please POST any new threads at//www.xmece.com/support. We’ll be fixing bugs / optimising the searching and tagging over the coming days.
16 posts / 0 new
Last post
jagath
Offline
Last seen:1 year 8 months ago
加入:2018-04-19 09:28
keil MDK and smart snippet

Hello dialog team,

we are currently working on a DA14583 device with Ibeacon product, while on our R&D stage we are facing issue on working with this SOC, I'm listing it out, kindly support as , thank you.

1) why smart snippet not supporting the *hex* output file generated from keil MDK 5.25, is it will support only *.bin* file , if so how to generate it using (hex to bin) on a windows 10 PC (any alternative software for that).
2)As SOC is new to market can we have tutorial video link on detail about using the smart snippet and its workbench.
3) And what would be the practice for mass production on firmware burning as it looks complicated and time consuming , while burning the OTP and pressing the reset to detect and then burning the firmware, can you suggest a gang programmer will handle these sequence.

Device:
PM_Dialog
Offline
Last seen:1 day 21 hours ago
工作人员
加入:2018-02-08 11:03
Hi jagath,

Hi jagath,

  1. The SmartSnippets toolbox supports both HEX and BIN files in order to burn OTP/SPI flash memory. The Keil IDE generates HEX files but you are able to convert them in case you want to use BIN files.
  2. For more information about using the Smart Snippets, I suggest you to check the “User Manual SmartSnippets Toolbox UM-B-083”. You can download it by clicking the “Help” button from the top menu, and then selecting User Guide (Pdf or html).
  3. Regarding the mass production, you can burn the OTP memory using the SmartSnippets toolbox, but you should handle by your own how to reset each board before burning the OTP. The reset is mandatory when burning OTP/SPI flash through UART using SmartSnippets. Otherwise you can download firmware through JTAG or by using the Production Line Tool (PLT) .You can find the PLT project in the “reference design ” tab of our support page or by clicking in the follow link:

https://support.dialog-semiconductor.com/connectivity/reference-designs?qt-view__reference_designs__block_3=7#qt-view__reference_designs__block_3

Thanks, PM_Dialog

jagath
Offline
Last seen:1 year 8 months ago
加入:2018-04-19 09:28
Hi Pm_dialog,

Hi Pm_dialog,

Thank you for your immediate response, our engineers will review your suggestions and post our quires.

jagath
Offline
Last seen:1 year 8 months ago
加入:2018-04-19 09:28
hi PM_dialog,

hi PM_dialog,

As i download the dialog battery powered Ibeacon example program and build the program using keil 5.25 and debug the program using the DA14580 Development Kit - Pro with the DA14583 daughter board . The program runs fine on this debug environment.

But i'am facing a problem when i tried to flash the program on to my target board of DA 14583 using UART method using smart snippet.
problem: (getting no response from the board after flashing)

1) my question is, whether i have to combine the boot loader program with this dialog i beacon firmware or the dialog i beacon firmware is composed of boot loader too.
2) if i want to combine it, is any GUI tool to do this other then the long method in the UM-B-012.

PM_Dialog
Offline
Last seen:1 day 21 hours ago
工作人员
加入:2018-02-08 11:03
Hi jagath,

Hi jagath,

Could you please provide more information when you try burn the SPI flash through UART using SmartSnippet? Are you able to burn the SPI Flash successfully and the 583 can’t boot or you are not able to burn it? In addition, could you please let me know if you are able to download firmware to the SysRAM? Could you please try to burn the SPI flash with another ble example of the SDK? The 583 chip has burned bootloader and by default boots from SPI flash

Thanks, PM_Dialog

jagath
Offline
Last seen:1 year 8 months ago
加入:2018-04-19 09:28
Hi PM_Dialog,

Hi PM_Dialog,

1) i can flash successfully and i can read the burnt flash too. 583 boot problem i am not sure about that , and any method to check it up.

2) and what i have to do with the OTP flash, can be felt without doing that ..?? , for the dialog i beacon example.

PM_Dialog
Offline
Last seen:1 day 21 hours ago
工作人员
加入:2018-02-08 11:03
Hi jagath,

Hi jagath,

Are you able to boot when downloading firmware to SysRAM through UART? Could you please check if you have the same issue when downloading firmware from one other example of the SDK?

Thanks, PM_Dialog

jagath
Offline
Last seen:1 year 8 months ago
加入:2018-04-19 09:28
嗨PM_dialog,

嗨PM_dialog,

1) no the boot doesn't happens , yes i downloaded the BLE bare bone it also seems no response on my target board with the SPI Flash programming method over UART interface. And i attached the burn report please find it.

PM_Dialog
Offline
Last seen:1 day 21 hours ago
工作人员
加入:2018-02-08 11:03
Hi jagath,

Hi jagath,

As I have already mentioned on my previous post, my recommendation was just to download directly code to Sysram and not burn the SPI flash through the UART interface. So please try to download into SysRAM any example code to the 583. For downloading code to the SysRAM you will have to build the project for a 583 board (there is an option at the top of the Keil IDE that will allow you to do so and select 583 from the drop down menu). Then you will have to click into the “debug” button and run your code. Regarding the fact that you are not able to boot from flash, from the picture that you have attached I see that the image that is burned in the flash lacks of the bootable header that the Smart Snippets attaches (that is if you click yes when the tool prompts you for burning a bootable image). So when you hit the burn the tool will prompt you for a making the image bootable you should click on the “Yes” in order to be able to boot from flash.

Thanks, PM_Dialog

jagath
Offline
Last seen:1 year 8 months ago
加入:2018-04-19 09:28
嗨PM_dialog,

嗨PM_dialog,

As i have mention earlier it works fine on the debug mode over the development board, but my scenario will be burning same firmware on the target board, and on burning the FW on the SRAM will be non-volatile right..?? .
I have tired the option by clicking "YES" also , still it didn't works , And Should i burn the boot loader image on the OTP image header.??.. thanks in advance.

jagath
Offline
Last seen:1 year 8 months ago
加入:2018-04-19 09:28
Hi Pm_dialog ,

Hi Pm_dialog ,

And i'am attaching the burn report by selecting "yes" on the flash programmer.

PM_Dialog
Offline
Last seen:1 day 21 hours ago
工作人员
加入:2018-02-08 11:03
Hi jagath,

Hi jagath,

I recommended you to download code directly into SyRAM in order to confirm that the device you are using is capable of running a BLE enabled firmware and it is not a solution on your problem. Regarding the fact that you are not able to run the beacon code on a 583 from SPI flash, have you tried to reset the board for running the bootloader again and eventually load the firmware from the SPI flash? You should not burn anything on the OTP in order to solve your problem. Be aware that the OTP of the 583 is already burned with a 583 bootloader for boot directly from the predefined SPI pins and then checking the other pins with different interfaces. I tried to replicate your problem on my side with the beacon software on a 583 connected a Pro DevKit board and I was able to see the device advertising. If this doesn’t work on the custom board you are working on then you will have to check the booting procedure with an analyzer if something goes wrong there.

Thanks, PM_Dialog

jagath
Offline
Last seen:1 year 8 months ago
加入:2018-04-19 09:28
Hi Pm_dialog,

Hi Pm_dialog,
we have already developed our own Firmware with the customized advertising data it works well with the target board DA14583, but not FW of dialog Ibeacon and other examples. where I'm missing.

on using JTAG connector on the development board 14580 with pin-out as below and could not connect the device to the debug mode , as like the daughter board of DA14583.

on the J5 header pin 26 --> SWDIO on the target board

28---> SWCLK on the target board

1--> vbat

2--> gnd

and toggle sw connected to vbat --> reset

and where i have to connect the Din.

PM_Dialog
Offline
Last seen:1 day 21 hours ago
工作人员
加入:2018-02-08 11:03
Hi jagath,

Hi jagath,

I’m sorry but I am not in a position to understand your question, so could you please explain it a bit more? If I am able to catch what you mean, you have designed o custom PCB with the DA14583 chip and you have developed your own firmware that is working on your custom board? Although, you are not able to download any default firmware from your SDK to your custom board. Did I understand correctly? Could you please make clear which your problem is with the JTAG connector? Do you connect you custom board with any DA14580 development kit?

Thanks, PM_Dialog

jagath
Offline
Last seen:1 year 8 months ago
加入:2018-04-19 09:28
Hi dialog_pm

Hi dialog_pm

We are having a custom board with da14583 SOC on it and we are burning the Fw by flash spi ,Using uart method with help of 14580 devp pro kit. My Fw runs well since we use the bin file format. but your example program genrate hex file when I try to burn the example program it burns sucessfully but the program boot seems not to be executing.

To run my target board on a debug mode I try to make it run as the daughter board which I suceed using Jtag of your example program .. but facing problem in the jtag connectivity. So correct me on the jtag header pins.

PM_Dialog
Offline
Last seen:1 day 21 hours ago
工作人员
加入:2018-02-08 11:03
Hi jagath,

Hi jagath,

When you download firmware to the SPI flash, you use the binary file format in order to burn it. However, the SmartSnippets toolbox converts automatically the hex file to binary file format.

Below are the required connections for programming your custom board using JTAG interface:

  1. J4 - Pin 1 (VBAT_580) - > Vcc of the custom board.
  2. J4 - Pin 25 (TMS) - > SWDIO pin of custom board.
  3. J4 - Pin 27 (TCK) - > SW_CLK pin of custom board.
  4. TP2 -> to the Vpp of the custom board (if OTP needs to be programmed).
  5. J4 - Pin 2 (GND) - > to the ground of the custom board.

You are able to find more information in the«Development kits & reference designs»tab ofFrequently Asked Questions (FAQ)page of our support site. Click to the link below in order to visit the FAQ page:

https://support.dialog-semiconductor.com/guide/frequently-asked-questions

Thanks, PM_Dialog