Skip to content

Arduino UNO WiFi's ESP8266 is uncompatible with this framework. #3004

Closed
@gvJaime

Description

@gvJaime

Basic Infos

Hardware

Hardware: Arduino UNO WiFi's esp8266
Core Version: 2.3.0

Description

Description of the board

The Arduino UNO WiFi is an Arduino UNO with an ESP module integrated on the board. (That is, ESP8266, SPI flash memory, everything).

The board is provided with a firmware that allow certain WiFi functionalities to be called from the ATMEGA, but this requires the I2C pins to be used, despite the serial pins being connected between the ESP8266 and the ATMEGA. It makes you miss some funcionalities, so I tried to make a custom firmware using this framework.

This board could be a quite decent integrated solution for having an ESP8266 as main processor of a Thing, and the ATMEGA as a microcontroller, (instead of having an ESP module hanging from an Arduino UNO, with the logical converter and everything) but it seems uncompatible with anything done with this framework.

Description of the issue

While loading a custom firmware into the ESP8266 integrated in this board is possible, that ESP8266 won't do anything when loaded with a firmware made with this framework. No wifi, no serial, no GPIO response. Not even debug messages, or stack messages. The ESP8266 won't even heat.

What does work

It will however, boot with the Arduino original firmware and the original Jeelabs firmware this is based on.

Original source-code-examples will boot, but serial communication is difficult due to the wiring of the UART0 to the USB port.

What does not work

Anything made with this framework.

Using eboot to boot the original esp-link firmware won't work. Also, trying to boot Arduino Core made firmware with espressif's bootloader won't work either (I don't know if doing that even makes sense).

Hardware particularities

The module seems nothing special compared to any other board, except for the fact that it has an UART to I2C attached to the UART0 pins, and into the Arduino I2C pins. Serial communication relays in a sketch that turns the ATMEGA328P into another I2C to Serial converter, so it goes throught the I2C to Serial, the ATMEGA, and the Serial-to-USB at a max rate of 9600 baud.

This process can be skipped by grounding a testpoint in the board, so the UART0 is connected directly to the Serial-to-USB module, and faster baudrates are possible. No serial communication is detected this way either.

Settings in IDE

Module: Generic ESP8266 Module
Flash Size: 4MB
CPU Frequency: 80MHz
Flash Mode: qio
Flash Frequency: 80MHz
Upload Using: SERIAL 9600 baud
Reset Method: nodemcu works.

This has also been tried with the PlatformIO IDE. With the same results. Using espressif's esptool, or igrr esptool-ck yields same results.

Sketch

#include <ESP8266WiFi.h>

void setup()
{
  Serial.begin(9600);
  Serial.println();
  Serial.println("Initializing...");
  Serial.println();
}

void loop(){
  delay(1000);
  Serial.println("Test");
}

Although I tried every example I found out there.

Debug Messages

We get no response from the chip, so there is no Debug messages.

Although, when the board is freshly uploaded with a new sketch, the Serial Monitor always spits 3 characters, usually "00,". Upon restarting, no signal is received anymore.

When following the instructions, selecting 9600 baud, this code appeared:

00, c112
~ld

Again, upon restart, no messages are detected anymore.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions