Yes, obtaining a final design with the mcu and WiFi on a single chip would be my ultimate goal.
Also, the thing is, I am familiar with c++ and can code in arduino. So, if moving to ARM later, I don't want to face much trouble in converting my arduino code to the ARM.
So if I am prototyping this project with an arduino, and I want to make the firmware proprietary along with the circuit, for the production design, will there be any need to move to an ARM platform, or I can stick to the avr family itself?
I can devide the questions into two parts
1.Whether you need to change your platform?
I cannot answer this question for sure since there is no limited information. I can share you with some of my experience
a. You are a wireless product which mean you need to pass FCC later for production. The less electronics the lower possiblity for interference.
b. You need to make sure whether AVR family MCU performance can fit your design.
2.How to implement coding transplanting?
Well, my suggestion is that you need to organize your coding style for firmware for such coding transplant.
You'd better to seperate your coding with logic algorithm layer driver layer and one hardware abstraction layer as the interface for your algorithm.
Considering coding transplanting, you will ONLY change the driver layer with minimum effort.
Also, arduino code is well encapsulated with C++ while many ARM platform is using C code. The majority of the work is to drive the same hardware resource (I2C/SPI/UART) in different language.
Actually, I am on a project to do such code transplanting automatically by seperate all the hardware access to atomic level and keep logic the same. (http://wikit.co) My thoughts is to import arduino code and transform it into visual flowcharts. By adding the mapping library between atomic hardware access in flowchart and target MCU, we will directly had design ready code for target platform since algorithm part is always the same in different platform.
However it is just a prototyping and can not be used for commercial now.
You can also follow my project status on hackaday.io