ESP8266 warning: espcomm_sync failed error: espcomm_open failed UBUNTU 18.04

Can't force upload sketch from arduino IDE.

warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed

dmseg

[ 4980.110605] usb 3-4: new full-speed USB device number 9 using xhci_hcd
[ 4980.305550] usb 3-4: New USB device found, idVendor=10c4, idProduct=ea60
[ 4980.305556] usb 3-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4980.305561] usb 3-4: Product: CP2102 USB to UART Bridge Controller
[ 4980.305565] usb 3-4: Manufacturer: Silicon Labs
[ 4980.305569] usb 3-4: SerialNumber: 0001
[ 4980.317468] cp210x 3-4:1.0: cp210x converter detected
[ 4980.319521] usb 3-4: cp210x converter now attached to ttyUSB0

lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 009: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART Bridge / myAVR mySmartUSB light
Bus 003 Device 002: ID 24ae:1100  
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Settings in Arduino IDE

Board NodeMCULuA 1.0
CPU 80 Mhz
Upload Speed 115200
Flash Size 4M(1m SPIFFS)
Programmer AVR ISP

Provided access to the ttyUSB0 by command sudo chmod 666 /dev/ttyUSB0

Previously worked on 16.04. What can be the problem and how to solve it? Behavior chip also changed. Earler diode only flashed when sketch was uploading, now is always on till the sketch start uploading and switched off when error is displayed.

Any help will be usefull.


Please check that you are member of dialout group.
If not please add yourself to this group by running sudo usermod -a -G dialout $USER, log-out and log-in again.

For more predictable results you may try to run esptool.py directly to check that your board is alive:

sudo apt-get install python3-pip
sudo pip3 install esptool

esptool.py --port /dev/ttyUSB0 chip_id

You will get output which is similar to shown below:

  • ESP8266 example

    $ esptool.py --port /dev/ttyUSB0 chip_id
    esptool.py v2.3.1
    Connecting....
    Detecting chip type... ESP8266
    Chip is ESP8266EX
    Features: WiFi
    Uploading stub...
    Running stub...
    Stub running...
    Chip ID: 0x01234567
    Hard resetting via RTS pin...
    
  • ESP32 example

    $ esptool.py --port /dev/ttyUSB0 chip_id
    esptool.py v2.3.1
    Connecting....
    Detecting chip type... ESP32
    Chip is ESP32D0WDQ6 (revision (unknown 0xa))
    Features: WiFi, BT, Dual Core, VRef calibration in efuse
    Uploading stub...
    Running stub...
    Stub running...
    Chip ID: 0x01234567890a
    Hard resetting via RTS pin...
    

If it does not help - check your wiring, board temperature, cable and so on.


Here is what I did...

  1. Install Arduino using scripts from the Arduino Website (preferably run the install.sh as sudo)
  2. Run the arduino from terminal as sudo:

    sudo arduino

Everything worked after this...

Note:
'sudo arduino' and 'arduino' launch different environments of IDE so make sure you don't waste time setting up one without sudo.