-
Notifications
You must be signed in to change notification settings - Fork 139
Description
Thank you in advance for your help!
My Env:
- Python: 3.13.1
- Windows 10: 22H2 OS Build 19045.6083
- rshell: 0.0.32
- pyreadline3: pyreadline3-3.5.4
- esptool: v5.0.2 (flash_id works with --port COM3)
- Board: ESP32-WROOM-32
Issue:
When I run rshell --port COM3, it seems to connect to the ESP32, but then crashes with a traceback complaining about "module 'readline' has no attribute 'backend'". I have tried installing 'readline', but I get the usual "not compatible with Windows" error. So, I followed the Issues here and went the pyreadline3 route (after a few iterations of editing rshell main.py and installing pyreadline).
Here is a run attempt with Traceback:
(.venv) C:\pycharm-dev\projects\esp32-wroom-32\rshell-0.0.32>rshell --port COM3
Using buffer-size of 32
Connecting to COM3 (buffer-size 32)...
Trying to connect to REPL connected
Retrieving sysname ... esp32
Testing if ubinascii.unhexlify exists ... Y
Retrieving root directories ... /boot.py/
Setting time ... Aug 05, 2025 13:13:17
Evaluating board_name ... pyboard
Retrieving time epoch ... Jan 01, 2000
Welcome to rshell. Use the exit command to exit rshell.
Traceback (most recent call last):
File "", line 198, in _run_module_as_main
File "", line 88, in run_code
File "C:\pycharm-dev\projects\esp32-wroom-32.venv\Scripts\rshell.exe_main.py", line 7, in
sys.exit(main())
~~~~^^
File "C:\pycharm-dev\projects\esp32-wroom-32\rshell-0.0.32\rshell\command_line.py", line 4, in main
rshell.main.main()
~~~~~~~~~~~~~~~~^^
File "C:\pycharm-dev\projects\esp32-wroom-32\rshell-0.0.32\rshell\main.py", line 3109, in main
real_main()
~~~~~~~~~^^
File "C:\pycharm-dev\projects\esp32-wroom-32\rshell-0.0.32\rshell\main.py", line 3092, in real_main
shell.cmdloop(cmd_line)
~~~~~~~~~~~~~^^^^^^^^^^
File "C:\pycharm-dev\projects\esp32-wroom-32\rshell-0.0.32\rshell\main.py", line 1897, in cmdloop
cmd.Cmd.cmdloop(self)
~~~~~~~~~~~~~~~^^^^^^
File "C:\Python313\Lib\cmd.py", line 111, in cmdloop
if readline.backend == "editline":
^^^^^^^^^^^^^^^^
AttributeError: module 'readline' has no attribute 'backend'
Thank you again!
David