OTA Arduino

Hello everyone,
I'm currently planning to start a new project. I need to develop an OTA system for the arduino nano using ESP-12E module. The esp module will get the hex file, store it in SD card and then it will upload the HEX file to the arduino nano. But the problem is that, I'm a newbie in arduino boot-loaders and don't know much about it.
It would be great if someone can give a lead or send me any good tutorial to get started.
Thanks in advance.

Although in theory it might sound simple, OTA have some pitfalls.

I've modified the Optiboot to provide a mechanism to program the MCU from data stored on an external SPI flash. Have a look on the code/documentation: Bitbucket

The idea is to use the main program to handle the data transfer and the bootloader takes cares of the programming.

need to develop an OTA system for the arduino nano using ESP-12E module.

GeeWhiz! What a waste ... The ESP8266 could just be programmed with the Arduino sketch and forget about the Nano. If done in that way, the O-T-A is already implemented for the ESP8266.
http://esp8266.github.io/Arduino/versions/2.0.0/doc/ota_updates/ota_updates.html

There is a lots of computing power in the ESP8266 ... far more than any Nano. Obviously, there may be issues with porting some 8-bit libraries into the 32-bit ESP world and there are some serious pin-current handling issues that may require some hardware buffering (FET/transistors) but overall many Arduino sketches can be ported.

Ray

I am using Arduino 1.8.0 where I am not getting what is said in:

http://esp8266.github.io/Arduino/versions/2.0.0/doc/ota_updates/ota_updates.html.

For reference I am hereby attaching the Snapshot.

I am not getting the Update using OTA in my Tools list.

Please give me urgent Reply.

ota-ide-ota-upload-configuration.png