Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Beginning with IOT, ESP8266, cloud and device management/FW update for STM32F4

Status
Not open for further replies.

e-music

Member level 5
Joined
Dec 29, 2017
Messages
84
Helped
0
Reputation
0
Reaction score
0
Trophy points
6
Activity points
1,065
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!
 

where I can find more about it?

You have certainly came across the OTA project available on Github; I downloaded it a time ago and I was able to confirm that it works nice, but when trying to do with my code - which was really big - it gave stack overflow problems, and I did not insist on solving it, but if I were you, I would use this as template for a starting point: https://github.com/esp8266-examples/ota-basic

Why would someone need a paid cloud service to manage the product?

Because otherwise you would have to not only get a public IP, as you also would have to ensure the uptime of a server. The great advantage of using brokers is that this way your system will act as a client, what means that any connections would be made just on demand, not being necessary to be permanently online.
 

Thank you very much. I will take a look at that project.

As far as cloud server is concerned, why not implement own server on a shared hosting server? What is the infrastructure that most of those providers implement to offer their service?
 

Hello,
Yes you can implement your own host.
But it's still time consuming, and not all users have the experience to deal with it.
The available cloud platforms may be useful for someone who need to focus on the other aspect of his project and take advantage of the existing services (it that fits your needs of course).
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top