e-music
Member level 5
Hi,
This is my first IOT-enabled project. After a bit of research, I found that the ESP8266 is probably the most popular SOC out there to add connectivity to an embedded project and it is backed up with a lot of resources and communities online. However, most of the reference projects and examples I have found so far are designed to work with Arduino platform, which is not my host platform.
Adapting many of the Arduino code to another platform is not a big issue, but I still prefer to stick with code tailored originally to my chosen uC, the STM32F4.
So far, I have been able to build the necessary power supply circuit for the ESP8266 module and communicate with the module over serial communication using Tera Term. I have read most of the introductory literature about the module, its programming, and the AT command set, however, I still have some questions on certain aspects that need to be explained before I can get where I want in the development of my connected product.
First of all, I know that the ESP8266 was designed to make developer's life easier when connectivity is to be added to an existing product. For now, all I need to do is to be able to update the firmware of my product (not the ESP8266 module itself) over the air. The STM32F4 provides Secure Firmware Update over UART (Ymodem protocol) where the firmware has to be sent from a web page/sever over a communication channel to the host uC. I was wondering if such a scenario is possible utilizing the AT Firmware of the ESP8266, aside from SDK and custom firmware development. If yes, could someone please elaborate more about the process or where I can find more about it?
My second question is about the cloud service. I have seen some IOT-enabled products that incorporate a similar SOC that makes it possible for a given product to be updated/managed through a connection to a cloud service for the OEM. Why would someone need a paid cloud service to manage the product? Is there any way to implement the update/management service page, server, you name it, on a shared host in order to eliminate the involvement of a third-party cloud server?
Any input is highly appreciated so please do not hesitate to share any bit of info you've got about the subject!
Thank you guys!
This is my first IOT-enabled project. After a bit of research, I found that the ESP8266 is probably the most popular SOC out there to add connectivity to an embedded project and it is backed up with a lot of resources and communities online. However, most of the reference projects and examples I have found so far are designed to work with Arduino platform, which is not my host platform.
Adapting many of the Arduino code to another platform is not a big issue, but I still prefer to stick with code tailored originally to my chosen uC, the STM32F4.
So far, I have been able to build the necessary power supply circuit for the ESP8266 module and communicate with the module over serial communication using Tera Term. I have read most of the introductory literature about the module, its programming, and the AT command set, however, I still have some questions on certain aspects that need to be explained before I can get where I want in the development of my connected product.
First of all, I know that the ESP8266 was designed to make developer's life easier when connectivity is to be added to an existing product. For now, all I need to do is to be able to update the firmware of my product (not the ESP8266 module itself) over the air. The STM32F4 provides Secure Firmware Update over UART (Ymodem protocol) where the firmware has to be sent from a web page/sever over a communication channel to the host uC. I was wondering if such a scenario is possible utilizing the AT Firmware of the ESP8266, aside from SDK and custom firmware development. If yes, could someone please elaborate more about the process or where I can find more about it?
My second question is about the cloud service. I have seen some IOT-enabled products that incorporate a similar SOC that makes it possible for a given product to be updated/managed through a connection to a cloud service for the OEM. Why would someone need a paid cloud service to manage the product? Is there any way to implement the update/management service page, server, you name it, on a shared host in order to eliminate the involvement of a third-party cloud server?
Any input is highly appreciated so please do not hesitate to share any bit of info you've got about the subject!
Thank you guys!