This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
web control pypilot problem
#1
Hi all,

Complete novice to openplotter,rpi,pypilot. I wanted to build a autopilot system and started reading on github pages as well as this great forum.

My config:
Rpi 4b with sensehat so far.
Openplotter v4 headless installed
SenseHat software installed configured and checked.

So far I discovered a lot of errors on first install but managed to get all running with the help of the above mentioned.
Got RDP as well as web connections from a phone properly working and am happy with that!

SignalK shows all data from SenseHat sensors.
Pypilot as well as OpenCPN like the LSM9DS1 very much and shows all calibration items very nicely.

Only piece that is not working for me:
the web control of pypilot (localhost:8000).

I checked the webservice status(active)
But in logging I only see:
```
pi@openplotter:~ $ pypilot_web
loading translations: terminal encoding: utf-8
loading translations: terminal encoding: utf-8
failed to read config /home/pi/.pypilot/web.conf
using port 8000
Traceback (most recent call last):
  File "/usr/local/bin/pypilot_web", line 33, in <module>
    sys.exit(load_entry_point('pypilot==0.70', 'console_scripts', 'pypilot_web')())
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/pypilot/web/web.py", line 229, in main
    socketio.run(app, debug=False, host='0.0.0.0', port=port, allow_unsafe_werkzeug=True)
  File "/usr/lib/python3/dist-packages/flask_socketio/__init__.py", line 719, in run
    self.wsgi_server.serve_forever()
  File "/usr/local/lib/python3.11/dist-packages/gevent/baseserver.py", line 401, in serve_forever
    self.start()
  File "/usr/local/lib/python3.11/dist-packages/gevent/baseserver.py", line 339, in start
    self.init_socket()
  File "/usr/local/lib/python3.11/dist-packages/gevent/pywsgi.py", line 1672, in init_socket
    StreamServer.init_socket(self)
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 173, in init_socket
    self.socket = self.get_listener(self.address, self.backlog, self.family)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 185, in get_listener
    return _tcp_listener(address, backlog=backlog, reuse_addr=cls.reuse_addr, family=family)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 264, in _tcp_listener
    sock.bind(address)
  File "/usr/local/lib/python3.11/dist-packages/gevent/_socketcommon.py", line 538, in bind
    return self._sock.bind(address)
          ^^^^^^^^^^^^^^^^^^^^^^^^
OSError: [Errno 98] Address already in use: ('0.0.0.0', 8000)
```
I tried reinstall options as well as postinstall scripts, but so far no luck.
What can I do to get this final piece running?

After that I will continue with connecting arduino mega 2560(I have one spare)  and motorcontroller
Reply
#2
(2026-06-26, 02:55 PM)sybdezeiler Wrote: Hi all,

Complete novice to openplotter,rpi,pypilot. I wanted to build a autopilot system and started reading on github pages as well as this great forum.

My config:
Rpi 4b with sensehat so far.
Openplotter v4 headless installed
SenseHat software installed configured and checked.

So far I discovered a lot of errors on first install but managed to get all running with the help of the above mentioned.
Got RDP as well as web connections from a phone properly working and am happy with that!

SignalK shows all data from SenseHat sensors.
Pypilot as well as OpenCPN like the LSM9DS1 very much and shows all calibration items very nicely.

Only piece that is not working for me:
the web control of pypilot (localhost:8000).

I checked the webservice status(active)
But in logging I only see:
```
pi@openplotter:~ $ pypilot_web
loading translations: terminal encoding: utf-8
loading translations: terminal encoding: utf-8
failed to read config /home/pi/.pypilot/web.conf
using port 8000
Traceback (most recent call last):
  File "/usr/local/bin/pypilot_web", line 33, in <module>
    sys.exit(load_entry_point('pypilot==0.70', 'console_scripts', 'pypilot_web')())
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/pypilot/web/web.py", line 229, in main
    socketio.run(app, debug=False, host='0.0.0.0', port=port, allow_unsafe_werkzeug=True)
  File "/usr/lib/python3/dist-packages/flask_socketio/__init__.py", line 719, in run
    self.wsgi_server.serve_forever()
  File "/usr/local/lib/python3.11/dist-packages/gevent/baseserver.py", line 401, in serve_forever
    self.start()
  File "/usr/local/lib/python3.11/dist-packages/gevent/baseserver.py", line 339, in start
    self.init_socket()
  File "/usr/local/lib/python3.11/dist-packages/gevent/pywsgi.py", line 1672, in init_socket
    StreamServer.init_socket(self)
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 173, in init_socket
    self.socket = self.get_listener(self.address, self.backlog, self.family)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 185, in get_listener
    return _tcp_listener(address, backlog=backlog, reuse_addr=cls.reuse_addr, family=family)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 264, in _tcp_listener
    sock.bind(address)
  File "/usr/local/lib/python3.11/dist-packages/gevent/_socketcommon.py", line 538, in bind
    return self._sock.bind(address)
          ^^^^^^^^^^^^^^^^^^^^^^^^
OSError: [Errno 98] Address already in use: ('0.0.0.0', 8000)
```
I tried reinstall options as well as postinstall scripts, but so far no luck.
What can I do to get this final piece running?

After that I will continue with connecting arduino mega 2560(I have one spare)  and motorcontroller

I'm having trouble with pypilot (4.0.11) as well (Rpi5 , 8gb) Web control doesn't start. The GUI calibration the missing the boat on Boat alignment screen. Pypilot plugin crashes OpenCPN when started
Here is the log 
i@openplotter:~ $ sudo systemctl status pypilot_web
● pypilot_web.service - pypilot web
    Loaded: loaded (/etc/systemd/system/pypilot_web.service; enabled; preset: >
    Active: active (running) since Mon 2026-06-29 14:45:36 PDT; 18min ago
  Main PID: 979 (pypilot_web)
      Tasks: 1 (limit: 9571)
        CPU: 1.256s
    CGroup: /system.slice/pypilot_web.service
            └─979 /usr/bin/python3 /usr/local/bin/pypilot_web 8000

Jun 29 15:04:24 openplotter pypilot_web[979]: Traceback (most recent call last):
Jun 29 15:04:24 openplotter pypilot_web[979]:  File "src/gevent/greenlet.py", >
Jun 29 15:04:24 openplotter pypilot_web[979]:  File "/usr/lib/python3/dist-pac>
Jun 29 15:04:24 openplotter pypilot_web[979]:    return handle(*args_tuple)
Jun 29 15:04:24 openplotter pypilot_web[979]:            ^^^^^^^^^^^^^^^^^^^
Jun 29 15:04:24 openplotter pypilot_web[979]:  File "/usr/lib/python3/dist-pac>
Jun 29 15:04:24 openplotter pypilot_web[979]:    with _closing_socket(self.wra>
Jun 29 15:04:24 openplotter pypilot_web[979]:                          ^^^^^^^^>
Jun 29 15:04:24 openplotter pypilot_web[979]: TypeError: wrap_socket() got an u>
Jun 29 15:04:24 openplotter pypilot_web[979]: 2026-06-29T22:04:24Z <Greenlet at>
lines 1-19/19 (END)


Attached Files Image(s)
   
Reply
#3
(2026-06-29, 11:06 PM)amolotkov Wrote:
(2026-06-26, 02:55 PM)sybdezeiler Wrote: Hi all,

Complete novice to openplotter,rpi,pypilot. I wanted to build a autopilot system and started reading on github pages as well as this great forum.

My config:
Rpi 4b with sensehat so far.
Openplotter v4 headless installed
SenseHat software installed configured and checked.

So far I discovered a lot of errors on first install but managed to get all running with the help of the above mentioned.
Got RDP as well as web connections from a phone properly working and am happy with that!

SignalK shows all data from SenseHat sensors.
Pypilot as well as OpenCPN like the LSM9DS1 very much and shows all calibration items very nicely.

Only piece that is not working for me:
the web control of pypilot (localhost:8000).

I checked the webservice status(active)
But in logging I only see:
```
pi@openplotter:~ $ pypilot_web
loading translations: terminal encoding: utf-8
loading translations: terminal encoding: utf-8
failed to read config /home/pi/.pypilot/web.conf
using port 8000
Traceback (most recent call last):
  File "/usr/local/bin/pypilot_web", line 33, in <module>
    sys.exit(load_entry_point('pypilot==0.70', 'console_scripts', 'pypilot_web')())
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/pypilot/web/web.py", line 229, in main
    socketio.run(app, debug=False, host='0.0.0.0', port=port, allow_unsafe_werkzeug=True)
  File "/usr/lib/python3/dist-packages/flask_socketio/__init__.py", line 719, in run
    self.wsgi_server.serve_forever()
  File "/usr/local/lib/python3.11/dist-packages/gevent/baseserver.py", line 401, in serve_forever
    self.start()
  File "/usr/local/lib/python3.11/dist-packages/gevent/baseserver.py", line 339, in start
    self.init_socket()
  File "/usr/local/lib/python3.11/dist-packages/gevent/pywsgi.py", line 1672, in init_socket
    StreamServer.init_socket(self)
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 173, in init_socket
    self.socket = self.get_listener(self.address, self.backlog, self.family)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 185, in get_listener
    return _tcp_listener(address, backlog=backlog, reuse_addr=cls.reuse_addr, family=family)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 264, in _tcp_listener
    sock.bind(address)
  File "/usr/local/lib/python3.11/dist-packages/gevent/_socketcommon.py", line 538, in bind
    return self._sock.bind(address)
          ^^^^^^^^^^^^^^^^^^^^^^^^
OSError: [Errno 98] Address already in use: ('0.0.0.0', 8000)
```
I tried reinstall options as well as postinstall scripts, but so far no luck.
What can I do to get this final piece running?

After that I will continue with connecting arduino mega 2560(I have one spare)  and motorcontroller

I'm having trouble with pypilot (4.0.11) as well (Rpi5 , 8gb) Web control doesn't start. The GUI calibration the missing the boat on Boat alignment screen. Pypilot plugin crashes OpenCPN when started
Here is the log 
i@openplotter:~ $ sudo systemctl status pypilot_web
● pypilot_web.service - pypilot web
    Loaded: loaded (/etc/systemd/system/pypilot_web.service; enabled; preset: >
    Active: active (running) since Mon 2026-06-29 14:45:36 PDT; 18min ago
  Main PID: 979 (pypilot_web)
      Tasks: 1 (limit: 9571)
        CPU: 1.256s
    CGroup: /system.slice/pypilot_web.service
            └─979 /usr/bin/python3 /usr/local/bin/pypilot_web 8000

Jun 29 15:04:24 openplotter pypilot_web[979]: Traceback (most recent call last):
Jun 29 15:04:24 openplotter pypilot_web[979]:  File "src/gevent/greenlet.py", >
Jun 29 15:04:24 openplotter pypilot_web[979]:  File "/usr/lib/python3/dist-pac>
Jun 29 15:04:24 openplotter pypilot_web[979]:    return handle(*args_tuple)
Jun 29 15:04:24 openplotter pypilot_web[979]:            ^^^^^^^^^^^^^^^^^^^
Jun 29 15:04:24 openplotter pypilot_web[979]:  File "/usr/lib/python3/dist-pac>
Jun 29 15:04:24 openplotter pypilot_web[979]:    with _closing_socket(self.wra>
Jun 29 15:04:24 openplotter pypilot_web[979]:                          ^^^^^^^^>
Jun 29 15:04:24 openplotter pypilot_web[979]: TypeError: wrap_socket() got an u>
Jun 29 15:04:24 openplotter pypilot_web[979]: 2026-06-29T22:04:24Z <Greenlet at>
lines 1-19/19 (END)
So to solve the first issue I edited this line in web.py
socketio.run(app, debug=False, host='0.0.0.0', port=port, allow_unsafe_werkzeug=True) and changed it to  socketio.run(app, debug=False, host='0.0.0.0', port=port)

Guess what: localhost:8000 finally working. The flask-socketio was up to date, so finally decide to edit this file.
In the meanwhile I had updated pypilot from github and saw version change from 0.70 to 0.71.
This created a new error for me. A repeating alert for security access request in signalK. See picture. I cannot figure out where it is coming from but very annoying when using the openplotter pypilot interface.


Attached Files Image(s)
       
Reply
#4
(2026-07-06, 03:53 PM)sybdezeiler Wrote:
(2026-06-29, 11:06 PM)amolotkov Wrote:
(2026-06-26, 02:55 PM)sybdezeiler Wrote: Hi all,

Complete novice to openplotter,rpi,pypilot. I wanted to build a autopilot system and started reading on github pages as well as this great forum.

My config:
Rpi 4b with sensehat so far.
Openplotter v4 headless installed
SenseHat software installed configured and checked.

So far I discovered a lot of errors on first install but managed to get all running with the help of the above mentioned.
Got RDP as well as web connections from a phone properly working and am happy with that!

SignalK shows all data from SenseHat sensors.
Pypilot as well as OpenCPN like the LSM9DS1 very much and shows all calibration items very nicely.

Only piece that is not working for me:
the web control of pypilot (localhost:8000).

I checked the webservice status(active)
But in logging I only see:
```
pi@openplotter:~ $ pypilot_web
loading translations: terminal encoding: utf-8
loading translations: terminal encoding: utf-8
failed to read config /home/pi/.pypilot/web.conf
using port 8000
Traceback (most recent call last):
  File "/usr/local/bin/pypilot_web", line 33, in <module>
    sys.exit(load_entry_point('pypilot==0.70', 'console_scripts', 'pypilot_web')())
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/pypilot/web/web.py", line 229, in main
    socketio.run(app, debug=False, host='0.0.0.0', port=port, allow_unsafe_werkzeug=True)
  File "/usr/lib/python3/dist-packages/flask_socketio/__init__.py", line 719, in run
    self.wsgi_server.serve_forever()
  File "/usr/local/lib/python3.11/dist-packages/gevent/baseserver.py", line 401, in serve_forever
    self.start()
  File "/usr/local/lib/python3.11/dist-packages/gevent/baseserver.py", line 339, in start
    self.init_socket()
  File "/usr/local/lib/python3.11/dist-packages/gevent/pywsgi.py", line 1672, in init_socket
    StreamServer.init_socket(self)
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 173, in init_socket
    self.socket = self.get_listener(self.address, self.backlog, self.family)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 185, in get_listener
    return _tcp_listener(address, backlog=backlog, reuse_addr=cls.reuse_addr, family=family)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 264, in _tcp_listener
    sock.bind(address)
  File "/usr/local/lib/python3.11/dist-packages/gevent/_socketcommon.py", line 538, in bind
    return self._sock.bind(address)
          ^^^^^^^^^^^^^^^^^^^^^^^^
OSError: [Errno 98] Address already in use: ('0.0.0.0', 8000)
```
I tried reinstall options as well as postinstall scripts, but so far no luck.
What can I do to get this final piece running?

After that I will continue with connecting arduino mega 2560(I have one spare)  and motorcontroller

I'm having trouble with pypilot (4.0.11) as well (Rpi5 , 8gb) Web control doesn't start. The GUI calibration the missing the boat on Boat alignment screen. Pypilot plugin crashes OpenCPN when started
Here is the log 
i@openplotter:~ $ sudo systemctl status pypilot_web
● pypilot_web.service - pypilot web
    Loaded: loaded (/etc/systemd/system/pypilot_web.service; enabled; preset: >
    Active: active (running) since Mon 2026-06-29 14:45:36 PDT; 18min ago
  Main PID: 979 (pypilot_web)
      Tasks: 1 (limit: 9571)
        CPU: 1.256s
    CGroup: /system.slice/pypilot_web.service
            └─979 /usr/bin/python3 /usr/local/bin/pypilot_web 8000

Jun 29 15:04:24 openplotter pypilot_web[979]: Traceback (most recent call last):
Jun 29 15:04:24 openplotter pypilot_web[979]:  File "src/gevent/greenlet.py", >
Jun 29 15:04:24 openplotter pypilot_web[979]:  File "/usr/lib/python3/dist-pac>
Jun 29 15:04:24 openplotter pypilot_web[979]:    return handle(*args_tuple)
Jun 29 15:04:24 openplotter pypilot_web[979]:            ^^^^^^^^^^^^^^^^^^^
Jun 29 15:04:24 openplotter pypilot_web[979]:  File "/usr/lib/python3/dist-pac>
Jun 29 15:04:24 openplotter pypilot_web[979]:    with _closing_socket(self.wra>
Jun 29 15:04:24 openplotter pypilot_web[979]:                          ^^^^^^^^>
Jun 29 15:04:24 openplotter pypilot_web[979]: TypeError: wrap_socket() got an u>
Jun 29 15:04:24 openplotter pypilot_web[979]: 2026-06-29T22:04:24Z <Greenlet at>
lines 1-19/19 (END)
So to solve the first issue I edited this line in web.py
socketio.run(app, debug=False, host='0.0.0.0', port=port, allow_unsafe_werkzeug=True) and changed it to  socketio.run(app, debug=False, host='0.0.0.0', port=port)

Guess what: localhost:8000 finally working. The flask-socketio was up to date, so finally decide to edit this file.
In the meanwhile I had updated pypilot from github and saw version change from 0.70 to 0.71.
This created a new error for me. A repeating alert for security access request in signalK. See picture. I cannot figure out where it is coming from but very annoying when using the openplotter pypilot interface.
Anybody any insights on this:
Error for pypilot_web is back again. Despite several reinstalls of (openplotter-)pypilot and postinstall scripts I cannot get it to work.
Installation logs tell me everything is up to date. Can it be gevent issue because of missing SSL?

ul 14 13:54:43 openplotter pypilot_web[579]: Traceback (most recent call last):
jul 14 13:54:43 openplotter pypilot_web[579]:  File "src/gevent/greenlet.py", line 912, in gevent._gevent_cgreenlet.Greenlet.run
jul 14 13:54:43 openplotter pypilot_web[579]:  File "/usr/local/lib/python3.11/dist-packages/gevent/baseserver.py", line 34, in _handle_and_close_when_done
jul 14 13:54:43 openplotter pypilot_web[579]:    return handle(*args_tuple)
jul 14 13:54:43 openplotter pypilot_web[579]:            ^^^^^^^^^^^^^^^^^^^
jul 14 13:54:43 openplotter pypilot_web[579]:  File "/usr/local/lib/python3.11/dist-packages/gevent/server.py", line 209, in wrap_socket_and_handle
jul 14 13:54:43 openplotter pypilot_web[579]:    with _closing_socket(self.wrap_socket(client_socket, **self.ssl_args)) as ssl_socket:
jul 14 13:54:43 openplotter pypilot_web[579]:                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
jul 14 13:54:43 openplotter pypilot_web[579]: TypeError: wrap_socket() got an unexpected keyword argument 'allow_unsafe_werkzeug'
jul 14 13:54:43 openplotter pypilot_web[579]: 2026-07-14T11:54:43Z <Greenlet at 0x7fba4b04a0: _handle_and_close_when_done(<bound method StreamServer.wrap_socket_and_handle , <bound method>
~
Reply
#5
This thread solved several issues in my setup.
All is working now regarding pypilot.

https://forum.openmarine.net/showthread....&pid=36934

post no. 9 from rdempsey did it.
thank you
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)