Can't install ESPTOOL (Linux nor Win7) to flash new firmware

Hi guys,

I’ve bought two T-Beam V1.1 (T22_V1.1 20210222) preloaded with Meshtastic v1.0.0 firmware preloaded.

To test:

  • Installed Meshtastic App in my Android phone (version 1.2.50),
  • Both devices run, and see each-other, and can pair via Bluetooth,
  • But air update doesn’t work on the devices.

So I tried the command line approach, as prompted by the " software too all to work with this App" warning message, but I hit an error when trying to flash via Linux and via Windows:

Linux Machines (2 machines, Linux Mint 17.3 and Linux Mint 19.3):

-Installed Python3 (version 3.6.9 in one and older version in the other)
-Installed Pip3 (version 9.0.1 in one, and pip in the other)
-Installed esptool in the machine with Python 3/pip3 but the esptool chip_id command generates the same error as reported below for the Windows machine, and by the older Linux machine.

In the Windows 7 machine:

  • Installed driver from manufacturer (I CAN see the T-Beam as “USB SERIAL - CH9102 (COM41)” )
  • Installed python (version 3.4.2) along with python path into the System PATH variable.
  • Installed pip (version 1.5.6)
  • Installed Git (version 2.34.1.windows.1)
  • But I can’t install esptool: I hit the following Syntax error either when attempting to install esptool from Windows, or when attempted to communicate with the T-Beam from my Linux machines using the esptool chip_id command line):

Exception information:
Traceback (most recent call last):
File “C:\Python34\lib\site-packages\pip\basecommand.py”, line 122, in main
status = self.run(options, args)
File “C:\Python34\lib\site-packages\pip\commands\install.py”, line 278, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File “C:\Python34\lib\site-packages\pip\req.py”, line 1229, in prepare_files
req_to_install.run_egg_info()
File “C:\Python34\lib\site-packages\pip\req.py”, line 325, in run_egg_info
command_desc=‘python setup.py egg_info’)
File “C:\Python34\lib\site-packages\pip\util.py”, line 697, in call_subprocess
% (command_desc, proc.returncode, cwd))
pip.exceptions.InstallationError: Command python setup.py egg_info failed with error code 1 in C:\Users\Carola\AppData\Local\Temp\pip_build_Carola\cryptography

Thanks for your eventual help.

After longsuffering several forums, youtube videos, etc. I finally managed to flash the new version to the TBeams. I’m transcribing below the steps taken to get it done. The solution may well start at Step #6 (using sudo in the command line), but maybe one of the reinstallations that I made on step #4 cleared the path…):

  1. Flashing ESP32 devices firmware
    1.1 Check that T-Beam is visible in USB Port:
    You should see something like: ID 10c4:ea60 Silicon Labs CP210x UART Bridge for CP210X or ID 1a86:55d4 QinHeng Electronics USB Single Serial for CH9102
    1.2 Install USB driver as needed:
    CH343SER.ZIP - 南京沁恒微电子股份有限公司

  2. Install Python3
    2.1 Check if you have Python3:
    python3 --version

2.2 Install Python3 if needed:
sudo apt-get update
sudo apt-get install python3

  1. Install Pip
    3.1 Chec if you have pip3:
    pip3 --version
    3.2 Install pip if needed:
    sudo apt-get install python3-pip

  2. Install esptool
    4.1 Install esptool
    pip3 install --upgrade esptool
    4.2 confirm communication with Chip (optional?-> Didn’t work)
    esptool chip_id

Note: this was the stage that took most of the effort, as even when it was installed, it threw a syntaxis error message or a “tty/USB0” not found message in esptool when running ‘esptool chip_id’ line command. The funny thing was that running it without arguments it displayed the version, and the help as expected. Therefore, I tried to re-install, and upgrade many times Pip, esptool, etc. with no significant change… Both in Linux and Windows. It was very frustrating in deed. DON’T TAKE THIS WAY, EVEN IF THE ‘esptool chip_id’ COMMAND DOESN’T RUN PROPERLY, INSTEAD PROCEED WITH THE NEXT STEPS, AND NOTE THE ‘sudo’ PORTION OF STEP #6, WHICH I THINK IT WAS KEY IN SOLVING THIS ISSUE.

  1. Download firmware:
    5.1 Download the latest firmware version:
    Releases · meshtastic/Meshtastic-device · GitHub

  2. Flash the firmware:
    6.1 Go to firmware directory:
    6.2 Pick up the correct bin file and run:
    sudo ./device-install.sh -f firmware-tbeam-1.2.48.371335e.bin

1 Like

I know you frustration, my age 70+ take me several days and heavy nights to get that running both in WIN10 (using git bash) just flash 4 those boards this way.
starting from or inside the map where the full firmware zip is copied into
c:\meshtastic/firmware/48/
./device-install.sh -p COM4 -P python3 -f firmware-tbeam-1.2.48.371335e.bin

Linux, using terminal.

2 Likes

Thanks for your feedback. I guess now we have two solutions for this problem…

Thank you so much. I’ve had some issues with the same version of the board. I’m using the Arduino IDE and older revisions with the silicon labs driver on MacOS works ok but these new boards no longer show up as a port in the ide (UART over usb).

I had to try on Linux (Ubuntu) and download the silicon labs driver for it to show up as serial device.

Not sure if it’s the QinHeng Electronics USB Single Serial for CH9102 thats different from the previous versions.