This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Overall program flow for a file transfer application

Hello everybody!

All boards below below have nRF52832 chips.

My task now is to develop a set of applications that will support the following scenario:

1) A person sends a file (.zip archive) to a board X. 

2) This file is saved inside the flash memory.

3) The board X sends this file to a board Y via BLE.

4) The board Y saves the file inside flash memory.

5) The board Y transfer this file via SPI to a board Z.

At this moment, I more or less understand how to do steps 2, 4. 

I think that for step three I can possibly use NUS (something like in UART example).

At this moment, I do not look at step 5, so we can omit it.

The questions then are:

1. What is the best way to perform step 1?

2. Am I correct with my assumption on using NUS to transfer files between the boards?

Regards,

Joseph

Parents
  • 1. That depends. You could use nus, or you could look at our DFU examples and do something similar. The easiest would probably be to set up a ble "uart service" and transfer the data over that.

    2. Sure. That would probably be work our ok. But you might want to add a crc check or something to the file. Possibly bu setting up a control service that you use to make sure the data is correctly transfered. That said, the LL has acknowledgement and CRC checking, packets will be retransmitted until acknowledged or until the connection times out (I would still recommend that you verify the file after the transfer is completed though).

    In both cases you should consider increasing the data packet length and ATT mtu size. and possibly also enabling 2mbit to increase throughput.

Reply
  • 1. That depends. You could use nus, or you could look at our DFU examples and do something similar. The easiest would probably be to set up a ble "uart service" and transfer the data over that.

    2. Sure. That would probably be work our ok. But you might want to add a crc check or something to the file. Possibly bu setting up a control service that you use to make sure the data is correctly transfered. That said, the LL has acknowledgement and CRC checking, packets will be retransmitted until acknowledged or until the connection times out (I would still recommend that you verify the file after the transfer is completed though).

    In both cases you should consider increasing the data packet length and ATT mtu size. and possibly also enabling 2mbit to increase throughput.

Children
No Data
Related