Switch from DA14680 to DA14682

⚠️
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 https://www.dialog-semiconductor.com/support . We’ll be fixing bugs / optimising the searching and tagging over the coming days.
16 posts / 0 new
Last post
ghschwab
Offline
Last seen: 3 months 2 weeks ago
Joined: 2016-07-25 10:54
Switch from DA14680 to DA14682

Hi,

for a slight redesign of an existing project, we wanted to switch to DA14682 from DA14680. First, I tried to program the hardware from the existing SmartSnippets Studio (v1.6.3.981) with SDK 1.0.10. As I received errors while trying to program, I downloaded the newer SDK (1.0.14) and imported the corresponding scripts. The first time I tried to program, it showed the device selection, and after selecting the correct processor, I was able to program the device. However, when trying to debug the project, I always get stuck in the reset handler.

When trying to program and debug the old device (DA14680), I can't get the device selection to come up.  The script 'program_qspi_config.bat' can be found under the scripts project, but it does not appear under external tools.

I also tried working with a newer version of SmartSnippets Studio (v2.0.14.1748), but I can't get the projects to compile here.

My questions are:

- Do I need the newer SDK to program and debug the DA14682?

- How can I get the device selection for the programming script to come up?

- Do I need the newer version of SmartSnippets to work with the DA14682?

Thank you,

Gunther Schwab

 

 

Device: 
PM_Dialog
Offline
Last seen: 2 months 2 weeks ago
Staff
Joined: 2018-02-08 11:03
Hi ghschwab,

Hi ghschwab,

For the DA1468x product family, the DA1468x SDK1.0.14.1081 and SmartSnippets Studio V1.6.3 for Windows OS are recommended to be used.

Did you import the python scripts on your workspace? Would it be possible to share some screenshots, so that I can understand your configuration?

You could also follow the UM-B-047: DA1468x Getting Started with the Development Kit.

Thanks, PM_Dialog

ghschwab
Offline
Last seen: 3 months 2 weeks ago
Joined: 2016-07-25 10:54
Hi,

Hi,

thanks for your answer!

I am attaching screenshots to show the IDE version and the SDK.

I had only imported "scripts", not "python scripts". The necessary scripts do appear now. However, when trying to program the processor, I get the message that A file in the JLink path cannot be found. I didn't really change anything there. How do I set the JLink path?

Thanks,

Gunther

Attachment: 
PM_Dialog
Offline
Last seen: 2 months 2 weeks ago
Staff
Joined: 2018-02-08 11:03
Hi ghschwab,

Hi ghschwab,

Do you have a custom board, or you are using any of our DKs?

Could you please re-install the tool and try it with a clean SDK directory? Please delete the .metadata folder too.

Thanks, PM_Dialog

ghschwab
Offline
Last seen: 3 months 2 weeks ago
Joined: 2016-07-25 10:54
Hi,

Hi,

thank you for your response.

In the meantime, I reinstalled everything and started from a clean slate. I was able to import the project and it compiles now.

I am also able to program the device, but when trying to debug it, it hangs in the Reset Handler in the file "startup_AMRCM0.S". We have a custom board.

Do you have any recommendations what I could try?

The software worked fine on the previous version of the board with the DA14680. Aside from selecting the correct chip when programming, are there other steps that are necessary to switch to the DA14682?

Thank you,

Gunther

PM_Dialog
Offline
Last seen: 2 months 2 weeks ago
Staff
Joined: 2018-02-08 11:03
Hi ghschwab,

Hi ghschwab,

If you run the project without the debugger attached, is it running properly? Are you using any of the SDK examples?

Would it be possible to share a screenshot?

Thanks, PM_Dialog

ghschwab
Offline
Last seen: 3 months 2 weeks ago
Joined: 2016-07-25 10:54
Hi,

Hi,

it does not seem to be running completely right, as I can't see the bluetooth device advertising.

On the previous hardware wir the DA14680, it works fine.

I am not using an SDK example, as this is our custom hardware, and we had the software running fine on the previous hardware.

Are there any other steps necessary to switch to the DA14682?

I am attaching a screenshot of the debugger.

Thanks,

Gunther

Attachment: 
PM_Dialog
Offline
Last seen: 2 months 2 weeks ago
Staff
Joined: 2018-02-08 11:03
Hi ghschwab,

Hi ghschwab,

Could you please if the HW designs guidelines documents (link is provided below) had been followed when the schematics/PCB was being developed, as this sounds like a hardware related issue?

Additionally, did you build the project for DA14682 configuration?

https://www.dialog-semiconductor.com/sites/default/files/an-b-061_da1468x_application_hardware_design_guidelines_v1.9.pdf

Thanks, PM_Dialog

ghschwab
Offline
Last seen: 3 months 2 weeks ago
Joined: 2016-07-25 10:54
Hi,

Hi,

I will check the hardware guidelines once again, but I assume they were followed, as everything worked fine on the previous hardware.

I checked the build configurations of a sample project (peripherals_demo) for both the DA14680 and the DA14682, but I can't find a difference. Can you maybe point me to the adjustments that need to be made to build for the DA14682?

Thanks,

Gunther

ghschwab
Offline
Last seen: 3 months 2 weeks ago
Joined: 2016-07-25 10:54
Hi,

Hi,

we also went through the hardware guidelines again, we are sure that we followed everything. I am attaching a excerpt from our circuit diagram, could you please check if you find anything thats wrong?

Thanks,

Gunther

Attachment: 
PM_Dialog
Offline
Last seen: 2 months 2 weeks ago
Staff
Joined: 2018-02-08 11:03
Hi ghschwab,

Hi ghschwab,

Let me check the schematic and I’ll get back to you shortly.

Thanks, PM_Dialog

ghschwab
Offline
Last seen: 3 months 2 weeks ago
Joined: 2016-07-25 10:54
Hi,

Hi,

I have an update. I came across the DA14681 to DA14683 Porting Guide and followed the steps. Also, I was able to verify that the same issue appeared on a standard daughter board, so it is not hardware related.

I was able to make the changes as described in the Porting Guide, but now the project won't build. Here are the errors:

Building target: BIAvi+_device.elf
Invoking: Cross ARM C Linker
C:\Dialog_SDKS\DA1468x_DA15xxx_SDK_1.0.14.1081\DA1468x_DA15xxx_SDK_1.0.14.1081\sdk\interfaces\ble_stack\DA14683-00-Debug\libble_stack_da14683_00.a(rom_patch.o): In function `patched_hci_command_handler':
/home/build/workspace/SDK680/Release_Build_MANUAL/Artifacts/tmp/ble_stack/sdk/interfaces/ble_stack/DA14683-00-Release/../src/rom_patch/rom_patch.c:1721: undefined reference to `hci_command_handler'
./sdk/ble/src/stack/plf/black_orca/src/arch/main/ble/arch_main.o: In function `ble_platform_initialization':
C:/Dialog_SDKS/DA1468x_DA15xxx_SDK_1.0.14.1081/DA1468x_DA15xxx_SDK_1.0.14.1081/sdk/interfaces/ble/src/stack/plf/black_orca/src/arch/main/ble/arch_main.c:931: undefined reference to `BLE_TX_DESC_DATA_USER'
C:/Dialog_SDKS/DA1468x_DA15xxx_SDK_1.0.14.1081/DA1468x_DA15xxx_SDK_1.0.14.1081/sdk/interfaces/ble/src/stack/plf/black_orca/src/arch/main/ble/arch_main.c:931: undefined reference to `BLE_TX_DESC_CNTL_USER'
C:/Dialog_SDKS/DA1468x_DA15xxx_SDK_1.0.14.1081/DA1468x_DA15xxx_SDK_1.0.14.1081/sdk/interfaces/ble/src/stack/plf/black_orca/src/arch/main/ble/arch_main.c:931: undefined reference to `LLM_LE_ADV_DUMMY_IDX'
C:/Dialog_SDKS/DA1468x_DA15xxx_SDK_1.0.14.1081/DA1468x_DA15xxx_SDK_1.0.14.1081/sdk/interfaces/ble/src/stack/plf/black_orca/src/arch/main/ble/arch_main.c:931: undefined reference to `LLM_LE_SCAN_CON_REQ_ADV_DIR_IDX'
C:/Dialog_SDKS/DA1468x_DA15xxx_SDK_1.0.14.1081/DA1468x_DA15xxx_SDK_1.0.14.1081/sdk/interfaces/ble/src/stack/plf/black_orca/src/arch/main/ble/arch_main.c:931: undefined reference to `LLM_LE_SCAN_RSP_IDX'
C:/Dialog_SDKS/DA1468x_DA15xxx_SDK_1.0.14.1081/DA1468x_DA15xxx_SDK_1.0.14.1081/sdk/interfaces/ble/src/stack/plf/black_orca/src/arch/main/ble/arch_main.c:931: undefined reference to `LLM_LE_ADV_IDX'
C:/Dialog_SDKS/DA1468x_DA15xxx_SDK_1.0.14.1081/DA1468x_DA15xxx_SDK_1.0.14.1081/sdk/interfaces/ble/src/stack/plf/black_orca/src/arch/main/ble/arch_main.c:931: undefined reference to `rom_hci_cmd_desc_root_tab'
./sdk/ble/src/stack/plf/black_orca/src/arch/main/ble/jump_table.o:(.rodata.rom_func_addr_table_var+0x10c): undefined reference to `llc_le_length_conn_init_func'
./sdk/ble/src/stack/plf/black_orca/src/arch/main/ble/jump_table.o:(.rodata.rom_func_addr_table_var+0x128): undefined reference to `smpc_public_key_exchange_start_func'
./sdk/ble/src/stack/plf/black_orca/src/arch/main/ble/jump_table.o:(.rodata.rom_func_addr_table_var+0x12c): undefined reference to `smpc_dhkey_calc_ind_func'
./sdk/ble/src/stack/plf/black_orca/src/arch/main/ble/jump_table.o:(.rodata.rom_func_addr_table_var+0x130): undefined reference to `smpm_ecdh_key_create_func'
collect2.exe: error: ld returned 1 exit status
make: *** [BIAvi+_device.elf] Error 1

What can I do about this?

Thanks,

Gunther

ghschwab
Offline
Last seen: 3 months 2 weeks ago
Joined: 2016-07-25 10:54
Hi,

Hi,

another update:

after selecting the correct rom.symbols file (not described in the guide), the project now compiles.

However, it still shows the exact same behaviour as in the beginning, it stops in the reset handler, both on our custom hardware and the daughter board. There still must be a configuration step missing.

PM_Dialog
Offline
Last seen: 2 months 2 weeks ago
Staff
Joined: 2018-02-08 11:03
Hi ghschwab,

Hi ghschwab,

Thanks for the update. This sounds like a software related issue. Could you please give a try with one of the SDK1 examples? Are you able to replicate this? Additionally, could you please share a screenshot showing where the code freezes in the bug mode?

Thanks, PM_Dialog

ghschwab
Offline
Last seen: 3 months 2 weeks ago
Joined: 2016-07-25 10:54
Hi,

Hi,

I am able to get the peripherals_demo to run on the Dialog daughter board and our hardware. However, the pxp_reporter demo does not compile (see attached image).

The error message is:

Building target: pxp_reporter.elf
Invoking: Cross ARM C Linker
c:/diasemi/smartsnippetsstudio/gcc/4_9-2015q1/bin/../lib/gcc/arm-none-eabi/4.9.3/../../../../arm-none-eabi/bin/ld.exe: cannot open linker script file C:\Users\GHSchwab.GFT\workspace_SmartSnippets_SDK1.0.14\pxp_reporter/DA14683-00-Debug_QSPI/mem.ld: Invalid argument

The behavior is the same every time, peripherals_demo works, pxp_reporter does not compile, our own software will compile but not run correctly.

I am attaching a screenshot where our our app is stuck in the debugger.

I would be happy to send you a copy of the project, but it is too bit. Is there another way to send it to you?

Thanks,

Gunther

 

Attachment: 
PM_Dialog
Offline
Last seen: 2 months 2 weeks ago
Staff
Joined: 2018-02-08 11:03
Hi ghschwab,

Hi ghschwab,

The most probable reason for this error is because the setup doesn't generate the linker scripts to make the project build completed. Before the actual build occurs, SmartSnippets Studio (SST) should generate the linker scripts from the mem.ld.h file and construct a mem.ld file in the build folder. In your case, the aforementioned file is never built and as a result the tool is not able to find the mem.ld file. This can be due to couple of reasons, like the makefile.targets file isn't in the project directory, or a missing configuration etc. It seems that either the installation of the SSS has issues, or you haven't properly imported the projects. Please note that the SDK along with the SSS should operate out of the box without any additional configuration. Since you have correctly installed the tool, all the projects should compile out of the box. In addition, this kind of error that you are seeing, might be related with your workspace. I would suggest you to follow the steps below :

  1. Uninstall completely SSS and re-install it. Please follow step-by-step the section 1 SmartSnippets™ Installation in the UM-B-057 SmartSnippets Studio User Manual
  2. Please move the SDK out the C:/Users location – We have seen this cause issues with administrative rights. For example, create a fresh SDK directory located without any spaces: C:\Dialog\DA1468x_DA15xxx_SDK_1.0.14.1081
  3. Since it’s a fresh SDK directory, the root folder should not contain the .metadata. If it exists, delete the .metadata.
  4. Open the Smart Snippets Studio again and select a generic workspace
  5. The Project Explorer should be blank.
  6. Right click into the Project Explorer and navigate to:
    1. Import…
    2. General / Existing Projects into Workspace
    3. Press Next>
    4. From the Select root directory browse to C:\Dialog\ DA1468x_DA15xxx_SDK_1.0.14.1081
    5. Deselect all the projects and select only the prox_reporter and the python­_scripts. Then press the finish button.
  7. Build the project for DA14682 – (DA14683-00-Debug-QSPI script).
  8. When the build is finished, run the program_qspi_config script.
  9. Erase the QSPI Flash - erase_qspi_xxxx (through jtag or uart) script.
  10. Program the QSPI flash -  program_qspi_xxxx (through jtag or uart) script.

Thanks, PM_Dialog