segfault at cleanup
Closed this issue · 1 comments
txoof commented
Describe the bug
shutdown and cleanup call results in segmentation fault
To Reproduce
Steps to reproduce the behavior:
- Run in daemon mode with IT8951 screen attached using
paperpi -d
- Hit
ctrl+c
to stop - observe crash
Expected behavior
should exit cleanly
Hardware
- Full EPD version: IT8951 HD
OS Info
Run cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
[main]
Section of Config
Copy and paste the [main]
section of your config file
- Daemon mode (start at boot) use:
/etc/default/paperpi.ini
- Single user mode (start manually) use:
~/.config/com.txoof.paperpi/paperpi.ini
# CONFIG_VERSION=1.2
[main]
# waveshare display type use HD for IT8951 displays
display_type = HD
# required vcom value for IT8951 screens
vcom = -1.93
# maximum refresh between total screen clear for HD displays
max_refresh = 4
# logging output level
log_level = INFO
# display splash screen (True or False)
splash = True
# rotation of EPD display
# (cable bottom: 0; cable left: -90; cable right: 90; cable top: 180)
rotation = 0
# mirror screen outuput - useful if output to screen appears backwards
mirror = False
# do not wipe screen when shutting down. True: leave image; False: wipe screen (default)
no_wipe = False
# plugin timeout - amount of time in seconds to wait for a hung plugin to complete execution
plugin_timeout = 30
Additional context
seg fault:
0:55:40 paperpi :_update_plugins:454 :INFO - ##########Plugin: Moon Phase##########
20:55:40 paperpi :_update_plugins:467 :INFO - PRIORITY: 2 of max 2
^C20:55:45 paperpi :clean_up :257 :INFO - cleaning up
Traceback (most recent call last):
File "/usr/local/paperpi/venv_paperpi/lib/python3.11/site-packages/gpiozero/pins/rpigpio.py", line 217, in _call_when_changed
super()._call_when_changed()
File "/usr/local/paperpi/venv_paperpi/lib/python3.11/site-packages/gpiozero/pins/local.py", line 113, in _call_when_changed
self.state if state is None else state)
^^^^^^^^^^
File "/usr/local/paperpi/venv_paperpi/lib/python3.11/site-packages/gpiozero/pins/__init__.py", line 323, in <lambda>
lambda self: self._get_state(),
^^^^^^^^^^^^^^^^^
File "/usr/local/paperpi/venv_paperpi/lib/python3.11/site-packages/gpiozero/pins/rpigpio.py", line 138, in _get_state
return GPIO.input(self._number)
^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: You must setup() the GPIO channel first
/usr/local/bin/paperpi: line 10: 1727 Segmentation fault $(realpath $PROGRAM_PATH/paperpi.py) "$@"
txoof commented
resolved by updating epdlib