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.

True Random generator on CC1310

I want to use the TRNG.

I tryed to configure with:

TRNGReset();

TRNGConfigure(0x4000,0x1000000,0);

And:

HWREG(TRNG_BASE + TRNG_O_SWRESET) = 1;          // Reset the TRNG.
while ( HWREG(TRNG_BASE + TRNG_O_SWRESET));       // Wait for reset

But the execution is blocked in the adress 0x1001bbd4 in both cases.

Can some one help me?

Best Regards.

  • Why are you running a TRNGReset(); and then the same command written differently?

    Did you try:

    TRNGEnable();

    TRNGConfigure(0x4000,0x1000000,0);

    wait until TRNGStatusGet() returns true

    TRNGNumberGet(...)
  • Yes, I did.

    The execution never returns form "TRNGConfigure(0x4000,0x1000000,0);"
  • The rfWsnNode example uses the random generator.

    Two issues:
    1) A dependency has to be included to prevent RTOS to take the chip into standby while preparing the random generator
    Power_setDependency(PowerCC26XX_PERIPH_TRNG);

    TRNGConfigure(0x400,0x10000,0);

    TRNGEnable();
    while(!TRNGStatusGet()); // See the code example for more robust way
    TRNGNumberGet(randomWord);
    TRNGDisable();
    Power_releaseDependency(PowerCC26XX_PERIPH_TRNG);

    2) The first parameter is too big. From the header file: "Value must be bigger than or equal to 2^6 and less than 2^14."