PSU from command line (ssh)

What is the problem?

Can't run PSU form command line (ssh), get an error
Following this recommendations https://github.com/jneilliii/OctoPrint-PrintScheduler/wiki/Helpful-System-Commands, am trying to run this from an ssh as a test
"octoprint@Climber7:/root$ /home/octoprint/python_venvs/octoprint1/bin/octoprint plugins psucontrol:on"

PSU is configured (via system command gpio write) and runs well from the octoprint web.

But when I try running the above form ssh I get this (no matter from what user I run it).

octoprint@Climber7:/root$ /home/octoprint/python_venvs/octoprint1/bin/octoprint plugins psucontrol:on
Initializing settings & plugin subsystem...
Error loading plugin smartfilamentsensor
Traceback (most recent call last):
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/plugin/core.py", line 1264, in _import_plugin
    module = _load_module(module_name, spec)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/plugin/core.py", line 69, in _load_module
    return imp.load_module(name, f, filename, details)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/vendor/imp.py", line 238, in load_module
    return load_package(name, filename)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/vendor/imp.py", line 212, in load_package
    return _load(spec)
  File "<frozen importlib._bootstrap>", line 696, in _load
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint_smart_filament_sensor/__init__.py", line 5, in <module>
    import RPi.GPIO as GPIO
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/RPi/GPIO/__init__.py", line 23, in <module>
    from RPi._GPIO import *
RuntimeError: This module can only be run on a Raspberry Pi!
Initializing GcodePositionProcessor V1.0.1 - Copyright (C) 2019  Brad Hochgesang...Python 3+ Detected...complete
2021-09-04 22:43:06,899 - octolapse.__init__ - INFO - Release mode detected.
Error loading plugin OctoBuddy
Traceback (most recent call last):
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/plugin/core.py", line 1264, in _import_plugin
    module = _load_module(module_name, spec)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/plugin/core.py", line 69, in _load_module
    return imp.load_module(name, f, filename, details)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/vendor/imp.py", line 238, in load_module
    return load_package(name, filename)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/vendor/imp.py", line 212, in load_package
    return _load(spec)
  File "<frozen importlib._bootstrap>", line 696, in _load
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint_OctoBuddy/__init__.py", line 5, in <module>
    import RPi.GPIO as GPIO
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/RPi/GPIO/__init__.py", line 23, in <module>
    from RPi._GPIO import *
RuntimeError: This module can only be run on a Raspberry Pi!
Error loading plugin filamentsensorsimplified
Traceback (most recent call last):
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/plugin/core.py", line 1264, in _import_plugin
    module = _load_module(module_name, spec)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/plugin/core.py", line 69, in _load_module
    return imp.load_module(name, f, filename, details)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/vendor/imp.py", line 238, in load_module
    return load_package(name, filename)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/vendor/imp.py", line 212, in load_package
    return _load(spec)
  File "<frozen importlib._bootstrap>", line 696, in _load
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint_filamentsensorsimplified/__init__.py", line 8, in <module>
    import RPi.GPIO as GPIO
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/RPi/GPIO/__init__.py", line 23, in <module>
    from RPi._GPIO import *
RuntimeError: This module can only be run on a Raspberry Pi!
Traceback (most recent call last):
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/urllib3/connection.py", line 170, in _new_conn
    (self._dns_host, self.port), self.timeout, **extra_kw
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/urllib3/util/connection.py", line 96, in create_connection
    raise err
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/urllib3/util/connection.py", line 86, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/urllib3/connectionpool.py", line 706, in urlopen
    chunked=chunked,
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/urllib3/connectionpool.py", line 394, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/urllib3/connection.py", line 234, in request
    super(HTTPConnection, self).request(method, url, body=body, headers=headers)
  File "/usr/lib/python3.7/http/client.py", line 1260, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib/python3.7/http/client.py", line 1306, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.7/http/client.py", line 1255, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.7/http/client.py", line 1030, in _send_output
    self.send(msg)
  File "/usr/lib/python3.7/http/client.py", line 970, in send
    self.connect()
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/urllib3/connection.py", line 200, in connect
    conn = self._new_conn()
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/urllib3/connection.py", line 182, in _new_conn
    self, "Failed to establish a new connection: %s" % e
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x7f6bc51a90>: Failed to establish a new connection: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/requests/adapters.py", line 449, in send
    timeout=timeout
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/urllib3/connectionpool.py", line 756, in urlopen
    method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/urllib3/util/retry.py", line 574, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=5000): Max retries exceeded with url: /api/plugin/psucontrol?command=turnPSUOn (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f6bc51a90>: Failed to establish a new connection: [Errno 111] Connection refused'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/octoprint/python_venvs/octoprint1/bin/octoprint", line 8, in <module>
    sys.exit(main())
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/__init__.py", line 948, in main
    octo(args=args, prog_name="octoprint", auto_envvar_prefix="OCTOPRINT")
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint_psucontrol/cli.py", line 41, in turnPSUOn_command
    r = _api_command('turnPSUOn', apikey, host, port, httpuser, httppass, https, prefix)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint_psucontrol/cli.py", line 28, in _api_command
    r = client.post_command("plugin/psucontrol", command)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint_client/__init__.py", line 278, in post_command
    return self.post_json(path, data, params=data, timeout=timeout)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint_client/__init__.py", line 272, in post_json
    return self.post(path, data, encoding="json", params=params, timeout=timeout)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint_client/__init__.py", line 268, in post
    "POST", path, data=data, encoding=encoding, params=params, timeout=timeout
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint_client/__init__.py", line 260, in request
    response = s.send(request, timeout=timeout)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=5000): Max retries exceeded with url: /api/plugin/psucontrol?command=turnPSUOn (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f6bc51a90>: Failed to establish a new connection: [Errno 111] Connection refused'))
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/usr/lib/python3.7/logging/__init__.py", line 2039, in shutdown
    h.close()
  File "/home/octoprint/python_venvs/octoprint1/lib/python3.7/site-packages/octoprint/logging/handlers.py", line 31, in close
    self._executor.shutdown(wait=True)
AttributeError: 'OctolapseConsoleHandler' object has no attribute '_executor'

WRITE HERE

What did you already try to solve it?

WRITE HERE

Have you tried running in safe mode?

WRITE HERE

Did running in safe mode solve the problem?

WRITE HERE

Systeminfo Bundle

You can download this in OctoPrint's System Information dialog ... no bundle, no support!)

WRITE HERE

Additional information about your setup

OctoPrint version, OctoPi version, printer, firmware, browser, operating system, ... as much data as possible

WRITE HERE

I see that it's trying to connect to port 5000, while I am running octoprint on 5001

What about adding the --port option to the command line? No idea if it will work or not, but I don't expect this is a common use/setup so it may or may not be broken.

Should it look like this?
/home/octoprint/python_venvs/octoprint1/bin/octoprint --port 5001 plugins psucontrol:on

Possibly

if it's a second instance you may also have to supply the --base-dir <path> option as well.

So full command line would be something like

octoprint --basedir /home/pi/.octoprint/ --port:5001 plugins psucontrol:on