renetec-io / Pyxian

Web-focused OS for Raspberry Pi
https://renetec.io/pyxis-sdk/
BSD 3-Clause "New" or "Revised" License
7 stars 3 forks source link

Pyxian fails to boot properly after a while, requiring re-imaging. #23

Open MatinatorX opened 3 years ago

MatinatorX commented 3 years ago

Have an issue with Pyxian - after a number of hours/startups, Pyxian fails to completely boot, hanging on the splash screen. Wifi etc. works and I can SSH in, and it seems from the logs something is going wrong with X Server. In the logs I see that the X Server is never able to properly start, and shows this:

Fatal server error: (EE) AddScreen/ScreenInit failed for driver 0

I'm running the latest Pyxian 6.0.4 on a CM4. My display is native 4K at 24Hz. Nothing is changing on the CM4 except a couple of images in webroot (I'm running lighttpd and pointing Pyxian to localhost).

I can post any needed logs or configurations if I know which ones would be helpful.

Also wondering, is Pyxian still being developed? It's the only kiosk OS I can find with easy to use GPIO and WIFI APIs, but it doesn't seem like there's been any updates in a long time.

shtig commented 3 years ago

Thank you for reporting the issue. I haven't seen this behavior. Is it reproducible for you? Have you tried to upgrade all software?

sudo apt-get update
sudo apt-get upgrade

On your other question, you are right that development has been on hold for a while. I hope this is about to change soon.

MatinatorX commented 3 years ago

Thanks for the reply. I am getting this error when trying to run sudo apt-get update:

Error writing to output file - write (28: No space left on device)

This seems odd, since I've only added lighttpd and a local site since Pyxian was installed. The local site has under 10MB of files.

Running df -Bm gives me this:

Filesystem     1M-blocks  Used Available Use% Mounted on
/dev/root          7022M 6710M        0M 100% /
devtmpfs            716M    0M      716M   0% /dev
tmpfs               845M    0M      845M   0% /dev/shm
tmpfs               845M   25M      820M   3% /run
tmpfs                 5M    1M        5M   1% /run/lock
tmpfs               845M    0M      845M   0% /sys/fs/cgroup
/dev/mmcblk0p1      253M   48M      205M  19% /boot
tmpfs               169M    0M      169M   0% /run/user/1001
tmpfs               169M    0M      169M   0% /run/user/109

So it seems the root partition thinks it's 100% in use. When poking around just now I also noticed I can download things to /home/pyxis/ but not to /home/pi. Could the eMMC on the CM4 be causing some trouble for Pyxian like the gpio did due to differences from the Pi4?

shtig commented 3 years ago

What is the size of inox.log file?

du -h /home/pyxis/inox.log

I suspect it may be the reason.

MatinatorX commented 3 years ago

Very large... 4.7G /home/pyxis/inox.log.

Deleting the log file allowed the system to fully boot again. How can I turn off this log file or limit it's size?

That log grew to 8MB within 5 minutes of deleting it and rebooting the system. The reason is because I am constantly polling some buttons - I'd be using interrupts instead, but I couldn't get the code working with AppGyver, which is what I'm using for my UI. (As an aside, cookies don't seem to work within Pyxis - it's the only place that can't seem to save settings. Is there any way to allow cookies?)

Thanks for the help.

shtig commented 3 years ago

Unfortunately, the log file can grow unconstrained. We will fix this in later releases. Meanwhile, here is how to disable logging:

sudo sed -i 's/--log_severity=verbose/--log-severity=disable/g' /opt/inox/inox-start

Note, '_' changed to '-', that was a bug. After disabling, remove the following,

sudo rm /home/pyxis/inox.log
sudo rm /home/pyxis/.xsession-errors
sudo rm /home/pyxis/.xsession-errors.old

You can probably make cookies work if you remove '--incognito' option from /opt/inox/inox-start.

MatinatorX commented 3 years ago

Thank you for the help! The log file is no longer being generated. Unfortunately removing the '--incognito' option from /opt/inox/inox-start didn't allow cookies to work, but I will keep poking at it.