Closed jshep321 closed 4 years ago
Basically -- don't do that. :)
There is a reason we are using the "lite" versions of Raspbian. The GUI adds processor load and complications. Mycroft on a Pi 2 with GUI was impossible, and on the Pi 3/3+ is was possible but basically unusable.
What it boils down to is that a Pi has just enough power to be a good dedicated device as a voice agent. A desktop operating environment adds the overhead of the desktop itself (X windows plus the desktop) PLUS you are going to be running even more applications on top of that.
The Pi 4 is getting close to having enough power to run both a desktop with minimal applications. We will likely be offering a dedicated GUI client that can run on the Pi4, but that is not the same as running a full desktop OS.
The Pi 4 is great, but it isn't even as powerful as a cheap laptop.
I should add that for your immediate purposes it is probably easier to re-flash a fresh Picroft image and start from scratch. Un-doing is often much harder than re-doing, and I think that is the case here. I'd keep the old image on an independent SD card until you get it working, just in case you need to copy anything you might need from it during the recovery.
Ok, ok, I undid it by starting over again as identifying the conflicts was a time suck.
Although I am a mere beginner at mycroft, I normally like to know the design challenges -- functionality (/compatibility) vs performance. It seems that something went awry other than mere CPU horsepower here. The pi's pixel desktop is very lean compared to other desktops/window managers, especially when it's simply idle.
Also, I have a pretty good idea of the CPU requirements of chromium in kiosk mode and it will almost certainly run in the overhead of picroft once its stable on the pi4 from a CPU perspective. Since the RAM is (up to) 4X in the pi4, that should not be a restriction either.
Perhaps a path forward is to run mycroft in a container on the pi4 in the future... but I'm out of tinkering time for this unfortunately.
Hi, -Running the latest version of picroft (19.8.3) on my RPI3b+... but I wanted a GUI. -Running a standard wake word (Jarvis) -Running custom USB mic and I2S speakers (both working fine before changes below)
Procedure: sudo apt update && sudo apt-get upgrade -y sudo reboot -->tested picroft and everything seemed to work OK
sudo apt install raspberrypi-ui-mods sudo reboot
then enabled VNC (which automatically installs realvnc server as seen below) and enabled boot to desktop / GUI mode (with password) via raspi-config.
Problems:
Resolution attempts: -I tried resetting the boot mode to console and disabling VNC, but same results. -Looking to audio fixes.
Is there something inherent in an update or adding a GUI that should behave like this?
Below is a partial log: 15:54:55.431 | ERROR | 687 | mycroft.skills.settings:_issue_api_call:311 | Failed to upload skill settings meta for fallback-unknown|19.08 Traceback (most recent call last): File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/urllib3/connection.py", line 159, in _new_conn (self._dns_host, self.port), self.timeout, **extra_kw) File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/urllib3/util/connection.py", line 80, in create_connection raise err File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/urllib3/util/connection.py", line 70, in create_connection sock.connect(sa) socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/urllib3/connectionpool.py", line 600, in urlopen chunked=chunked) File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/urllib3/connectionpool.py", line 343, in _make_request self._validate_conn(conn) File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/urllib3/connectionpool.py", line 839, in _validate_conn conn.connect() File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/urllib3/connection.py", line 301, in connect conn = self._new_conn() File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/urllib3/connection.py", line 164, in _new_conn (self.host, self.timeout)) urllib3.exceptions.ConnectTimeoutError: (<urllib3.connection.VerifiedHTTPSConnection object at 0x673541f0>, 'Connection to api.mycroft.ai timed out. (connect timeout=3.05)')
During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/requests/adapters.py", line 449, in send timeout=timeout File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/urllib3/connectionpool.py", line 638, in urlopen _stacktrace=sys.exc_info()[2]) File "/home/pi/mycroft-core/.venv/lib/python3.5/site-packages/urllib3/util/retry.py", line 399, in increment raise MaxRetryError(_pool, url, error or ResponseError(cause))