So you're a Noob? Post your questions here until you graduate! Don't be shy.

User avatar
By ekalyvio
#71523 I am working on a project which requires software development on an ESP8266 processor from Espressif. Right now I am creating my prototype in Adafruit's Feather Huzzah board. Eventually, when my prototype works perfectly, I will have to produce at least 200 boards with electronics in them. For that reason, I will later design my own custom boards with the ESP8266 processor in them so they meet my specifications.

In which platform should I start developing? Arduino or the official SDK from Espressif?

Arduino is mostly a hobbyist style platform and I don't think it would be correct to be used as a development environment for products that are going to enter the market. On the other hand, I am worrying that by using the official SDKs from Espressif I will have to reinvent the wheel. For example, if I want to read an SD card by using the SPI interface I don't think that I can find such library to do that on the original SDK. On the other hand, on Arduino there are hundreds of such libraries that can be used with ease.

Can Arduino libraries be ported on the official Espressif SDK?
If not, Is anywhere a web site that contains various libraries written specifically for the Espressif SDK? I am sure I can find something on GitHub but are these anywhere centralized? (eg. using some kind of package manager to download them).

Which is your advice?
User avatar
By electronicsguy
#76602 " I don't think it would be correct to be used as a development environment for products that are going to enter the market" - why don't you say why you think so.

FYI: Linux was just a hobby project. http://www.cs.cmu.edu/~awb/linux.history.html Do you think it entered the commercial market?
User avatar
By McChubby007
#76604 I think it will depend on what restrictions you have on the commercial product you are making; whether it will have a licence which precludes using open source software, or whether you would be using open source software and not keep to the licensing requirements, for example. Perhaps you do not wish to share your intellectual property and this cannot use open source in conjunction with it. If your product has to be quality assured/validated to a certain standard, then again, some openly available software may not be valid or assured for the job, or may be specifically precluded from such functions. In other words; IT ALL DEPENDS. If you give more info, perhaps we can answer.
User avatar
By rudy
#76605
I will later design my own custom boards with the ESP8266 processor in them so they meet my specifications.


The ESP8266 processor or do you mean an ESP module like the ESP-12? I doubt you have the necessary experience or verification tools to equal the performance of the available modules.

The resources available with the Arduino infrastructure does make development easier. Yes there are many libraries. (not all of them good)

You may consider want to consider a framework like Mongoose. https://mongoose-os.com/ It would speed development and it is offered as a commercial development platform. It is not free, but it may cut a lot of time off the development time for the product, and therefor worth the cost.

I have never used Mongoose, I use it as an example for consideration. I do know they are actively supporting their product.

Something you also need to consider is that there is no security as far as the code in the ESP8266 flash memory. If someone wanted to copy your product and use your code it would be a relatively simple thing to do. From what I have read, the ESP32 has code protection features.