嗨,Dialog!
我的SUOTA接收机由DA14580、外部SPI闪存(GPIO已正确连接)和16mhz晶体(没有32khz晶体)组成。制作:
SmartSippets burn product_header.txt to the Memory offset(HEX) of "Memory Header/NVDS Programmer"":0x1F000.
产品标题.txt是:
地址大小(字节)参数值
0x1F000 2签名7052
0x1F002 2 version 1234
0x1F004 4抵销1 00800000
0x1F008 4抵销2 00300100
将fw_1.img刻录到SPI闪存编程器,SPI闪存偏移量(十六进制)为0x8000。
将secondary_bootloader.hex刻录到SPI闪存编程器,SPI闪存偏移量(hex)为0x0000。
现在我用的是SUOTA-1.1版本的Android APK,找不到蓝牙,也是我的SUOTA接收器。
如果产品\u header.txt、fw\u 1.img和secondary\u bootloader.hex是正确的,那么我的步骤正确吗?你能告诉我细节吗?
Keywords:
Device:
嗨,比恩
我不明白您是如何创建产品标题.txt的。
Please follow the instructions below for working with SUOTA.
1) Create the first image: mkimage.exe single fw_1.bin fw_1.h fw_1.img enc
2) 创建第二个映像:mkimage.exe single fwïu 2.bin fwïu 2.h fwïu 2.img enc(您也可以使用第一个映像)
3) Create an image for the whole SPI memory: mkimage.exe multi spi secondary_bootloader.bin fw_1.img 0x8000 fw_1.img 0x13000 0x1F000 multipart.bin
4) Burn it into flash using smart snippets.
For the file fw_1,2.h please rename the file from \dk_apps\src\dialog\include\ ble_580_sw_version.h
Please try this and let us know.
谢谢你的对话
嗨,MT\u dialog!
将multipart.bin以偏移量0x00刻录到闪存中,对吗?
谢谢你的帮助!
嗨,比恩
Erase the FLASH first and yes, burn the multipart.bin into flash at address 0 and when windows promts you for Bootable select NO.
之后,你应该重置你的设备,它应该开始广告。
谢谢你的对话
嗨,MT\u dialog!
谢谢您!现在我成功了。
但有一个问题需要帮助:
我有两个img文件,它们的MAC地址不同,分别是80:EA:CA:00:00:01和80:EA:CA:00:11:01。
答。一个是80:EA:CA:00:00:01,用于为SUOTA接收器生成multipart.bin。SUOTA-1.1-RELEASE.apk向SUOTA接收器发送MAC为80:EA:CA:00:11:01的文件,
但是当SUOTA完成时,SUOTA接收器的MAC地址是80:EA:CA:00:00:01。这似乎是不正确的!
B。一个是80:EA:CA:00:11:01,用于为SUOTA接收器生成multipart.bin。SUOTA-1.1-RELEASE.apk将其MAC为80:EA:CA:00:00:01的文件发送给SUOTA接收器,
但是当SUOTA完成时,SUOTA接收器的MAC地址是80:EA:CA:00:00:01。这看起来没问题!
I want to know that what is the reason for the first case?
Looking forward to your reply!
嗨,比恩,
您是否正在更改nvds.c文件中db地址的值?
请尝试更改设备的其他凭据,如名称,也请尝试将DA14580\U SW\U版本从ble\U 580\U SW\U版本更改,并让我们知道发生了什么。
谢谢你的对话
嗨,MT\u dialog!
我使用的文件是为其他人提供的。我不知道DA14580的软件版本是否改变了。
之前,我从SDK3.0.6编译了reporter\u fh,但不支持SUOTA。
你能告诉我如何创建索塔项目吗?是否需要注意细节?
嗨,比恩,
你可以拿接近或智能标签参考设计为例,它们都支持SUOTA功能。智能标签更灵活一点。确保da14580\U配置中的SPOTA配置文件已启用。有关更多说明,请参阅智能标记参考应用程序文档。
谢谢你的对话.
嗨,MT\u dialog!
I can do it! It's very excited! Thank you very much!
但我还有一个问题:
根据智能标签参考文档UM-B-018,我们知道图像(内存)库只接受3个值:0、1或2:
1: Use the first bank with start address as indicated in the Product Header.
2:使用第二个银行,起始地址如产品标题所示。
0: Burn the image into the bank that holds the oldest image.
在我的实践中,图像库的值是0或1,对应的字段是偏移量#1 0x8000。且值为2,对应字段为偏移量#2 0x13000。
I don't know if my SUOTA, right? Or wrong?
嗨,MT\u dialog!
你能帮我解决这个问题吗?
Looking forward to your reply!
嗨,比恩
What do you mean that the values of the image bank from your example is 0 or 1?
智能手机应用程序的选项包括:
1)Place the new image in memory bank 1 (memory bank 1 has 0x8000 offset).
2)Place the new image in memory bank 2 (memory bank 2 has 0x13000 offset).
3) 将新图像放在最旧图像的顶部(例如保存最旧图像的1号银行)。
At the offset 0x00000 is the secondary bootloader located and at the offset 0x1F000 is the product header located.
Within the next week there's going to be a new release application note about SUOTA.
谢谢你的对话
嗨,MT\u dialog!
The android application that version is v1.1 for SUOTA. When set SUOTA parameters,there is a need parameter that is the Image (memory) bank to set, it has three values: 0 , 1 and 2.
thank you!
嗨,比恩
是的,当你选择了文件,并且你想把它下载到你的设备上,android应用程序会让你选择把图像放在哪个内存库上……1。内存库1(0x8000), 2. memory_bank_2 (0x13000) or the default choice 0. where the new image will replace the oldest image in the memory located either in memory bank_1 or memory bank_2.
谢谢你的对话
嗨,MT\u dialog!
我知道你说什么。
In my practice, when setting the parameter for the android application:
设置memorybank = 0或内存条= 1,新的image will replace the location where is memory bank (0x8000).
设置memorybank=2,新图像将替换内存库所在的位置(0x13000)。
现在我想知道上述现象是否正确?
嗨,比恩,
是的,这是正常的,当您下载两个映像(multipart.bin)到设备(重启后)荷载the first image (bank1), when you update the image with a new one (throught suota) it will use the first bank.Then when you update again(throught suota)新映像设备将知道哪个是最新下载的映像,并将用新映像替换最旧的映像。本质上,它遵循每一轮图像已更新。
谢谢你的对话
Hi MT_Dialog,
关于上面的帖子,如果我们有两个不同的图像,比如imgïu 1在内存库0中,imgïu 2在内存库1中。有没有一种方法可以选择内存库来为应用程序类型选择合适的imgè2。
Thank you!
嗨,春天,
您可以查看secondary\u bootloader代码并对其进行修改,以便设置适当的条件来加载所需的映像文件。
谢谢你的对话