This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2652R: DTM mode options

Part Number: CC2652R
Other Parts Discussed in Thread: SYSCONFIG

Good morning,

for a custom board that we have developed for a customer, using the CC2652R1 for bluetooth connectivity, I need now to do the BT certification at Dekra in DTM mode. I'm a bit confused on this issue. Reading the BLE Vol 6 part F specification, it appears that the DTM can operate in two modes:

The certification entity supports both methods. In my case the 2-wire UART seems more suitable. Reading the BLE5 stack user guide however, it states that only the HCI mode is supported 

however it still speaks of the uart as a transport mode for HCI commands. On my board I have the uart on pins DIO_2 and DIO_3 busy, since it is connected to another micro (PIC24) which manages the usb. I can use another uart on pins DIO_0 and DIO_1.

It seems to me that I have 3 options:

1) use something similar to the host_test project, modifying the pins of the uart to be used, in order to directly supply the HCI commands to the test tool

2) enable PTM mode in my project from SysConfig, to use the uart (can I configure the uart to use ?) for the same purpose

3) implement the protocol described in paragraph 3 of part F on the uart and call the APIs for the necessary HCI commands from my fw

Which of the 3 options do you think is simpler and more suitable for my case ?

Thanks a lot

  • Hi,

    I would recommend going with option 1 or 2. The host_test project mainly implements Direct Test Mode (DTM) via UART and the UART pins are configurable, so you should be able to change the pins to whatever pins you have available. You should be able to do this through the SysConfig GUI editor. The host_test project uses the NPI solution discussed in the Network Processor Interface (NPI)  chapter to allow the host_test project to be controlled via UART or SPI. For Bluetooth testing, 

    Best Regards,

    Jan

  • Hello,

    thank you

    option 1 I think I have to port host_test app to my custom board. I hope it is not too much effort.

    option 2 it seems promising and I think I will start trying this option. Is possible to select the uart to use for the NPI ? Is this mode implements the DTM as specified in the bluetooth spec vol 6 part F ?

    option 3: which problems do you see on implements 2 bytes protocol on the uart interface ? 

  • Hi,

    The porting process to get the host_test app working on your board is fairly minimal. I expect that you will only need to update the board file and the pin mapping. The Custom Hardware section of the user's guide talks what is needed here.

    To enable PTM, I recommend referencing the Production Test Mode (PTM) section in the user's guide.

    I think for option 3, this is done for you in the host_test project or via PTM. These options both allow the application to receive HCI commands via UART.

    Best Regards,

    Jan

  • ok, thank you.

    On PC, which tool can I use to test DTM with option 1 and 2 ? BTool ? 

  • Hello,

    I tried to add PTM mode following the link you posted. I opened sysconfig from CCS of my project and enable the PTM checkbox, but nothing has happened: no files modified (expect the sysconfig one where the line ble.ptm = true has been added) or added.

    What am I missing ? What should i cjeck ?

    If I try to add a new ADC for example on a pin that I am not using, it is working, so sysconfig and the CCS are ok

  • Hi Stefano,

    To confirm, can you specify which project you have checked the enable PTM box on? Is this on simpel_peripheral?

    Best Regards,

    Jan

  • Hello,

    no, it is my project, I have a custom board. Anyway, I think it was started from simple_peripheral. Why ?

  • Hi Stefano,

    The PTM box on Simple peripheral project change just the max number of ICall Enabled Tasks from 3 to 4.

    On your project can you confirm that? 

    You can see the number of "max number of ICall Enabled Tasks" in Advanced Settings > Icall

    Regards,

  • Hello,

    yes, this number is increased and also PTM_MODE defined has been added I think.

    But then what is needed to have PTM working on my project ? I have to import NPI, etc ? How ? There is a guide to do that ?

  • Hi,

    Normally it should build without errors and it's the only thing you have to set to "unlock" PTM mode on simple_peripheral. NPI are already in the example so no ned to import them.

    Also, not all the commands are available on simple peripheral PTM mode, you can check which are the one available in the file icall_hci_tl.c and then you will see a table around line 650 with all the commands,

    hope this help a little,

    Regards,

  • Hello,

    yes, you are right, I saw that simple_peripheral has the NPI already present. I want it in my project to enable DTM for certification test, so I have to import it in my project. I will use simple_peripheral as reference. I hope I will able to do that. I thought that sysconfig automatically added the needed file to the project when PTM was enabled.

    Once I will able to have NPI and so PTM/DTM in my project, how can I test it connecting the board to the PC via uart ? Using HCI tester or BTool ?

    Thank you

  • Hi Stefano,

    Yes you can send the HCI commands with HCI tester or Btool doesn't matter but I'll need the UART connection to do so.

    Regards,

  • Hello,

    I added PTM to my project and I am now able to send HCI commands (ie: HCI_LE_TransmitterTest) with BTool to my device. Thank you

     

    I have now a doubt, since the certification entity (Dekra), told me that they have an own tool that implements DTM as specified in the Bluetooth specification. My question is: NPI used on the UART is a standard protocol for this kind of application ? If I use another tool instead of BTool or HCITester does it still work ?

    Thank you

  • Hello Stefano,

    Could you open a new thread referencing this one, it's better to have 1 question/issue 1 answer for each thread. It will help for the forum's clarity.

    Thanks and regards,

  • Ok, but anyway, I tried with the other tool and it is working. Thanks