Hi Nordic Dev Zone, Ray Kampmeier here.
I'm building Direct Test Mode (DTM) into a production application that uses the 110 soft device. Unlike the provided Nordic examples, I'm not using an external UART interface to send/receive DTM commands. I need to inject them through a proprietary means.
Is their a way to use DTM, in an Application using Soft Device, without using UART?
I'm referencing two different example projects from Nordic:
- examples->dtm->direct_test_mode
- examples->dtm->dtm_serialization
I'm using example #1 as my main reference. I plan to initialize DTM using "dtm_init()", perform DTM operations with "dtm_cmd(...)", and retrieve the results with "dtm_event_get(...)".
I get a hard fault when I call "dtm_init()" as it internally calls timer_init. Specific line:
NRF_CLOCK->EVENTS_HFCLKSTARTED == 0
The example #1 is DTM-only and does not include an application w/ soft device, so I expect the hard fault is result of a conflict between my included S110 and the DTM's attempted use of a shared timer.
Both examples enter into DTM and expose a DTM command interface over a UART.
Example #2 (dtm_serialization) does this within an example application that includes s110.
Unlike example #2, I'm not using a UART interface. I'd like to "inject" DTM commands from within my code, rather than externally via UART.