Hi:
我们这边已经把OTA功能代码全部移植添加到现有工程当中,然后用NXP IOT toolbox的OTAP功能测试报错,具体如下截图:
请问大概是什么问题呢?
说实话不好查,这个是手机报的错,我们也没源码,不知道为什么报错,目前能推测问题的方法有两个,一个是用ble的嗅探器去嗅探包,查一查这个通信过程
另外一个是使用Test tool,找另外一个板子,烧写server代码,ota更新除了用手机还可以用Test tool,它会有一些日志信息可以给我们分析
只放一个亮led灯的demo,看看结果
再抓个正常的otap看一下,顺便用nrc connect看下,连接时候,profile有没有正常读出来,红圈这个选项要调成DEBUG
Hi:
我这边对比了 private profile 和OTAP例程的差异部分, OTAP例程多出的这两个文件这边还没有加入进去。具体文件如下截图:
这两个文件 会有什么影响吗?
Hi:
我开始是用nrf connect上面来看的,是正常的吧,然后再用NXP toolbox的,如下截图:
然后 例程里面的单独的OTAP例程的正常的抓包日志见附件,我这边是用另外一个板子测试的(MAC地址不一样)
这个日志有文件上传的过程信息吗?看起来没有啊,之前那个也是
这个正常的日志是有的,我这边是一直在等待升级到100%,一边一直抓包的,如下:
之前那个报错的包里面出错的时候 ,出错完之后然后就与APP断开链接了。如下截图:
这个是主要的差异点
otap协议我不是特别熟,要花点时间看下,目前看来连接服务的发现都没太大问题,就是发image出问题
好的,可以帮忙内部协调处理下吗? 我们这边这个功能需求挺着急的。
你可以再试试test tool,看看能不能传,而且也有一些log
test tool工具有相关链接下载吗?
我查到原因了,移植的应该没有问题,问题出在发送第一个image块的数据时候,slave回复了07050c
查一下协议知道这是个Error notification command,
05表示引起错误的命令,0c是错误的原因,再看源码就知道这个,说是更新的image太大了
我刚才看了我们这个s19文件 大小如下截图:
好的,我看到这个post了, 更新的image太大了, 那这个需要怎么解决呢? 因为这个代码是我们这边产品所有功能的代码,也裁剪不了,主要是qn9090也没有单独的boot , app 这块。
你先随便找个小的image看看能不能正常写进去,能的话再看怎么裁剪大小
我这边先试下例程里面的
1 做一次全片擦除,确保flexnvm里面没有任何数据
2 找到OtapClient_AttributeWrittenWithoutResponse,打断点,看看pValue这个指针是否确实指向收到数据了
从刚才的抓包log里面可以看到是传输了2次包,然后就没有了。