无法获取AWR1642BOOST温度报告

Other Parts Discussed in Thread: AWR1642BOOST

1.使用的AWR1642BOOST芯片上标有502AC ABL G1字样。

2.使用的demo是mmwave_auto_toolbox_3.0.0的手势识别的demo。

3.使用的SDK版本为SDK3.1.1.2.

4.参考C:\ti\mmwave_sdk_03_01_01_02\packages\ti\control\mmwavelink\test\xwr16xx中调用mmwaveLink_getTemperatureReport函数,我是在mss_main.c中UART往外送时调用此函数,返回retVal=-2.即调用此函数失败。不知道什么原因引起。

  • 我所使用的SDK3.1.1.2版本,没有您说的以上内容。
  • 你好,

    能否尝试直接调用rlRfGetTemperatureReport函数?请参考C:\ti\mmwave_sdk_03_05_00_04\packages\ti\demo\xwr16xx\mmw\mss\mss_main.c。
  • 结果与之前相同,返回值仍为-2

  • 你好,

    你使用的手势识别demo是基于SDK 3.1.0.2。请问你的代码时基于这个版本sdk编译的么? 单独运行这个sdk里的mmwavelink测试代码运行mmwaveLink_getTemperatureReport可以成功么?如果可以的话,请对比一下初始化流程以及参数。

    为什么你会使用SDK3.1.1.2?
  • 我将SDK版本改成了SDK 3.1.0.2,结果相同,我将过程详细描述一下,我用的demo是mmwave_auto_toolbox_3.0.0的手势识别,我是在mss_main.c中

    UART发送数据的函数GestDemo_mboxReadTask中调用了rlRfGetTemperatureReport函数

    rlRfTempData_t tempData = { 0 };
    MmwDemo_getTemperatureReport((rlRfTempData_t*)&tempData);
    gestureToServer[4] = tempData.tmpRx0Sens >> 8;
    gestureToServer[5] = tempData.tmpRx0Sens & 0XFF;
    gestureToServer[6] = tempData.tmpTx0Sens >> 8;
    gestureToServer[7] = tempData.tmpTx0Sens & 0xFF;

    void MmwDemo_getTemperatureReport(rlRfTempData_t* tempData)
    {
    /* Get Temerature report */
    int32_t retVal;
    // rlRfTempData_t tempData = { 0 };
    retVal = rlRfGetTemperatureReport(RL_DEVICE_MAP_INTERNAL_BSS, (rlRfTempData_t*)&tempData);
    if(retVal != 0)
    {
    /* Error: Link reported an issue. */
    System_printf("Error: rlRfGetTemperatureReport retVal=%d\n", retVal);
    return -1;
    }
    }

    通过调试模式,和串口输出两种方式对温度进行了监测,其结果均为0,单步调试出现“Error: rlRfGetTemperatureReport retVal= -2"报告,我用ISK6843ODS也进行了类似的试验,结果相同。
  • 你好,

    也就是正常运行时候是不报错的,对么?

    能否尝试降低手势识别的帧率,加长frame period,看看是否有改善?
  • 直接运行不是没错,是错误信息不通过串口传输出来,所以看不到,调试和串口输出是等价的。请问您在上一个回复中提到的测试程序是如何运行的?我想看看测试程序能否得到温度。

  • 改变帧率我也试试,这个测试我以前做过,每10秒调用一次rlRfGetTemperatureReport,也是无法获取温度的。
  • 你好,

    你的代码在返回-1后,没有处理这个错误返回?

    关于测试,请参考你之前提到的测试例程:C:\ti\mmwave_sdk_03_01_01_02\packages\ti\control\mmwavelink\test\xwr16xx
  • 对,没有处理,直接运行到下一帧,再次执行
  • 这个问题解决了,谢谢!

  • Lee,

    感谢更新状态。请问能分享一下问题是如何解决的吗?
  • 这个问题应该跟sdk版本关系不大,跟帧率应该也没关系,我在运行测试代码时可以获取温度,对比我使用的demo,原始代码在MSS里,没有对mmwavelink进行初始化,而是在DSS里进行的初始化,而测试代码进行了初始化,所以,在MSS里增加一对mmwavelink初始化函数即可,这个函数在DSS和测试代码上都有,只有一行代码。
  • Lee,

    收到。谢谢分享!
x 出现错误。请重试或与管理员联系。