I ve been using the WIFIESP (GitHub - bportaluri/WiFiEsp: Arduino WiFi library for ESP8266 modules) library with AVR based arduinos but since switching to a Zero, the library will no longer compile for ARM architecture. It seems that other people have faced the same issue and there are some fixes posted but they didn't work for me. Unless of course I didnt find the right fix!
Can anyone suggest another library for ESP8266 modules (like the ESP-01) compatible with SAMD21 based boards?
Hi again!
Well I did try to upgeade the firmware.
In fact I spent the whole day.. unsuccesfully.
Theere are a number of howto videos online and I even read the official manual ... but I must be doing something wrong.
One thing that i ve noticed is that the module responds differently to AT commands depending on where it is connected. When conencted to a PC serial port via a TTL to USB converter it responds to an AT+GMR command like this:
In addition, when connected this way other AT commands result in ERROR.
For example : AT+RST ERROR
If I now connect it to the serial port of my SAMD21 and send the same command I get a different response :
AT+GMR
AT version:1.2.0.0(Jul 1 2016 20:04:45)
SDK version:1.5.4.1(39cb9a32)
Ai-Thinker Technology Co. Ltd.
Dec 2 2016 14:21:16
Also other commands that previously resulted in error, now work.
I couldnt explain this difference in behavior and I ve even tried it with a different module with the same result.
The upgrade tool wont recognize the module and the process wont start. I just see the dots....
Well, this was how this issue started in the first place: ΅WiFiEsp library wont compile for arduino zero..
In file included from D:\Dropbox\MCU\Controller_Firmware\libraries\WiFiEsp\src/WiFiEsp.h:30:0,
from C:\Users\John\AppData\Local\Temp\arduino_modified_sketch_13596\Controller_WIFI_PLC_Gateway_V3.ino:83:
D:\Dropbox\MCU\Controller_Firmware\libraries\WiFiEsp\src/utility/EspDrv.h:315:9: error: reference to 'RingBuffer' is ambiguous
static RingBuffer ringBuf;
^~~~~~~~~~
In file included from D:\Dropbox\MCU\Controller_Firmware\libraries\WiFiEsp\src/utility/EspDrv.h:26:0,
from D:\Dropbox\MCU\Controller_Firmware\libraries\WiFiEsp\src/WiFiEsp.h:30,
from C:\Users\John\AppData\Local\Temp\arduino_modified_sketch_13596\Controller_WIFI_PLC_Gateway_V3.ino:83:
D:\Dropbox\MCU\Controller_Firmware\libraries\WiFiEsp\src/utility/RingBuffer.h:23:7: note: candidates are: class RingBuffer
class RingBuffer
^~~~~~~~~~
In file included from C:\Users\John\AppData\Local\Arduino15\packages\arduino\hardware\samd\1.8.13\cores\arduino/SafeRingBuffer.h:24:0,
from C:\Users\John\AppData\Local\Arduino15\packages\arduino\hardware\samd\1.8.13\cores\arduino/Uart.h:23,
from C:\Users\John\AppData\Local\Arduino15\packages\arduino\hardware\samd\1.8.13\variants\arduino_zero/variant.h:43,
from C:\Users\John\AppData\Local\Arduino15\packages\arduino\hardware\samd\1.8.13\cores\arduino/Arduino.h:51,
from C:\Users\John\AppData\Local\Temp\arduino_build_220160\sketch\Controller_WIFI_PLC_Gateway_V3.ino.cpp:1:
C:\Users\John\AppData\Local\Arduino15\packages\arduino\hardware\samd\1.8.13\cores\arduino/api/RingBuffer.h:59:41: note: typedef class arduino::RingBufferN<64> arduino::RingBuffer
typedef RingBufferN<SERIAL_BUFFER_SIZE> RingBuffer;
^~~~~~~~~~
I also googled and find the above fix #26 and followed all the instructions to rename ringBuffer etc but i now get a huge list of compile errors and I am lost.
Do you mind sending me your library files to see where I made a mistake ?