Skip to content

Not Running On Windows: More readline Compat Problems #239

@dbotham

Description

@dbotham

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions