Your new topic does not fit any of the above??? Check first. Then post here. Thanks.

Moderator: igrr

User avatar
By odilon
#40874 Unfortunately I do not have much to add, I agree with everything you're saying and I still have more to add.
I'm already a few months - not days - trying to put together a satisfactory working environment, as this module is very attractive.
In addition to the problems you are finding on the "mess" of available libraries, I tried - and keep trying - to develop an application that can use the ESP8266 as WiFi module and the Arduino as an application module (for connecting relays, sensors, etc. ..).
I tried to do this the various libraries and offered the best that struck me was the ITEADLIB_Arduino_WeeESP8266.

https://github.com/itead/ITEADLIB_Arduino_WeeESP8266

But apparently this library is also relegated to the background. For months without updating, I tried to use the development branch:

https://github.com/itead/ITEADLIB_Ardui ... ee/develop

No major differences.

It looks like it was abandoned support for this library.

I have had a number of problems; timeouts, loss of characters in the transmission buffer, overflow, etc ...

I finally choose to download a copy of the library in my equipment and I'm rewriting the parts more visible errors.

It's a shame, because it seems to me a very attractive solution for some applications - what seemed to be a very attractive solution was to use a small module as the ESP-01 as WiFi and ProMini Arduino, which has multiple ports like interface a series of 5V devices available in the market.
Well, let's see how things turn out.
Good luck.
User avatar
By mrburnette
#41116 IMO, Espressif has little concern about anything Arduino... cores, libraries, hobbyists. They have an API for developers and the seriously profitable work is done within their supplied tool-set. Arduino is a learning/hobby platform and while some commercial products may spin from these efforts, you're not going to find Arduino doing anything critical where serious liability could exist.

Arduino libraries are written by Adafruit, Sparkfun, ITead, and others to support their product s. Arduino enthusiasts create libraries and morph other libraries to run on different architectures. None of this stuff is commercial grade... that is, there is no liability or warranty... no competent company would ship a defibrillator with an Arduino running the unit.

Then we have others that want to do something and find a support library and cannot get all pegs to fit into all the holes. They become frustrated, blame the libraries, blame the chip manufacturer, blame the core writer ... but do not have the expertise to write a library or evolve an existing one. They complain, but provide no true value to the ecosystem, only noise and despair.

If you are going to play in this hobby and be serious, you must learn to code. You must become a team player, not just a user of whatever happens to be easily available. If you are frustrated, it is your own fault for not becoming more knowledgeable. A hobby is no different than a sport and athletes are not successful unless they practice, practice, practice.


Opinion by Ray
User avatar
By bobcroft
#41119 There have been some interesting points raised particularly about the proliferation of libraries but what really bugs me is that variant libraries have the same name! PubSubClient to name one, there are two principle versions, the original by Nick O'lleary and a variation by Imroy but as far as I can see they do not play together nicely. both have their strengths and both are good but why use the same name??
I have to agree with Mr Burnette's summary. For my part I use Arduino 1.6.5 and esp/Arduino V 2.0, if I use the libraries contained in those setups I have very few problems. I use NPT, Ds3231, I2C displays, various GLCD's all directly on the ESP8266-12.

The one thing I cannot do is to get any of the 'bridge' or 'link' libraries to work to link an ESP8266 to an UNO or MEGA but I am still trying.
User avatar
By mrburnette
#41124
bobcroft wrote:There have been some interesting points raised particularly about the proliferation of libraries but what really bugs me is that variant libraries have the same name!


One thing I do often is to include the library(ies) into the sketch folder and then reference them as
#include "./libraryname.h"

I do this not only for the reason you mentioned, but I am notorious about hacking any library to customize it to the project at hand. My customization often makes the resulting code not appropriate for inclusion in
~/Arduino/libraries
Their is absolutely no downside to this approach other that a weebit of duplicated code on the harddisk. The upside is that much 3rd party, modified code is confined into the sketch folder and all .ZIP backups.

This project for the STM32F103 is a poster child for this technique of library encapsulation.

Ray