This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Gazell does not work with nrf 52832

Nice to meet you.

The chip uses nRF 52832. MDK keil μVision V 5.22.0.0 is used as the development environment.

Since I confirmed the operation with the sample project using the nRF 52 Development Kit, I am planning to develop nRF 52832 on my board.

I would like to use gazell to communicate between the master and slave, I have created a new project, but gazell's library does not work well.

I chose gzll and nrf_gzp in Manage Run-Time Environment and include "nrf_gzll.h"

nrf_gzll_init (NRF_GZLL_MODE_HOST);

If you try to run the program will not proceed any further. (I will paste the screen of the stopped place) image description Please teach me.

  • Hi,

    Could you confirm you can run the Gazel example in our SDK on the nRF52 Development board ?

    Which SDK are you using ?

    I don't understand why and how you "chose gzll and nrf_gzp in Manage Run-Time Environment "

    To use gazel, you simply include gzll_nrf52_sd_resources_arm.lib and the headers into your project.

    What if you don't change anything and flash the example on your custom board ?

  • You should probably respond to the previous comment, since I think Mr. Bui is a Nordic employee. That said, the program has entered an infinite loop at "B ." which in assembly language means "branch to the current program counter address" i.e. branch back to this instruction. This particular loop is part of the default handler, to which many interrupt vectors point to unless you substitute your own handler (overriding the "weak" definition.) Since many vectors point to the same handler, you don't know which device was causing the interrupt. Are you are using other devices than the ones that the gazelle code probably uses (e.g. the RADIO_IRQ_Handler) and did you provide an interrupt handler?

  • thank you for your comment. I am using nRF5_SDK_13.0.0-1.alpha_055eef3.

    Mr. Bui

    As I pointed out, "gzll_nrf 52 _ sd _ resources _arm.lib" and "nrf _ gzll.h" included and worked. Since a break was made in the callback of transmission completion and the callback of reception completion, it seems to be able to proceed from here. One thing I do not understand is the difference between "gzll_nrf 52 _ sd _ resources _arm.lib" and "gzll_nrf 52 _ arm.lib".

    Mr. butch

    In the code I wrote, I did not write any interrupt handling. I do not know the details, but it did not occur when I included the SDK lib file and removed "nRF_Properitary_RF" item and "app_timer" check in Manage Run-Time Environment. It may be a problem that the callback function of "nrf_gzp" and the Variant of "app_timer" were Gzll, but I'm sorry, I do not understand much.

  • Hi,

    Please send us your project.

    Please let me know if the default example works on your custom board. If it works, what would be the difference between your application and the example ?

    The difference between the 2 .lib file is explained here.

  • Hi, Upload the project to onedrive.

    1drv.ms/.../s!Avi3XPNJyYutaaPIgXbkVg2UQ1Y

    The content is different from the sample project, but I am experimenting with this project. Currently, line 59

    Result_value = nrf_gzll_enable ();

    The program does not advance after that. In disassembly we loop in the below.

    ` 0x00001ED4 F8D01100 LDR r1, [r0, # 0x100]

    0x00001 ED8 2900 CMP r1, # 0x00

    0x00001 EDA D 0 FB BEQ 0 × 0000 1 ED 4 `

    Also, I added result_value to the watch, but it is and I do not know the return value. You can not see it even if you set break points on lines 57-59 respectively.

Related