由于14583有1024k闪存芯片,我想也许这方面可以更新空气。但是在这些文档中,我找不到描述如何更新DA14583中上下文的共同数据表。我想知道您有没有像《AN-B-003:DA14580软件空中补丁(SPotA)》这样的文档来说明如何通过网络更新软件等等,但是不仅在DA14580中,在DA14583中也是如此
Keywords:
设备:
由于14583有1024k闪存芯片,我想也许这方面可以更新空气。但是在这些文档中,我找不到描述如何更新DA14583中上下文的共同数据表。我想知道您有没有像《AN-B-003:DA14580软件空中补丁(SPotA)》这样的文档来说明如何通过网络更新软件等等,但是不仅在DA14580中,在DA14583中也是如此
嗨,谢哲9,
14583和Suota没有专门的申请文件。但我想你能够做到这一点,就像DA14580一样,差异只是SPI的引脚配置。您可以尝试尝试使用SDK5的邻近应用。
谢谢你的对话
谢谢,我注意到这个芯片有一个1K的闪存和一个芯片上的spi总线,这意味着它只是把内部的闪存作为外部的spi闪存。
嗨,谢哲,你也可以want to read AN-B-010 that is the application for SUOTA and explains it in more detail.As Marios mentions, it references the 14580, but 14583 is just the 14580+FLASH inside), so the same SUOTA scheme works (as documented in the 14580), In SDK5, it is included in the project example for the 14583 proximity reporter project.
BR JE_DIalog
谢谢杰先生。还有一个question,dou You got any SUOTA sourse code example in both 14580 agent side and host side such as ios app or andriod app?
嗨,谢哲9,
您可以在报告器和智能标签参考设计中找到SUOTA配置文件的实现。在主机端已经发送了一封邮件。
谢谢你的对话
Hi,
Suota模块似乎在5KB左右使用,这是推动我的实施过去32K。这是一个最小的.implementation。端口选择,如果固定,则不需要的所有内容。此外,在该示例中的接近模块的使用是什么。我认为自定义实施是必需的吗?
当做
Gayan
Hi gayan_gamage,
没有更小版本的SUOTA实现。关于这个例子的接近模块,我不太明白你的意思,接近的例子包括在
order to update over the air, the existing proximity firmware. If you just want the SUOTA profile in your custom design you dont have to add the proximity profile or the battery or other profiles that the proximity example implements.
谢谢你的对话
亲爱的MT\u dialog,
我还想测试一个OAT功能与DA14583和对话USB加密狗在窗口PC。
但我不能理解测试环境。
1) 放置一个fw\u multi\u部分_spi.bin文件归档到DA14583。
2) 我应该为dialog USB加密狗执行哪个项目?
3) 我应该在windowpc中执行哪个程序?
->我为“SUOTA initiator”运行了一个SmartSnippets程序。但我无法连接COM端口,因为“连接”按钮未激活。
嗨hogyunkim,
2) 我假设你想使用加密狗作为一个中心和583作为一个设备,没有必要下载加密狗上的任何固件,智能代码段将在连接时做到这一点(当你点击智能代码段中的连接)。
3) You should run the Smart Snippets and the OTA application, that will allow you to use the dongle as a central and download the SUOTA central fw into the dongle, you will have to use UART interface in order for the "Connect" option to be available.
谢谢你的对话
Dear Dialog,
我无法用我的加密狗激活“连接”按钮。
以前,我可以连接,但现在我无法连接到我的加密狗。
是否有任何固件执行USB加密狗?
I already select the right COM port with USB donlge port.
最好的祝福,
Hi hogynkim,
如果聪明的片段OTA的connect按钮rvices is deactivated is because you are using the JTAG interface in order to connect with the tool and not the UART port. When the Smart Snippets starts, please select the plain UART mode (not the UART/SPI mode). After that open the OTA services and hit the "Connect button", Smart Snippets will indicate "Loading firmware, please wait...." and after that it should indicate that "Firmware loaded successfully" and it will start the scanning procedure. The scanning procedure will finish automatically.
谢谢你的对话
谢谢你的评论。
I succesfully download a new image to DA14583 board with SUOTA.
所以,我将OTA配置文件合并到DSPS项目中
After that, I tested again with the merged DSPS project.
但我从下面的智能代码片段中得到了信息。
What did I wrong ? I refered the comment on "How to add the SUOTA profile to my SDK 5.0.3 application ?" page on FAQ.
我还检查了下载图像是否正常。
==============================================================================
[INFO @17-03-14 18:46:01] Establishing Link with target device...
[INFO @17-03-14 18:46:02] Link with target device has been established.
[INFO@17-03-14 18:46:02]特征发现开始。
[INFO @17-03-14 18:46:03] Characteristics discovery finished.
[INFO@17-03-14 18:46:37]固件下载已开始。。。
[INFO @17-03-14 18:46:37] SPOTAR_IMG_STARTED
[INFO@17-03-14 18:46:37]内存信息:
0 bytes
[错误@17-03-14 18:46:37]SPOTAR\ U INVAL\ U PRODUCT\ U HDR
[INFO @17-03-14 18:46:37] Firmware download failed.
[INFO @17-03-14 18:46:37] Target device has been disconnected. Please try to re-establish link.
==============================================================================
最好的祝福,
嗨hogyunkim,
您得到的错误表明flash中的产品标题有问题,这是您产生这种错误的唯一原因。在您的多部分映像(地址0x1F000)中是否有产品头,如果有,是否具有正确的产品头签名0x70和0x52?
谢谢你的对话
Dear Dialog,
我检查了产品标题,得到了下面的数据
[0x1f000] 70 52 00 00 00 00 80 00 00 00 00
[0x1F008]00 30 01 00 FF FF FF FF
[0x1F010]快闪快闪快闪快闪快闪快闪快闪
...
我认为多部分图像是正确的。
我对DA14583中与闪存的SPI通信表示怀疑。
I included the spi.c and spi_flash.c files in sdk_driver folder within DSPS project.
我在user\u periph\u setup.h文件中配置SPI\u端口和SPI\u管脚。
在DSPS项目中有什么固定点吗?
最好的祝福,
嗨hogyunkim,
Have you applied the on_spotar_status_change() function in order for the flash to be enabled since your device is the 583 in order for the application to enable the flash ?
您将能够在Prox_reporter示例中找到实现,这是函数的实现代码:
void on_spotar_status_change( const uint8_t spotar_event)
{
#如果定义了(\uu DA14583\uuu)&&(!SPOTAR(SPI禁用)
int8\t man\u dev\u id=0;
man_dev_id=spi_flash_enable(spi_EN_GPIO_端口,spi_EN_GPIO_PIN);
if(man\u dev\u id==SPI\u FLASH\u AUTO\u DETECT\u NOT DETECTED)
{
//设备未被识别。使用默认参数。
//或者,可以在这里断言错误。
spi\ u flash\ u init(spi\ u flash\ u DEFAULT\ u SIZE,spi\ u flash\ u DEFAULT\ u PAGE);
}
if( spotar_event == SPOTAR_END )
{
//电源向下SPI Flash
spi_flash_power_down();
}
#endif
}
#endif //(ble_spota_receiver)
/// @} 应用程序
谢谢你的对话
Dear Dialog,
我已经将此代码置于user_sps_device.c文件中。
I find the root-cause the reason why my DSPS project doesn't work the OTA operation.
原因是我将GPIO0\u3设置为以下。
=>GPIO\ U配置引脚(GPIO\ U端口\ U 0、GPIO\ U引脚\ U 3、输入\下拉、PID\ U SPI\ U DI、false);
Could you let me know why this pin is related to OTA operation.
我想知道其他影响OTA运作的别针。
我正在使用DA14580DEVKT-P_VB与DA14583芯片。
我用的是带SPI通讯的闪光区。
另外,我没有连接任何与PIN0\u 3的连接。
最好的祝福,
嗨hogyunkim,
Since you are using a 583 (and you have defined in your DSPS application that the dev kit used is a 583) there is no use for the GPIO0_3 the pins from the SUOTA sw, if the 583 is selected as a running device then the pins used by SUOTA are pins for the flash of the 583, (2_0 CLK / 2_3 CS / 2_4 MISO / 2_9 MOSI). In case of a 580 then the P0_3 is used as a CS for the external flash.
谢谢你的对话
Dear Dialog,
I also know your comment.
所以,奇怪的是,在GPIO0\ U 3引脚上进行了索塔操作。
If you test the below environment, then you can reproduce this phenamenon.
1) D14580DEVKT-P\ U VB、DA14583ATDB-P
2) ble\u应用程序_在线旅行社
+ gpio_configurepin(gpio_port_0,gpio_pin_3,input_pulldown,pid_spi_di,false);在set_pad_functions()函数中。
嗨hogyunkim,
Yes i am able to replicate what you are experiencing, it seems that when your configure the pin as PID_SPI_DI and when the SUOTA operates (it configures the pins of the SPI module whenever it starts an interaction with the flash) you have two pins that are simultaneously connected to one SPI module. When something like this happens (both pins have PID_SPI_DI so you have two sources in one input) the functionallity of the pin will be assigned to the GPIO that has the smaller GPIO index, therefore to the 03 port pin (and that why the SUOTA doesn't work). What you can do in your case, since i get that you would like to have an additional SPI device on the 583 is to apply the same thing that the SUOTA does (more or less) as far as the configuration of the pins is concerned, dont configure your pins in the periph_init() function with a specific functionallity but have them as PID_GPIO and as soon as you are going to use them, apply the corresponding configuration as soon as you finish de-configure your pins to the PID_GPIO functionallity.
谢谢你的对话
Dear Dialog,
Thanks for your reply.
我理解你的评论。
您的意见是,如果我想使用带有SPI通信的OTA函数,那么我不使用PID\u SPI\u DI定义,或者在完成OTA函数后必须使用PID\u SPI\u DI定义。
我有另一个问题。
Then the PID_SPI_CLK, PID_SPI_EN, PID_SPI_DO definitions doesn't effect to OTA function ?
最好的祝福,
嗨hogyunkim,
不,它不会影响其他SPI引脚,因为这些引脚并配置为输出功能,而不是朝向SPI模块的输入。
谢谢你的对话