USB on macOS Monterey 12.3

This is my first time working with these devices, I have a T22_v1.1, 20210222 model of the TTGO T-Beam.

When I plug in the USB cable, it shows up as “USB Single Serial”, but the Meshtastic Flasher doesn’t seem to be able to see it. It picks it up on /dev/cu.wchusbserialxxxxxx - but I can’t flash the firmware of anything.

I’ve dug around the internets for several hours now and haven’t found a solution. I’ve tried installing the recommended drivers but nothing seemed to change.

I’m including a screenshot of my Mac info, hoping this helps.

This is what I get when I try to run the Meshtastic Flasher…

Step 1/4 esp32 full
ESPTOOL Using command:--port /dev/cu.usbmodem53220383961 erase_flash
esptool.py v3.2
Serial port /dev/cu.usbmodem53220383961
Traceback (most recent call last):
File "/Users/brent/meshtastic-flasher/venv/lib/python3.8/site-packages/serial/serialposix.py", line 322, in open

self.fd = os.open(self.portstr, os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK)
OSError
:
[Errno 16] Resource busy: '/dev/cu.usbmodem53220383961'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/brent/meshtastic-flasher/venv/lib/python3.8/site-packages/meshtastic_flasher/esptool_form.py", line 70, in run

esptool.main(command)
File "/Users/brent/meshtastic-flasher/venv/bin/esptool.py", line 4541, in main

esp = esp or get_default_connected_device(ser_list, port=args.port, connect_attempts=args.connect_attempts,
File "/Users/brent/meshtastic-flasher/venv/bin/esptool.py", line 121, in get_default_connected_device

_esp = ESPLoader.detect_chip(each_port, initial_baud, before, trace,
File "/Users/brent/meshtastic-flasher/venv/bin/esptool.py", line 372, in detect_chip

detect_port = ESPLoader(port, baud, trace_enabled=trace_enabled)
File "/Users/brent/meshtastic-flasher/venv/bin/esptool.py", line 329, in __init__

self._port = serial.serial_for_url(port)
File "/Users/brent/meshtastic-flasher/venv/lib/python3.8/site-packages/serial/__init__.py", line 90, in serial_for_url

instance.open()
File "/Users/brent/meshtastic-flasher/venv/lib/python3.8/site-packages/serial/serialposix.py", line 325, in open

raise SerialException(msg.errno, "could not open port {}: {}".format(self._port, msg))
serial.serialutil
.
SerialException
:
[Errno 16] could not open port /dev/cu.usbmodem53220383961: [Errno 16] Resource busy: '/dev/cu.usbmodem53220383961'

Newly purchased tbeams? What software is on them?

I was able to get Meshtastic v1.2.50 on them using the wifi/web interface… But I need to get them updated to v1.2.52 or higher.

If I turn the https interface on, is there a way to flash them with a newer version?

I’m trying a different Mac and this is what I get when I try to use the Flasher tool…

Step 1/4 esp32 full
ESPTOOL Using command:--port /dev/cu.usbmodem53220383961 erase_flash
esptool.py v3.2
Serial port /dev/cu.usbmodem53220383961
Connecting...

.


Detecting chip type...

Unsupported detection protocol, switching and trying again...
Connecting...

.

.


Detecting chip type...

ESP32


Chip is ESP32-D0WDQ6-V3 (revision 3)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 44:17:93:87:88:24
Uploading stub...
Traceback (most recent call last):
File "/Users/brent/meshtastic-flasher/venv/lib/python3.8/site-packages/meshtastic_flasher/esptool_form.py", line 70, in run

esptool.main(command)
File "/Users/brent/meshtastic-flasher/venv/bin/esptool.py", line 4564, in main

esp = esp.run_stub()
File "/Users/brent/meshtastic-flasher/venv/bin/esptool.py", line 879, in run_stub

self.mem_block(stub[field][from_offs:to_offs], seq)
File "/Users/brent/meshtastic-flasher/venv/bin/esptool.py", line 752, in mem_block

return self.check_command("write to target RAM", self.ESP_MEM_DATA,
File "/Users/brent/meshtastic-flasher/venv/bin/esptool.py", line 505, in check_command

raise FatalError.WithResult('Failed to %s' % op_description, status_bytes)
esptool
.
FatalError
:
Failed to write to target RAM (result was 01070000: Operation timed out

I’m a completely newbie with this — just got my Lilygo Tbeams today, also T22_v1.1. After some trial and error, I got this working on macos 12.2.1:

  1. install driver from CH34XSER_MAC.ZIP
  2. unzip firmware-1.2.59.d81c1c0.zip
  3. run the device-install.sh script:
    bash device-install.sh -p /dev/cu.wchusbserial* -f firmware-tbeam-1.2.59.d81c1c0.bin

Thank you! This did the trick… I did have to install esptool, but once I figured that out, I got the boards updated.

Hi, i tried to flash my tbeam with one of the latest 2.0.* versions. MacOS Monterey 12.6.2 No luck so far.

I got this message zsh: no matches found: /dev/cu.wchusbserial*. Does this ring the bell?

Driver is now built in to macOS

1 Like