Closed jamespreedy closed 1 year ago
Hi, if it's any consolation I can't run picframe for the same reason. It should be something we can figure out quite quickly.On 16 May 2023 22:23, James Preedy @.***> wrote: Hi folks, hope you're doing well. I've clean installed my Raspberry Pi 4 2gb this evening, and can't get PicFrame to launch. My config is default, no changes since running picframe -i . I've included the error, plus my config file and my system versions below - please let me know if I can get you any additional information. FYI, my username isn't pi - I did a find and replace into the output below. Thanks in advance for your help! James.
$ sudo xinit /usr/bin/python3 /home/pi/picframe_data/run_start.py /home/pi/picframe_data/config/configuration.yaml
X.Org X Server 1.20.4
X Protocol Version 11, Revision 0
Build Operating System: Linux 5.4.0-109-generic aarch64 Debian
Current Operating System: Linux picframe 5.10.103-v8+ #1529 SMP PREEMPT Tue Mar 8 12:26:46 GMT 2022 aarch64
Kernel command line: coherent_pool=1M 8250.nr_uarts=0 snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1 @.* smsc95xx.macaddr=DC:A6:32:3A:59:9F vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 console=ttyS0,115200 console=tty1 root=PARTUUID=96f6dc32-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
Build Date: 04 April 2023 07:50:56AM
xorg-server 2:1.20.4-1+rpt4+deb10u9 (https://www.debian.org/support)
Current version of pixman: 0.36.0
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (--) probed, () from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Tue May 16 22:10:58 2023
(==) Using config directory: "/etc/X11/xorg.conf.d"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(II) modeset(0): Initializing kms color map for depth 24, 8 bpc.
INFO:start.py:starting ['/home/pi/picframe_data/run_start.py', '/home/pi/picframe_data/config/configuration.yaml']
INFO:model.Model:Open config file: /home/pi/picframe_data/config/configuration.yaml:
Traceback (most recent call last):
File "/home/pi/picframe_data/run_start.py", line 2, in
picframe -v
if possible):
INFO:start.py:starting ['/usr/local/bin/picframe', '-v']
picframe version: 2022.12.15post6
Checking required packages......
PIL : 9.5.0
pi3d : 2.49
yaml : 6.0
paho.mqtt : 1.6.1
iptcinfo3 : 2.1.4
numpy : 1.16.2
ninepatch : installed, but no version info
pi_heif : 0.11.1
defusedxml : 0.7.1```
```yaml
$ cat configuration.yaml
viewer:
blur_amount: 12 # default=12, larger values than 12 will increase processing load quite a bit
blur_zoom: 1.0 # default=1.0, must be >= 1.0 which expands the backgorund to just fill the space around the image
blur_edges: False # default=False, use blurred version of image to fill edges - will override FIT = False
edge_alpha: 0.5 # default=0.5, background colour at edge. 1.0 would show reflection of image
fps: 20.0 # default=20.0
background: [0.2, 0.2, 0.3, 1.0] # default=[0.2, 0.2, 0.3, 1.0], RGBA to fill edges when fitting
blend_type: "blend" # default="blend", choices={"blend", "burn", "bump"}, type of blend the shader can do
font_file: "/home/pi/picframe_data/data/fonts/NotoSans-Regular.ttf"
shader: "/home/pi/picframe_data/data/shaders/blend_new"
show_text_fm: "%b %d, %Y" # default "%b %d, %Y", format to show date over the image
show_text_tm: 20.0 # default=20.0, time to show text over image with file name
show_text_sz: 40 # default=40, text character size
show_text: "title caption name date folder location" # default="title caption name date folder location", show text, include combination of words: title, caption name, date, location, folder
text_justify: "L" # text justification L, C or R
text_bkg_hgt: 0.25 # default=0.25 (0.0-1.0), percentage of screen height for text background texture
text_opacity: 1.0 # default=1.0 (0.0-1.0), alpha value of text overlay
fit: False # default=False, True => scale image so all visible and leave 'gaps'
# False => crop image so no 'gaps'
kenburns: False # default=False, will set fit->False and blur_edges->False
display_x: 0 # offset from left of screen (can be negative)
display_y: 0 # offset from top of screen (can be negative)
display_w: null # width of display surface (null->None will use max returned by hardware)
display_h: null # height of display surface
display_power: 0 # default=0. choices={0, 1}, 0 will use legacy `vcgencmd` and 1 will use `xset` to blank the display
use_glx: False # default=False. Set to True on linux with xserver running
mat_images: 0.01 # default=0.01, True, automatically mat all images. False, don't automatically mat any images. Real value, auto-mat all images with aspect ratio difference > than value
mat_type: null # default=null, A string containing the mat types to choose from when matting images. It can consist of any or
# all of 'float float_polaroid float_color_wrap single_bevel double_bevel double_flat' (null or '' will use all mat types)
outer_mat_color: null # default=null, Color of the outer mat as an RGB list. null will auto-select a reasonable color based on the image.
inner_mat_color: null # default=null, Color of the inner mat as an RGB list. null will auto-select a reasonable color based on the image.
outer_mat_border: 75 # default=75, Minimum outer mat border in pixels
inner_mat_border: 40 # default=40, Minimum inner mat border in pixels (for styles that use it)
outer_mat_use_texture: True # default=True, True uses a texture for the outer mat. False creates a solid-color outer mat.
inner_mat_use_texture: False # default=False, True uses a texture for the inner mat. False creates a solid-color inner mat.
mat_resource_folder: "/home/pi/picframe_data/data/mat" # Folder containing mat image files
show_clock: False # default=False, True shows clock overlay. False does not show clock overlay
clock_justify: "R" # default="R", clock justification L, C, or R
clock_text_sz: 120 # default=120, clock character size
clock_format: "%I:%M" # default="%I:%M", strftime format for clock string
clock_opacity: 1.0 # default=1.0 (0.0-1.0), alpha value of clock overlay
menu_text_sz: 40 # default=40, menu character size
menu_autohide_tm: 10.0 # default=10.0, time in seconds to show menu before auto hiding (0 disables auto hiding)
geo_suppress_list: [] # default=None, substrings to remove from the location text
model:
pic_dir: "/home/pi/Pictures" # default="/home/pi/Pictures", root folder for images
deleted_pictures: "/home/pi/DeletedPictures" # move deleted pictures here
follow_links: False # default=False, By default, picframe will not walk down into symbolic links that resolve to directories. Set follow_links to True to visit directories pointed to by symlinks, on systems that support them.
no_files_img: "/home/pi/picframe_data/data/no_pictures.jpg" # default="PictureFrame2020img.jpg", image to show if none selected
subdirectory: "" # default="", subdir of pic_dir - can be changed by MQTT"
recent_n: 7 # default=7 (days), when shuffling file change date more recent than this number of days play before the rest
reshuffle_num: 1 # default=1, times through before reshuffling
time_delay: 200.0 # default=200.0, time between consecutive slide starts - can be changed by MQTT
fade_time: 10.0 # default=10.0, change time during which slides overlap - can be changed by MQTT"
shuffle: True # default=True, shuffle on reloading image files - can be changed by MQTT"
sort_cols: 'fname ASC' # default='fname ASC' can be any columns in the table with optional ASC or DESC separated by commas
# fname, last_modified, file_id, orientation, exif_datetime, f_number,
# exposure_time, iso, focal_length, make, model, lens, rating,
# latitude, longitude, width, height, title, caption, tags,
# is_portrait, location
image_attr: [ # image attributes send by MQTT, Keys are taken from exifread library, "PICFRAME GPS" is special to retrieve GPS lon/lat, "PICFRAME LOCATION" is special to retrieve geo reverse (load_geoloc hast to be True)
"PICFRAME GPS",
"PICFRAME LOCATION",
"EXIF FNumber",
"EXIF ExposureTime",
"EXIF ISOSpeedRatings",
"EXIF FocalLength",
"EXIF DateTimeOriginal",
"Image Model",
"Image Make",
"IPTC Caption/Abstract",
"IPTC Object Name",
"IPTC Keywords"]
load_geoloc: False # get location information from open street map NB if you switch this on (recommended)
geo_key: ***@***.***_changed" # then you **MUST** change the geo_key to something unique to you
# i.e. use your email address
locale: "en_GB.UTF-8" # "locale -a" shows the installed locales which could used
key_list: [
["tourism","amenity","isolated_dwelling"],
["suburb","village"],
["city","county"],
["region","state","province"],
["country"]]
db_file: "/home/pi/picframe_data/data/pictureframe.db3" # database used by PictureFrame
portrait_pairs: False
log_level: "WARNING" # default=WARNING, could beDEBUG, INFO, WARNING, ERROR, CRITICAL
log_file: "" # default="" for debugging set this to the path to a file. NB logging messages will
# appended indefinitely so don't forget this. You will need to tidy it up later
mqtt:
use_mqtt: False # default=False. Set True true, to enable mqtt
server: "your_mqtt_broker" # No defaults for server
port: 8883 # default=8883 for tls, 1883 else (tls must be "" then !!!!!)
login: "name" # your mqtt user
password: "your_password" # password for mqtt user
tls: "/path/to/your/ca.crt" # filename including path to your ca.crt. If not used, must be set to "" !!!!
device_id: "picframe" # default="picframe" unique id of device. change if there is more than one PictureFrame
device_url: "" # if use_http==True, set url to picframe config page. Must be a valid url, or "" otherwise home assistant runs in an error.
http:
use_http: False # default=False. Set True to enable http NB THIS SERVER IS FOR LOCAL NETWORK AND SHOULD NOT BE EXPOSED TO EXTERNAL ACCESS
path: "/home/pi/picframe_data/html" # path to where html files are located
port: 9000 # port used to serve pages by http server < 1024 requires root which is *bad* idea
use_ssl: False
keyfile: "path/to/key.pem" # private-key
certfile: "path/to/cert.pem" # server certificate
peripherals:
input_type: null # default=null, valid options: {null, "keyboard", "touch", "mouse"}
buttons:
pause: # pause/unpause the show
enable: True # default=True
label: "Pause" # default="Pause"
shortcut: " " # default=" "
display_off: # turn off the display (when off, any input from selected peripheral will turn it back on)
enable: True # default=True
label: "Display off" # default="Display off"
shortcut: "o" # default="o"
location: # shows or hides location information
enable: False # default=False
label: "Location" # default="Location"
shortcut: "l" # default="l"
exit: # exit PictureFrame
enable: False # default=False
label: "Exit" # default="Exit"
shortcut: "e" # default="e"
power_down: # power down the device, uses sudo
enable: False # default=False
label: "Power down" # default="Power down"
shortcut: "p" # default="p"```
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: ***@***.***>
@paddywwoof - Least its not just me! Thanks 😀
OK, I installed python 3.7 through miniconda and got the same error. Had to learn that the ability to use the [] operator on types for type hinting was added in 3.9. Wondering, why this wasn't observed before.
So I see two possibilities. We declare python 3.9 as minimum python release, or we remove the type hinting.
Btw. I played around to use sanic as new webserver, which also requires at least 3.9. sanic runs in a separate process, so one can use the other cores of the pi.
Personally I like the idea of python 3.9 but others might not like the extra steps involved.
I'll compile the latest 3.9 after dinner.
I removed the type hints and published 2023.05.17. Can you try please. In my virtuell environment, it works well.
I broke my instance trying to install Python 3.9 last night 🤣 I'm reinstalling buster from scratch and will try with 2023.05.17 and let you know.
Thank you so much for your help!
@helgeerbe - works great, thank you so much for your help! Really appreciate all your efforts. 🍺
Glad, that it works.
Hi folks, hope you're doing well.
I've clean installed my Raspberry Pi 4 2gb this evening, and can't get PicFrame to launch. My config is default, no changes since running
picframe -i .
I've included the error, plus my config file and my system versions below - please let me know if I can get you any additional information. FYI, my username isn't pi - I did a find and replace into the output below.
Thanks in advance for your help!
James.